I have a Python script which changes unicodes to it's real characters like this:
import json
def convert_unicode_to_hangul(data):
    if isinstance(data, dict):
        return {key: convert_unicode_to_hangul(value) for key, value in data.items()}
    elif isinstance(data, list):
        return [convert_unicode_to_hangul(item) for item in data]
    elif isinstance(data, str):
        return data.encode('euc_kr').decode('cp949')
    else:
        return data
# Open the file and read its contents
with open('script.json', 'r', encoding="utf-8") as f:
    input_data = json.load(f)
output_data = convert_unicode_to_hangul(input_data)
output_json = json.dumps(output_data, ensure_ascii=False, indent=2)
# Create the output filename with the desired postfix
output_filename = f"script_out.json"
# Write the output data to a new file
with open(output_filename, 'w', encoding="utf-8") as f:
    json.dump(output_data, f, ensure_ascii=False, indent=2)
The problem is even if it works with first characters, it somehow doesn't translate well, I don't know what I am missing here.
Sample input:
{
  "ScriptMethod": [
    {
      "Address": 25744128,
      "Name": "\uAC04\uAC28_TypeInfo",
      "Signature": "___505_c*"
    },
    {
      "Address": 25744184,
      "Name": "System.Xml.AttributePSVIInfo_TypeInfo",
      "Signature": "System_Xml_AttributePSVIInfo_c*"
    },
    {
      "Address": 25744216,
      "Name": "\uAC04\uAC2C_TypeInfo",
      "Signature": "___509_c*"
    },
    {
      "Address": 19592624,
      "Name": "\uAC03\uAC29.\uAC03\uAC28$$\uAC08\uAC00",
      "Signature": "void _________ (______39_o* __this, const MethodInfo* method);",
      "TypeSignature": "vii"
    },
    {
      "Address": 2331904,
      "Name": "\uAC03\uAC29.\uAC03\uAC28$$\uAC02\uAC11\uAC3D",
      "Signature": "Il2CppObject* __________ (______39_o* __this, const MethodInfo* method);",
      "TypeSignature": "iii"
    },
    {
      "Address": 2331904,
      "Name": "\uAC03\uAC29.\uAC03\uAC28$$\uAC02\uAC02\uAC21",
      "Signature": "Il2CppObject* __________ (______39_o* __this, const MethodInfo* method);",
      "TypeSignature": "iii"
    },
    {
      "Address": 19590352,
      "Name": "\uAC03\uAC29.\uAC03\uAC28$$MoveNext",
      "Signature": "bool _______MoveNext (______39_o* __this, const MethodInfo* method);",
      "TypeSignature": "iii"
    }
  ]
}
Desired result:
{
  "ScriptMethod": [
    {
      "Address": 25744128,
      "Name": "간갨_TypeInfo",
      "Signature": "___505_c*"
    },
    {
      "Address": 25744184,
      "Name": "System.Xml.AttributePSVIInfo_TypeInfo",
      "Signature": "System_Xml_AttributePSVIInfo_c*"
    },
    {
      "Address": 25744216,
      "Name": "간갬_TypeInfo",
      "Signature": "___509_c*"
    },
        {
      "Address": 19592624,
      "Name": "갃갩.갃갨$$갈가",
      "Signature": "void _________ (______39_o* __this, const MethodInfo* method);",
      "TypeSignature": "vii"
    },
    {
      "Address": 2331904,
      "Name": "갃갩.갃갨$$갂갑갽",
      "Signature": "Il2CppObject* __________ (______39_o* __this, const MethodInfo* method);",
      "TypeSignature": "iii"
    },
    {
      "Address": 2331904,
      "Name": "갃갩.갃갨$$갂갂갡",
      "Signature": "Il2CppObject* __________ (______39_o* __this, const MethodInfo* method);",
      "TypeSignature": "iii"
    },
    {
      "Address": 19590352,
      "Name": "갃갩.갃갨$$MoveNext",
      "Signature": "bool _______MoveNext (______39_o* __this, const MethodInfo* method);",
      "TypeSignature": "iii"
    }
  ]
}
Current output:
{
  "ScriptMethod": [
    {
      "Address": 25744128,
      "Name": "간ㅤㄱㅐㄽ_TypeInfo",
      "Signature": "___505_c*"
    },
    {
      "Address": 25744184,
      "Name": "System.Xml.AttributePSVIInfo_TypeInfo",
      "Signature": "System_Xml_AttributePSVIInfo_c*"
    },
    {
      "Address": 25744216,
      "Name": "간갬_TypeInfo",
      "Signature": "___509_c*"
    },
    {
      "Address": 19592624,
      "Name": "ㅤㄱㅏㄳㅤㄱㅐㄾ.ㅤㄱㅏㄳㅤㄱㅐㄽ$$갈가",
      "Signature": "void _________ (______39_o* __this, const MethodInfo* method);",
      "TypeSignature": "vii"
    },
    {
      "Address": 2331904,
      "Name": "ㅤㄱㅏㄳㅤㄱㅐㄾ.ㅤㄱㅏㄳㅤㄱㅐㄽ$$ㅤㄱㅏㄲ갑ㅤㄱㅑㄵ",
      "Signature": "Il2CppObject* __________ (______39_o* __this, const MethodInfo* method);",
      "TypeSignature": "iii"
    },
    {
      "Address": 2331904,
      "Name": "ㅤㄱㅏㄳㅤㄱㅐㄾ.ㅤㄱㅏㄳㅤㄱㅐㄽ$$ㅤㄱㅏㄲㅤㄱㅏㄲㅤㄱㅐㄵ",
      "Signature": "Il2CppObject* __________ (______39_o* __this, const MethodInfo* method);",
      "TypeSignature": "iii"
    },
    {
      "Address": 19590352,
      "Name": "ㅤㄱㅏㄳㅤㄱㅐㄾ.ㅤㄱㅏㄳㅤㄱㅐㄽ$$MoveNext",
      "Signature": "bool _______MoveNext (______39_o* __this, const MethodInfo* method);",
      "TypeSignature": "iii"
    }
  ]
}
What should I change in order to get result like it is expected?
 
    