Function at 0x4c4c00
Capabilities:
Access peb ldr_data
Get ntdll base address
Get process heap flags

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
push 0xffffffffffffffff
push 0x4cd688
mov eax, dword fs:[0]
push eax
sub esp, 0x18
push ebx
push esi
push edi
mov eax, dword [0x50f880]
xor eax, esp
push eax
lea eax, [esp + 0x28]
mov dword fs:[0], eax
lea eax, [esp + 0x18]
push eax
mov ecx, str.English
mov dword [esp + 0x18], 0x409
call fcn.0041b050
mov esi, dword [ebp + 8]
add esi, 0xc
lea ecx, [esp + 0x14]
mov edx, esi
mov dword [esp + 0x30], 0
call fcn.00442f30
push eax
lea ebx, [esp + 0x20]
mov eax, esi
call fcn.00442bf0
or edi, 0xffffffff
mov dword [esp + 0x30], edi
mov eax, dword [esp + 0x18]
add eax, 0xfffffff0
lea ecx, [eax + 0xc]
mov edx, edi
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x4c4c8e
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
lea ecx, [esp + 0x18]
push ecx
mov ecx, str.Deutsch__German_
mov dword [esp + 0x18], 0x407
call fcn.0041b050
lea ecx, [esp + 0x14]
mov edx, esi
mov dword [esp + 0x30], 1
call fcn.00442f30
push eax
lea ebx, [esp + 0x20]
mov eax, esi
call fcn.00442bf0
mov dword [esp + 0x30], edi
mov eax, dword [esp + 0x18]
add eax, 0xfffffff0
lea edx, [eax + 0xc]
mov ecx, edi
lock xadd dword [edx], ecx
dec ecx
test ecx, ecx
jg 0x4c4ce7
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
lea ecx, [esp + 0x18]
push ecx
mov ecx, str.Fran
mov dword [esp + 0x18], 0x40c
call fcn.0041b050
lea ecx, [esp + 0x14]
mov edx, esi
mov dword [esp + 0x30], 2
call fcn.00442f30
push eax
lea ebx, [esp + 0x20]
mov eax, esi
call fcn.00442bf0
mov dword [esp + 0x30], edi
mov eax, dword [esp + 0x18]
add eax, 0xfffffff0
lea edx, [eax + 0xc]
mov ecx, edi
lock xadd dword [edx], ecx
dec ecx
test ecx, ecx
jg 0x4c4d40
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
lea ecx, [esp + 0x18]
push ecx
mov ecx, str.Espa
mov dword [esp + 0x18], 0x40a
call fcn.0041b050
lea ecx, [esp + 0x14]
mov edx, esi
mov dword [esp + 0x30], 3
call fcn.00442f30
push eax
lea ebx, [esp + 0x20]
mov eax, esi
call fcn.00442bf0
mov dword [esp + 0x30], edi
mov eax, dword [esp + 0x18]
add eax, 0xfffffff0
lea edx, [eax + 0xc]
mov ecx, edi
lock xadd dword [edx], ecx
dec ecx
test ecx, ecx
jg 0x4c4d99
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
lea ecx, [esp + 0x18]
push ecx
mov ecx, str.Nederlands__Dutch_
mov dword [esp + 0x18], 0x413
call fcn.0041b050
lea ecx, [esp + 0x14]
mov edx, esi
mov dword [esp + 0x30], 4
call fcn.00442f30
push eax
lea ebx, [esp + 0x20]
mov eax, esi
call fcn.00442bf0
mov dword [esp + 0x30], edi
mov eax, dword [esp + 0x18]
add eax, 0xfffffff0
lea edx, [eax + 0xc]
mov ecx, edi
lock xadd dword [edx], ecx
dec ecx
test ecx, ecx
jg 0x4c4df2
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
lea ecx, [esp + 0x18]
push ecx
mov ecx, str.Italiano__Italian_
mov dword [esp + 0x18], 0x410
call fcn.0041b050
lea ecx, [esp + 0x14]
mov edx, esi
mov dword [esp + 0x30], 5
call fcn.00442f30
push eax
lea ebx, [esp + 0x20]
mov eax, esi
call fcn.00442bf0
mov dword [esp + 0x30], edi
mov eax, dword [esp + 0x18]
add eax, 0xfffffff0
lea edx, [eax + 0xc]
mov ecx, edi
lock xadd dword [edx], ecx
dec ecx
test ecx, ecx
jg 0x4c4e4b
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
lea ecx, [esp + 0x18]
push ecx
mov ecx, 0x4e8d68
mov dword [esp + 0x18], 0x816
call fcn.0041b050
lea ecx, [esp + 0x14]
mov edx, esi
mov dword [esp + 0x30], 6
call fcn.00442f30
push eax
lea ebx, [esp + 0x20]
mov eax, esi
call fcn.00442bf0
mov dword [esp + 0x30], edi
mov eax, dword [esp + 0x18]
add eax, 0xfffffff0
lea edx, [eax + 0xc]
mov ecx, edi
lock xadd dword [edx], ecx
dec ecx
test ecx, ecx
jg 0x4c4ea4
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
lea ecx, [esp + 0x18]
push ecx
mov ecx, str.Portugu
mov dword [esp + 0x18], 0x416
call fcn.0041b050
lea ecx, [esp + 0x14]
mov edx, esi
mov dword [esp + 0x30], 7
call fcn.00442f30
push eax
lea ebx, [esp + 0x20]
mov eax, esi
call fcn.00442bf0
mov dword [esp + 0x30], edi
mov eax, dword [esp + 0x18]
add eax, 0xfffffff0
lea edx, [eax + 0xc]
mov ecx, edi
lock xadd dword [edx], ecx
dec ecx
test ecx, ecx
jg 0x4c4efd
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
lea ecx, [esp + 0x18]
push ecx
mov ecx, str.Catal
mov dword [esp + 0x18], 0x403
call fcn.0041b050
lea ecx, [esp + 0x14]
mov edx, esi
mov dword [esp + 0x30], 8
call fcn.00442f30
push eax
lea ebx, [esp + 0x20]
mov eax, esi
call fcn.00442bf0
mov dword [esp + 0x30], edi
mov eax, dword [esp + 0x18]
add eax, 0xfffffff0
lea edx, [eax + 0xc]
mov ecx, edi
lock xadd dword [edx], ecx
dec ecx
test ecx, ecx
jg 0x4c4f56
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
lea ecx, [esp + 0x18]
push ecx
mov ecx, str.Galician
mov dword [esp + 0x18], 0x456
call fcn.0041b050
lea ecx, [esp + 0x14]
mov edx, esi
mov dword [esp + 0x30], 9
call fcn.00442f30
push eax
lea ebx, [esp + 0x20]
mov eax, esi
call fcn.00442bf0
mov dword [esp + 0x30], edi
mov eax, dword [esp + 0x18]
add eax, 0xfffffff0
lea edx, [eax + 0xc]
mov ecx, edi
lock xadd dword [edx], ecx
dec ecx
test ecx, ecx
jg 0x4c4faf
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
lea ecx, [esp + 0x18]
push ecx
mov ecx, str.Svenska__Swedish_
mov dword [esp + 0x18], 0x41d
call fcn.0041b050
lea ecx, [esp + 0x14]
mov edx, esi
mov dword [esp + 0x30], 0xa
call fcn.00442f30
push eax
lea ebx, [esp + 0x20]
mov eax, esi
call fcn.00442bf0
mov dword [esp + 0x30], edi
mov eax, dword [esp + 0x18]
add eax, 0xfffffff0
lea edx, [eax + 0xc]
mov ecx, edi
lock xadd dword [edx], ecx
dec ecx
test ecx, ecx
jg 0x4c5008
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
lea ecx, [esp + 0x18]
push ecx
mov ecx, str.Norwegian
mov dword [esp + 0x18], 0x414
call fcn.0041b050
lea ecx, [esp + 0x14]
mov edx, esi
mov dword [esp + 0x30], 0xb
call fcn.00442f30
push eax
lea ebx, [esp + 0x20]
mov eax, esi
call fcn.00442bf0
mov dword [esp + 0x30], edi
mov eax, dword [esp + 0x18]
add eax, 0xfffffff0
lea edx, [eax + 0xc]
mov ecx, edi
lock xadd dword [edx], ecx
dec ecx
test ecx, ecx
jg 0x4c5061
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
lea ecx, [esp + 0x18]
push ecx
mov ecx, str.Suomi__Finnish_
mov dword [esp + 0x18], 0x40b
call fcn.0041b050
lea ecx, [esp + 0x14]
mov edx, esi
mov dword [esp + 0x30], 0xc
call fcn.00442f30
push eax
lea ebx, [esp + 0x20]
mov eax, esi
call fcn.00442bf0
mov dword [esp + 0x30], edi
mov eax, dword [esp + 0x18]
add eax, 0xfffffff0
lea edx, [eax + 0xc]
mov ecx, edi
lock xadd dword [edx], ecx
dec ecx
test ecx, ecx
jg 0x4c50ba
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
lea ecx, [esp + 0x18]
push ecx
mov ecx, str.Danish
mov dword [esp + 0x18], 0x406
call fcn.0041b050
lea ecx, [esp + 0x14]
mov edx, esi
mov dword [esp + 0x30], 0xd
call fcn.00442f30
push eax
lea ebx, [esp + 0x20]
mov eax, esi
call fcn.00442bf0
mov dword [esp + 0x30], edi
mov eax, dword [esp + 0x18]
add eax, 0xfffffff0
lea edx, [eax + 0xc]
mov ecx, edi
lock xadd dword [edx], ecx
dec ecx
test ecx, ecx
jg 0x4c5113
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
lea ecx, [esp + 0x18]
push ecx
mov ecx, str.Cesk
mov dword [esp + 0x18], 0x405
call fcn.0041b050
lea ecx, [esp + 0x14]
mov edx, esi
mov dword [esp + 0x30], 0xe
call fcn.00442f30
push eax
lea ebx, [esp + 0x20]
mov eax, esi
call fcn.00442bf0
mov dword [esp + 0x30], edi
mov eax, dword [esp + 0x18]
add eax, 0xfffffff0
lea edx, [eax + 0xc]
mov ecx, edi
lock xadd dword [edx], ecx
dec ecx
test ecx, ecx
jg 0x4c516c
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
lea ecx, [esp + 0x18]
push ecx
mov ecx, str.Slovak
mov dword [esp + 0x18], 0x41b
call fcn.0041b050
lea ecx, [esp + 0x14]
mov edx, esi
mov dword [esp + 0x30], 0xf
call fcn.00442f30
push eax
lea ebx, [esp + 0x20]
mov eax, esi
call fcn.00442bf0
mov dword [esp + 0x30], edi
mov eax, dword [esp + 0x18]
add eax, 0xfffffff0
lea edx, [eax + 0xc]
mov ecx, edi
lock xadd dword [edx], ecx
dec ecx
test ecx, ecx
jg 0x4c51c5
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
lea ecx, [esp + 0x18]
push ecx
mov ecx, str.Romana__Romanian_
mov dword [esp + 0x18], 0x418
call fcn.0041b050
lea ecx, [esp + 0x14]
mov edx, esi
mov dword [esp + 0x30], 0x10
call fcn.00442f30
push eax
lea ebx, [esp + 0x20]
mov eax, esi
call fcn.00442bf0
mov dword [esp + 0x30], edi
mov eax, dword [esp + 0x18]
add eax, 0xfffffff0
lea edx, [eax + 0xc]
mov ecx, edi
lock xadd dword [edx], ecx
dec ecx
test ecx, ecx
jg 0x4c521e
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
lea ecx, [esp + 0x18]
push ecx
mov ecx, str.Bulgarian
mov dword [esp + 0x18], 0x402
call fcn.0041b050
lea ecx, [esp + 0x14]
mov edx, esi
mov dword [esp + 0x30], 0x11
call fcn.00442f30
push eax
lea ebx, [esp + 0x20]
mov eax, esi
call fcn.00442bf0
mov dword [esp + 0x30], edi
mov eax, dword [esp + 0x18]
add eax, 0xfffffff0
lea edx, [eax + 0xc]
mov ecx, edi
lock xadd dword [edx], ecx
dec ecx
test ecx, ecx
jg 0x4c5277
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
lea ecx, [esp + 0x18]
push ecx
mov ecx, str.Albanian
mov dword [esp + 0x18], 0x41c
call fcn.0041b050
lea ecx, [esp + 0x14]
mov edx, esi
mov dword [esp + 0x30], 0x12
call fcn.00442f30
push eax
lea ebx, [esp + 0x20]
mov eax, esi
call fcn.00442bf0
mov dword [esp + 0x30], edi
mov eax, dword [esp + 0x18]
add eax, 0xfffffff0
lea edx, [eax + 0xc]
mov ecx, edi
lock xadd dword [edx], ecx
dec ecx
test ecx, ecx
jg 0x4c52d0
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
lea ecx, [esp + 0x18]
push ecx
mov ecx, str.Greek
mov dword [esp + 0x18], 0x408
call fcn.0041b050
lea ecx, [esp + 0x14]
mov edx, esi
mov dword [esp + 0x30], 0x13
call fcn.00442f30
push eax
lea ebx, [esp + 0x20]
mov eax, esi
call fcn.00442bf0
mov dword [esp + 0x30], edi
mov eax, dword [esp + 0x18]
add eax, 0xfffffff0
lea edx, [eax + 0xc]
mov ecx, edi
lock xadd dword [edx], ecx
dec ecx
test ecx, ecx
jg 0x4c5329
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
lea ecx, [esp + 0x18]
push ecx
mov ecx, 0x4e8e88
mov dword [esp + 0x18], 0x41f
call fcn.0041b050
lea ecx, [esp + 0x14]
mov edx, esi
mov dword [esp + 0x30], 0x14
call fcn.00442f30
push eax
lea ebx, [esp + 0x20]
mov eax, esi
call fcn.00442bf0
mov dword [esp + 0x30], edi
mov eax, dword [esp + 0x18]
add eax, 0xfffffff0
lea edx, [eax + 0xc]
mov ecx, edi
lock xadd dword [edx], ecx
dec ecx
test ecx, ecx
jg 0x4c5382
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
lea ecx, [esp + 0x18]
push ecx
mov ecx, str.Russian
mov dword [esp + 0x18], 0x419
call fcn.0041b050
lea ecx, [esp + 0x14]
mov edx, esi
mov dword [esp + 0x30], 0x15
call fcn.00442f30
push eax
lea ebx, [esp + 0x20]
mov eax, esi
call fcn.00442bf0
mov dword [esp + 0x30], edi
mov eax, dword [esp + 0x18]
add eax, 0xfffffff0
lea edx, [eax + 0xc]
mov ecx, edi
lock xadd dword [edx], ecx
dec ecx
test ecx, ecx
jg 0x4c53db
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
lea ecx, [esp + 0x18]
push ecx
mov ecx, str.Polski__Polish_
mov dword [esp + 0x18], 0x415
call fcn.0041b050
lea ecx, [esp + 0x14]
mov edx, esi
mov dword [esp + 0x30], 0x16
call fcn.00442f30
push eax
lea ebx, [esp + 0x20]
mov eax, esi
call fcn.00442bf0
mov dword [esp + 0x30], edi
mov eax, dword [esp + 0x18]
add eax, 0xfffffff0
lea edx, [eax + 0xc]
mov ecx, edi
lock xadd dword [edx], ecx
dec ecx
test ecx, ecx
jg 0x4c5434
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
lea ecx, [esp + 0x18]
push ecx
mov ecx, str.Magyar__Hungarian_
mov dword [esp + 0x18], 0x40e
call fcn.0041b050
lea ecx, [esp + 0x14]
mov edx, esi
mov dword [esp + 0x30], 0x17
call fcn.00442f30
push eax
lea ebx, [esp + 0x20]
mov eax, esi
call fcn.00442bf0
mov dword [esp + 0x30], edi
mov eax, dword [esp + 0x18]
add eax, 0xfffffff0
lea edx, [eax + 0xc]
mov ecx, edi
lock xadd dword [edx], ecx
dec ecx
test ecx, ecx
jg 0x4c548d
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
lea ecx, [esp + 0x18]
push ecx
mov ecx, str.Lietuviu__Lithuanian_
mov dword [esp + 0x18], 0x427
call fcn.0041b050
lea ecx, [esp + 0x14]
mov edx, esi
mov dword [esp + 0x30], 0x18
call fcn.00442f30
push eax
lea ebx, [esp + 0x20]
mov eax, esi
call fcn.00442bf0
mov dword [esp + 0x30], edi
mov eax, dword [esp + 0x18]
add eax, 0xfffffff0
lea edx, [eax + 0xc]
mov ecx, edi
lock xadd dword [edx], ecx
dec ecx
test ecx, ecx
jg 0x4c54e6
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
lea ecx, [esp + 0x18]
push ecx
mov ecx, str.Serbian__Cyrillic_
mov dword [esp + 0x18], 0xc1a
call fcn.0041b050
lea ecx, [esp + 0x14]
mov edx, esi
mov dword [esp + 0x30], 0x19
call fcn.00442f30
push eax
lea ebx, [esp + 0x20]
mov eax, esi
call fcn.00442bf0
mov dword [esp + 0x30], edi
mov eax, dword [esp + 0x18]
add eax, 0xfffffff0
lea edx, [eax + 0xc]
mov ecx, edi
lock xadd dword [edx], ecx
dec ecx
test ecx, ecx
jg 0x4c553f
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
lea ecx, [esp + 0x18]
push ecx
mov ecx, str.Serbian__Latin_
mov dword [esp + 0x18], 0x81a
call fcn.0041b050
lea ecx, [esp + 0x14]
mov edx, esi
mov dword [esp + 0x30], 0x1a
call fcn.00442f30
push eax
lea ebx, [esp + 0x20]
mov eax, esi
call fcn.00442bf0
mov dword [esp + 0x30], edi
mov eax, dword [esp + 0x18]
add eax, 0xfffffff0
lea edx, [eax + 0xc]
mov ecx, edi
lock xadd dword [edx], ecx
dec ecx
test ecx, ecx
jg 0x4c5598
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
lea ecx, [esp + 0x18]
push ecx
mov ecx, str.Macedonian
mov dword [esp + 0x18], 0x42f
call fcn.0041b050
lea ecx, [esp + 0x14]
mov edx, esi
mov dword [esp + 0x30], 0x1b
call fcn.00442f30
push eax
lea ebx, [esp + 0x20]
mov eax, esi
call fcn.00442bf0
mov dword [esp + 0x30], edi
mov eax, dword [esp + 0x18]
add eax, 0xfffffff0
lea edx, [eax + 0xc]
mov ecx, edi
lock xadd dword [edx], ecx
dec ecx
test ecx, ecx
jg 0x4c55f1
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
lea ecx, [esp + 0x18]
push ecx
mov ecx, str.Bosnian
mov dword [esp + 0x18], 0x141a
call fcn.0041b050
lea ecx, [esp + 0x14]
mov edx, esi
mov dword [esp + 0x30], 0x1c
call fcn.00442f30
push eax
lea ebx, [esp + 0x20]
mov eax, esi
call fcn.00442bf0
mov dword [esp + 0x30], edi
mov eax, dword [esp + 0x18]
add eax, 0xfffffff0
lea edx, [eax + 0xc]
mov ecx, edi
lock xadd dword [edx], ecx
dec ecx
test ecx, ecx
jg 0x4c564a
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
lea ecx, [esp + 0x18]
push ecx
mov ecx, str.Hebrew
mov dword [esp + 0x18], 0x40d
call fcn.0041b050
lea ecx, [esp + 0x14]
mov edx, esi
mov dword [esp + 0x30], 0x1d
call fcn.00442f30
push eax
lea ebx, [esp + 0x20]
mov eax, esi
call fcn.00442bf0
mov dword [esp + 0x30], edi
mov eax, dword [esp + 0x18]
add eax, 0xfffffff0
lea edx, [eax + 0xc]
mov ecx, edi
lock xadd dword [edx], ecx
dec ecx
test ecx, ecx
jg 0x4c56a3
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
lea ecx, [esp + 0x18]
push ecx
mov ecx, str.Arabic
mov dword [esp + 0x18], 0x401
call fcn.0041b050
lea ecx, [esp + 0x14]
mov edx, esi
mov dword [esp + 0x30], 0x1e
call fcn.00442f30
push eax
lea ebx, [esp + 0x20]
mov eax, esi
call fcn.00442bf0
mov dword [esp + 0x30], edi
mov eax, dword [esp + 0x18]
add eax, 0xfffffff0
lea edx, [eax + 0xc]
mov ecx, edi
lock xadd dword [edx], ecx
dec ecx
test ecx, ecx
jg 0x4c56fc
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
lea ecx, [esp + 0x18]
push ecx
mov ecx, str.Japanese
mov dword [esp + 0x18], 0x411
call fcn.0041b050
lea ecx, [esp + 0x14]
mov edx, esi
mov dword [esp + 0x30], 0x1f
call fcn.00442f30
push eax
lea ebx, [esp + 0x20]
mov eax, esi
call fcn.00442bf0
mov dword [esp + 0x30], edi
mov eax, dword [esp + 0x18]
add eax, 0xfffffff0
lea edx, [eax + 0xc]
mov ecx, edi
lock xadd dword [edx], ecx
dec ecx
test ecx, ecx
jg 0x4c5755
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
lea ecx, [esp + 0x18]
push ecx
mov ecx, str.Chinese__Traditional_
mov dword [esp + 0x18], 0x404
call fcn.0041b050
lea ecx, [esp + 0x14]
mov edx, esi
mov dword [esp + 0x30], 0x20
call fcn.00442f30
push eax
lea ebx, [esp + 0x20]
mov eax, esi
call fcn.00442bf0
mov dword [esp + 0x30], edi
mov eax, dword [esp + 0x18]
add eax, 0xfffffff0
lea edx, [eax + 0xc]
mov ecx, edi
lock xadd dword [edx], ecx
dec ecx
test ecx, ecx
jg 0x4c57ae
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
lea ecx, [esp + 0x18]
push ecx
mov ecx, str.Chinese__Simplified_
mov dword [esp + 0x18], 0x804
call fcn.0041b050
lea ecx, [esp + 0x14]
mov edx, esi
mov dword [esp + 0x30], 0x21
call fcn.00442f30
push eax
lea ebx, [esp + 0x20]
mov eax, esi
call fcn.00442bf0
mov dword [esp + 0x30], edi
mov eax, dword [esp + 0x18]
add eax, 0xfffffff0
lea edx, [eax + 0xc]
mov ecx, edi
lock xadd dword [edx], ecx
dec ecx
test ecx, ecx
jg 0x4c5807
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
lea ecx, [esp + 0x18]
push ecx
mov ecx, str.Korean
mov dword [esp + 0x18], 0x412
call fcn.0041b050
lea ecx, [esp + 0x14]
mov edx, esi
mov dword [esp + 0x30], 0x22
call fcn.00442f30
push eax
lea ebx, [esp + 0x20]
mov eax, esi
call fcn.00442bf0
mov dword [esp + 0x30], edi
mov eax, dword [esp + 0x18]
add eax, 0xfffffff0
lea edx, [eax + 0xc]
mov ecx, edi
lock xadd dword [edx], ecx
dec ecx
test ecx, ecx
jg 0x4c5860
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
lea ecx, [esp + 0x20]
push ecx
mov ecx, str.Kurdish
mov dword [esp + 0x20], 0x270f
call fcn.0041b050
lea ecx, [esp + 0x1c]
mov edx, esi
mov dword [esp + 0x30], 0x23
call fcn.00442f30
push eax
lea ebx, [esp + 0x18]
mov eax, esi
call fcn.00442bf0
mov dword [esp + 0x30], edi
mov eax, dword [esp + 0x20]
add eax, 0xfffffff0
lea edx, [eax + 0xc]
lock xadd dword [edx], edi
dec edi
test edi, edi
jg 0x4c58b7
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov ecx, dword [esp + 0x28]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 4