Function at 0x10009c24
Capabilities:
Identify system language via api

Disassembly:
mov eax, 0x1005f77a
call fcn.1005ecf4
sub esp, 0x1ac
cmp byte [ebp + 0x14], 0
mov eax, ecx
push ebx
push esi
push edi
mov dword [ebp - 0x10], esp
mov edi, edx
je 0x1000a3db
mov ecx, dword [ebp + 0x20]
sub esp, 0x18
mov dword [ebp - 0x14], ecx
mov ecx, esp
push eax
call fcn.100034eb
lea ecx, [ebp - 0xbc]
call fcn.10007649
add esp, 0x18
xor ebx, ebx
mov dword [ebp - 4], ebx
mov eax, dword [ebp - 0xbc]
cmp eax, dword [ebp - 0xb8]
je 0x1000a3d4
lea eax, [ebp - 0xcc]
mov dword [ebp - 0xcc], ebx
push eax
push 0x1000
lea ecx, [ebp - 0x84]
mov dword [ebp - 0x84], ebx
mov dword [ebp - 0x80], ebx
mov dword [ebp - 0x7c], ebx
call fcn.1000bac6
mov byte [ebp - 4], 1
mov eax, dword [ebp - 0x80]
sub eax, dword [ebp - 0x84]
push dword [ebp - 0x84]
sar eax, 1
push eax
push 0x2742
push 0x3917
call fcn.10022042
pop ecx
pop ecx
call eax
push dword [ebp - 0x84]
lea ecx, [ebp - 0xe4]
call fcn.10003513
push 0x6b05
mov byte [ebp - 4], 2
call fcn.1003c9ff
push 0x7b12
push ecx
movzx eax, ax
lea edx, [ebp - 0x88]
mov dword [ebp - 0x88], eax
lea eax, [ebp - 0xe4]
push 0x6661
push eax
push ecx
push 1
call fcn.10009bc4
mov dword [ebp - 0x1c], 0x4af4
add esp, 0x1c
cmp dword [ebp - 0x1c], 0x4d64
jle 0x10009d68
mov esi, ebx
mov dword [ebp - 0x18], ebx
mov edi, ebx
mov ebx, esi
mov esi, 0x3293
mov eax, ebx
mov ecx, 0x10079358
cdq
push edx
push eax
call fcn.100033d6
add ebx, edi
dec esi
jne 0x10009d39
mov esi, dword [ebp - 0x18]
dec edi
cmp edi, 0xffff91a2
jg 0x10009d32
inc esi
mov dword [ebp - 0x18], esi
push 0
pop ebx
cmp esi, 0x3c4b
jl 0x10009d30
sub esp, 0xc
push 0x78e0
push ecx
push 1
lea ecx, [ebp - 0xe4]
call fcn.1000921b
add esp, 0x18
mov byte [ebp - 4], 3
cmp dword [ebp - 0x1c], 0x480f
jge 0x10009dc1
mov edx, str.lbm_kzhw_hrp_abondv_ljwzb_vvrdn_eylmos_bid_qqpzzpzmm_juehrahf_npxwlfme_yjjjoqqv
mov ecx, 0x10079358
call fcn.1000562f
jmp 0x10009dc1
mov dword [ebp - 4], 2
lea eax, [ebp - 0xe4]
cmp dword [ebp - 0xd0], 8
push ebx
cmovae eax, dword [ebp - 0xe4]
push eax
push 0x2742
push 0x878d
call fcn.10022042
pop ecx
pop ecx
call eax
push 0x3ce
push 0x73d9
push 1
push 1
lea eax, [ebp - 0x88]
mov dl, 1
push 0x3afe
push eax
lea ecx, [ebp - 0xe4]
call fcn.10009392
mov dword [ebp - 0x94], ebx
add esp, 0x18
mov dword [ebp - 0x14], 0x1f71
cmp dword [ebp - 0x14], 0x1022
jge 0x10009eb0
lea eax, [ebp - 0x98]
mov ecx, 0x10079478
push eax
call fcn.1000ad21
mov esi, dword [ebp - 0x98]
test esi, esi
je 0x10009ea9
mov dword [ebp - 0x14], 0xa
lea eax, [ebp - 0x90]
mov ecx, 0x10079478
push eax
dec esi
mov edi, ebx
call fcn.1000ad21
mov ecx, dword [ebp - 0x90]
mov eax, ecx
test ecx, ecx
je 0x10009e93
cdq
idiv dword [ebp - 0x14]
mov dword [ebp - 0x54], edx
mov dword [ebp - 0x24], eax
test edx, edx
je 0x10009e8f
mov eax, ecx
cdq
idiv dword [ebp - 0x54]
mov eax, dword [ebp - 0x24]
test edx, edx
jne 0x10009e8f
inc edi
test eax, eax
jne 0x10009e73
push edi
mov ecx, 0x10079358
call fcn.1000aea9
push eax
call fcn.1000d701
pop ecx
test esi, esi
jne 0x10009e53
dec esi
mov dword [ebp - 0x98], esi
push 0xa
pop edi
lea eax, [ebp - 0x94]
mov dl, 1
push 1
push eax
lea ecx, [ebp - 0xbc]
call fcn.1000941f
pop ecx
pop ecx
mov byte [ebp - 0x1d], bl
mov eax, ebx
mov dword [ebp - 0x18], ebx
cmp eax, 0x12c
jae 0x1000a3bb
lea eax, [ebp - 0xe4]
push eax
lea ecx, [ebp - 0xfc]
call fcn.100034eb
push 0x10
pop edx
lea ecx, [ebp - 0x19c]
mov byte [ebp - 4], 5
call fcn.1000e461
push ecx
lea eax, [ebp - 0x19c]
mov byte [ebp - 4], 6
push eax
push ecx
lea eax, [ebp - 0xfc]
mov edx, 0x7ef5
push eax
push 0x2723
push ecx
push ebx
call fcn.10009bc4
add esp, 0x1c
mov dword [ebp - 0x50], 0x1d020201
mov ecx, ebx
mov dword [ebp - 0x4c], 0x1d03f301
mov byte [ebp - 0x48], bl
mov byte [ebp - 0x47], 0x4b
push 0x65
pop eax
push 2
mov word [ebp - 0xa2], ax
pop esi
mov dword [ebp - 0x24], ecx
cmp esi, 4
jne 0x10009f5e
push 2
pop ecx
mov dword [ebp - 0x24], ecx
jmp 0x10009fae
movzx edx, byte [ebp + esi - 0x4f]
mov eax, esi
sub eax, ecx
push 1
push 0x371f
push 1
movzx eax, byte [ebp + eax - 0x52]
push 0x677b
push 1
movzx ecx, word [ebp + eax*2 - 0xa4]
mov eax, ecx
and eax, edx
add eax, eax
sub ecx, eax
movzx eax, byte [ebp + esi - 0x50]
add ecx, edx
lea edx, [ebp - 0x24]
mov word [ebp + eax*2 - 0xa4], cx
mov ecx, 0x10a3
call fcn.10009459
mov ecx, dword [ebp - 0x24]
add esp, 0x14
add esi, 2
cmp esi, edi
jb 0x10009f51
xor eax, eax
mov dword [ebp - 0x164], 7
mov word [ebp - 0x9c], ax
lea ecx, [ebp - 0x178]
mov word [ebp - 0x178], ax
lea eax, [ebp - 0xa4]
push eax
mov dword [ebp - 0x168], ebx
call fcn.100039c6
push ecx
push ecx
lea eax, [ebp - 0x178]
mov byte [ebp - 4], 7
push eax
lea ecx, [ebp - 0xfc]
call fcn.10005c1a
push ebx
push 1
lea ecx, [ebp - 0x178]
mov byte [ebp - 4], 6
call fcn.10003de5
xor eax, eax
lea edi, [ebp - 0xa4]
cmp dword [ebp - 0xe8], 8
stosd dword es:[edi], eax
push ebx
push 0x80
push 2
stosd dword es:[edi], eax
push ebx
push ebx
push 0x40000000
stosw word es:[edi], ax
lea eax, [ebp - 0xfc]
cmovae eax, dword [ebp - 0xfc]
push eax
push 0x2742
push 0x83fc
call fcn.10022042
pop ecx
pop ecx
call eax
mov esi, eax
cmp esi, 0xffffffff
je 0x1000a0a2
push ebx
lea eax, [ebp - 0x118]
push eax
push dword [ebp - 0x94]
push dword [ebp - 0xbc]
push esi
push 0x2742
push 0x63e3
call fcn.10022042
pop ecx
pop ecx
call eax
push esi
test eax, eax
push 0x2742
push 0x5930
setne bl
call fcn.10022042
pop ecx
pop ecx
call eax
test bl, bl
jne 0x1000a0d1
xor ebx, ebx
push ebx
push 1
lea ecx, [ebp - 0x19c]
call fcn.10003de5
push ebx
push 1
lea ecx, [ebp - 0xfc]
mov byte [ebp - 4], 2
call fcn.10003de5
mov eax, dword [ebp - 0x18]
inc eax
push 0xa
mov dword [ebp - 0x18], eax
pop edi
jmp 0x10009ed3
push 0x22
pop eax
mov word [ebp - 0x60], ax
lea ecx, [ebp - 0x114]
xor eax, eax
mov word [ebp - 0x68], 0xab00
mov word [ebp - 0x5e], ax
xor ebx, ebx
mov word [ebp - 0x114], ax
lea eax, [ebp - 0x60]
push eax
mov dword [ebp - 0x100], 7
mov dword [ebp - 0x104], ebx
call fcn.100039c6
push ecx
push ecx
lea eax, [ebp - 0xfc]
mov byte [ebp - 4], 8
push eax
lea ecx, [ebp - 0x114]
mov dword [ebp - 0x60], ebx
call fcn.10005c1a
push 0x2f
pop ecx
mov word [ebp - 0xac], cx
mov al, 2
push 2
mov ecx, ebx
mov dword [ebp - 0x3c], 0xf019602
mov dword [ebp - 0x38], 0x33020200
mov word [ebp - 0x34], 0x3b2
mov byte [ebp - 0x32], 0x71
pop esi
mov dword [ebp - 0x1c], ecx
mov dword [ebp - 0x18], esi
cmp esi, 0xb
jae 0x1000a2d0
movzx eax, al
lea eax, [eax*2 + 2]
cmp esi, eax
jne 0x1000a212
movzx eax, byte [ebp + esi - 0x3c]
dec esi
add esi, eax
mov dword [ebp - 0x14], 0x70c
cmp dword [ebp - 0x14], 0x7f8
mov dword [ebp - 0x18], esi
lea ecx, [eax + 1]
mov dword [ebp - 0x1c], ecx
jle 0x1000a2c5
mov dword [ebp - 0x14], ebx
mov dword [ebp - 0x5c], ebx
mov dword [ebp - 0x54], 0x370d
mov edi, dword [ebp - 0x5c]
mov ecx, ebx
mov dword [ebp - 0x8c], ecx
mov eax, edi
mov esi, ebx
cdq
idiv ecx
mov edi, edx
mov ecx, esi
mov eax, edi
sar eax, cl
mov ecx, 0x10079358
cdq
push edx
push eax
call fcn.100033d6
inc esi
cmp esi, 0x426b
jl 0x1000a1b7
mov ecx, dword [ebp - 0x8c]
mov edi, dword [ebp - 0x5c]
inc ecx
mov dword [ebp - 0x8c], ecx
cmp ecx, 0x58c4
jl 0x1000a1ae
mov eax, dword [ebp - 0x5c]
mov edi, dword [ebp - 0x14]
add eax, edi
dec dword [ebp - 0x54]
mov dword [ebp - 0x5c], eax
jne 0x1000a1a3
inc edi
mov dword [ebp - 0x14], edi
cmp edi, 0x6b3f
jl 0x1000a199
mov esi, dword [ebp - 0x18]
mov ecx, dword [ebp - 0x1c]
jmp 0x1000a2c5
mov dword [ebp - 0x14], 0x2189
cmp dword [ebp - 0x14], 0x24e7
jle 0x1000a278
call dword [sym.imp.KERNEL32.dll_GetUserDefaultUILanguage]
mov edi, ebx
mov esi, ebx
mov eax, edi
lea ecx, [ebp - 0x1b4]
cdq
idiv esi
mov eax, edx
cdq
push edx
push eax
call fcn.10001ac4
pop ecx
pop ecx
cmp dword [eax + 0x14], 0x10
jb 0x1000a24b
mov eax, dword [eax]
push eax
call fcn.10046ccf
pop ecx
push ebx
push 1
lea ecx, [ebp - 0x1b4]
call fcn.100038da
inc esi
cmp esi, 0x553a
jl 0x1000a22c
inc edi
cmp edi, 0x635
jl 0x1000a22a
mov esi, dword [ebp - 0x18]
mov ecx, dword [ebp - 0x1c]
movzx edx, byte [ebp + esi - 0x3b]
mov eax, esi
sub eax, ecx
movzx eax, byte [ebp + eax - 0x3e]
movzx ecx, word [ebp + eax*2 - 0xb0]
mov eax, ecx
and eax, edx
add eax, eax
sub ecx, eax
movzx eax, byte [ebp + esi - 0x3c]
add ecx, edx
cmp dword [ebp - 0x14], 0x1e20
mov word [ebp + eax*2 - 0xb0], cx
jge 0x1000a2b9
push str.xokcsb_lrfcmlkxa_tad_vltrz_gyaayjf_xcc
call fcn.10046ccf
pop ecx
mov dword [ebp - 4], 8
mov ecx, ebx
mov dword [ebp - 0x1c], ebx
mov al, byte [ebp - 0x3c]
add esi, 2
jmp 0x1000a153
xor eax, eax
mov dword [ebp - 0x134], 7
mov word [ebp - 0xa8], ax
lea ecx, [ebp - 0x148]
mov word [ebp - 0x148], ax
lea eax, [ebp - 0xb0]
push eax
mov dword [ebp - 0x138], ebx
call fcn.100039c6
push ecx
push ecx
lea eax, [ebp - 0x148]
mov byte [ebp - 4], 0xd
push eax
lea ecx, [ebp - 0x114]
call fcn.10005c1a
push ebx
push 1
lea ecx, [ebp - 0x148]
mov byte [ebp - 4], 8
call fcn.10003de5
xor eax, eax
lea edi, [ebp - 0xb0]
stosd dword es:[edi], eax
mov edx, 0x9f9
push 0x2142
stosd dword es:[edi], eax
stosw word es:[edi], ax
lea eax, [ebp - 0x1d]
push eax
push ecx
push 1
push ecx
call fcn.10009b8f
add esp, 0x14
lea edx, [ebp - 0xe4]
lea ecx, [ebp - 0x114]
call fcn.100076d8
mov ecx, dword [ebp + 0x20]
push ebx
push 1
mov byte [ecx], al
lea ecx, [ebp - 0x114]
call fcn.10003de5
push ebx
push 1
lea ecx, [ebp - 0x19c]
call fcn.10003de5
push ebx
push 1
lea ecx, [ebp - 0xfc]
call fcn.10003de5
push ebx
push 1
lea ecx, [ebp - 0xe4]
call fcn.10003de5
lea ecx, [ebp - 0x84]
call fcn.1000bb57
lea ecx, [ebp - 0xbc]
call fcn.1000baa5
jmp 0x1000a63b
push ebx
push 1
lea ecx, [ebp - 0xe4]
call fcn.10003de5
lea ecx, [ebp - 0x84]
call fcn.1000bb57
mov eax, dword [ebp + 0x20]
mov byte [eax], bl
jmp 0x1000a3ab
xor ebx, ebx
mov dword [ebp - 0xc8], ebx
mov dword [ebp - 0xc4], ebx
mov dword [ebp - 0xc0], ebx
mov dword [ebp - 4], 0xe
cmp dword [edi + 0x10], ebx
je 0x1000a621
push 0x2e
pop eax
push 2
mov ecx, ebx
mov dword [ebp - 0x2c], 0x5d02fa00
mov byte [ebp - 0x28], 0xc1
mov word [ebp - 0x30], ax
pop esi
mov dword [ebp - 0x64], ecx
cmp esi, 2
jne 0x1000a428
push 3
pop ecx
push ecx
mov dword [ebp - 0x64], ecx
pop esi
jmp 0x1000a470
movzx edx, byte [ebp + esi - 0x2b]
mov eax, esi
sub eax, ecx
push 1
push 0x8d6
push 0x5a83
movzx eax, byte [ebp + eax - 0x2e]
push 1
push 1
movzx eax, word [ebp + eax*2 - 0x30]
mov ecx, eax
and eax, edx
or ecx, edx
lea edx, [ebp - 0x64]
sub ecx, eax
movzx eax, byte [ebp + esi - 0x2c]
mov word [ebp + eax*2 - 0x30], cx
mov ecx, 0x5aeb
call fcn.100071e0
mov ecx, dword [ebp - 0x64]
add esp, 0x14
add esi, 2
cmp esi, 5
jb 0x1000a419
xor eax, eax
mov dword [ebp - 0x11c], 7
mov word [ebp - 0x2e], ax
lea ecx, [ebp - 0x130]
mov word [ebp - 0x130], ax
lea eax, [ebp - 0x30]
push eax
mov dword [ebp - 0x120], ebx
call fcn.100039c6
lea eax, [ebp - 0x130]
mov byte [ebp - 4], 0xf
push eax
mov edx, edi
lea ecx, [ebp - 0x78]
call fcn.10006c96
pop ecx
push ebx
push 1
lea ecx, [ebp - 0x130]
mov byte [ebp - 4], 0x11
call fcn.10003de5
mov eax, dword [ebp - 0x74]
sub eax, dword [ebp - 0x78]
push 0x18
cdq
pop ecx
idiv ecx
mov dword [ebp - 0x30], ebx
test eax, eax
jne 0x1000a5fa
push 0x2d
pop eax
push 2
mov ecx, ebx
mov dword [ebp - 0x44], 0x8304ab00
mov word [ebp - 0x40], 0x6742
mov byte [ebp - 0x3e], 0x8f
mov word [ebp - 0x58], ax
pop esi
mov dword [ebp - 0x6c], ecx
cmp esi, 2
jne 0x1000a512
push 5
pop ecx
push ecx
mov dword [ebp - 0x6c], ecx
pop esi
jmp 0x1000a567
movzx edx, byte [ebp + esi - 0x43]
mov eax, esi
sub eax, ecx
push 0x7c25
push 1
push 0x7d32
movzx eax, byte [ebp + eax - 0x46]
movzx eax, word [ebp + eax*2 - 0x58]
mov ecx, eax
and eax, edx
or ecx, edx
mov edx, 0x1bdb
sub ecx, eax
movzx eax, byte [ebp + esi - 0x44]
mov word [ebp + eax*2 - 0x58], cx
lea eax, [ebp - 0x6c]
push eax
push ebx
push 0x6fb4
push 0x3d9a
mov ecx, 0x6df5
call fcn.10009111
mov ecx, dword [ebp - 0x6c]
add esp, 0x1c
add esi, 2
cmp esi, 7
jb 0x1000a503
xor eax, eax
mov dword [ebp - 0x14c], 7
mov word [ebp - 0x56], ax
lea ecx, [ebp - 0x160]
mov word [ebp - 0x160], ax
lea eax, [ebp - 0x58]
push eax
mov dword [ebp - 0x150], ebx
call fcn.100039c6
lea eax, [ebp - 0x160]
mov byte [ebp - 4], 0x12
push eax
mov edx, edi
lea ecx, [ebp - 0x184]
call fcn.10006c96
pop ecx
mov esi, eax
lea eax, [ebp - 0x78]
cmp eax, esi
je 0x1000a5dd
mov ecx, eax
call fcn.1000b92c
mov ecx, dword [esi]
mov dword [ebp - 0x78], ecx
mov eax, dword [esi + 4]
mov dword [ebp - 0x74], eax
mov eax, dword [esi + 8]
mov dword [ebp - 0x70], eax
mov dword [esi], ebx
mov dword [esi + 4], ebx
mov dword [esi + 8], ebx
lea ecx, [ebp - 0x184]
call fcn.1000b92c
push ebx
push 1
lea ecx, [ebp - 0x160]
mov byte [ebp - 4], 0x11
call fcn.10003de5
lea eax, [ebp - 0xc8]
mov edx, 0x2911
push eax
push 1
lea eax, [ebp - 0x78]
push eax
push ecx
call fcn.1000744b
add esp, 0x10
mov byte [ebp - 4], 0xe
lea ecx, [ebp - 0x78]
call fcn.1000b92c
mov ecx, dword [ebp + 0x10]
lea eax, [ebp - 0xc8]
push eax
call fcn.1000b46d
lea ecx, [ebp - 0xc8]
call fcn.1000ba05
mov ecx, dword [ebp - 0xc]
pop edi
pop esi
mov dword fs:[0], ecx
pop ebx
mov esp, ebp
pop ebp
ret