Function at 0x10018136
Capabilities:
Identify system language via api

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x1008b16e
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x1e0
push esi
push edi
and dword [ebp - 0x2c], 0
push 2
lea ecx, [ebp - 0xd8]
call fcn.10018e8a
and dword [ebp - 4], 0
lea eax, [ebp - 0x13c]
push eax
push 0
lea eax, [ebp - 0xd8]
push eax
call fcn.10018b97
add esp, 0xc
push 0
lea ecx, [ebp - 0xd8]
call fcn.10018f28
and dword [eax], 0
jmp 0x100181b0
push 0
lea ecx, [ebp - 0xd8]
call fcn.10018f28
mov dword [ebp - 0x64], eax
mov eax, dword [ebp - 0x64]
mov eax, dword [eax]
inc eax
mov ecx, dword [ebp - 0x64]
mov dword [ecx], eax
push 0
lea ecx, [ebp - 0xd8]
call fcn.10018f28
cmp dword [eax], 0x1c
jge 0x100181fd
mov dword [ebp - 0x44], 0xa9ef72d4
mov dword [ebp - 0x44], 0xfffffff0
jmp 0x100181d9
mov eax, dword [ebp - 0x44]
inc eax
mov dword [ebp - 0x44], eax
cmp dword [ebp - 0x44], 0xfffffff8
jne 0x100181fb
mov byte [ebp - 0x19], 0
movzx eax, byte [ebp - 0x19]
test eax, eax
je 0x100181f9
push 1
push 0xcb4
call fcn.10017a93
pop ecx
pop ecx
jmp 0x100181d2
jmp 0x10018195
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0xd8]
call fcn.10018f0c
mov eax, dword [0x1067fd3c]
and eax, 1
jne 0x10018243
mov eax, dword [0x1067fd3c]
or eax, 1
mov dword [0x1067fd3c], eax
mov dword [ebp - 4], 1
mov ecx, 0x1067fcdc
call fcn.100190ef
push 0x1008da6e
call fcn.10072ce6
pop ecx
or dword [ebp - 4], 0xffffffff
push 4
lea ecx, [ebp - 0x104]
call fcn.10018e8a
mov dword [ebp - 4], 2
mov dword [ebp - 0x48], 0xd16df251
mov dword [ebp - 0x154], 0x36ccb036
mov dword [ebp - 0x15c], 0xd21dfe4
mov dword [ebp - 0x20], 0xffffffff
mov dword [ebp - 0xe4], 0xcd9d754
mov dword [ebp - 0x14], 0
jmp 0x10018293
mov eax, dword [ebp - 0x14]
inc eax
mov dword [ebp - 0x14], eax
cmp dword [ebp - 0x14], 4
jge 0x100182ac
push dword [ebp - 0x14]
lea ecx, [ebp - 0x104]
call fcn.10018f28
or dword [eax], 0xffffffff
jmp 0x1001828c
mov dword [ebp - 0x14], 0
jmp 0x100182bc
mov eax, dword [ebp - 0x14]
inc eax
mov dword [ebp - 0x14], eax
cmp dword [ebp - 0x14], 3
jge 0x100182d2
mov eax, dword [ebp - 0x14]
mov dword [ebp + eax*4 - 0x17c], 0x68aa2d34
jmp 0x100182b5
mov dword [ebp - 0x48], 3
jmp 0x100182e2
mov eax, dword [ebp - 0x48]
dec eax
mov dword [ebp - 0x48], eax
cmp dword [ebp - 0x48], 0
jl 0x1001837f
mov dword [ebp - 0x164], 0x93ee3274
mov dword [ebp - 0x16c], 0x2250db85
mov dword [ebp - 0x194], 0xfffffffa
mov dword [ebp - 0x11c], 0xa61fc2da
mov dword [ebp - 0xe0], 1
push 1
lea eax, [ebp - 0xe0]
push eax
call fcn.10017ad6
pop ecx
pop ecx
mov dword [ebp - 0x20], 3
jmp 0x1001833e
mov eax, dword [ebp - 0x20]
dec eax
mov dword [ebp - 0x20], eax
cmp dword [ebp - 0x20], 0
jl 0x1001837a
mov byte [ebp - 0x16], 0
movzx eax, byte [ebp - 0x16]
test eax, eax
je 0x1001835e
push 1
push 0x4958
call fcn.10017b19
pop ecx
pop ecx
mov byte [ebp - 0x18], 0
movzx eax, byte [ebp - 0x18]
test eax, eax
je 0x10018378
push 0x757d
push 1
call fcn.10017b49
pop ecx
pop ecx
jmp 0x10018337
jmp 0x100182db
push 4
pop eax
shl eax, 1
mov eax, dword [ebp + eax - 0x17c]
mov dword [ebp - 0x160], eax
push 0
lea ecx, [ebp - 0x104]
call fcn.10018f28
mov ecx, dword [ebp - 0xe4]
dec ecx
cmp dword [eax], ecx
jl 0x100183b5
mov dword [ebp - 0x90], 1
jmp 0x100183bc
and dword [ebp - 0x90], 0
push 4
pop eax
shl eax, 1
mov eax, dword [ebp + eax - 0x17c]
sub eax, dword [ebp - 0x90]
mov dword [ebp - 0x20], eax
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x104]
call fcn.10018f0c
mov ecx, dword [ebp + 0xc]
call fcn.10014c67
mov dword [ebp - 0x40], eax
cmp dword [ebp - 0x40], 6
jae 0x10018466
mov eax, dword [ebp + 0xc]
mov dword [ebp - 0xc8], eax
lea eax, [ebp - 0x124]
push eax
mov ecx, 0x1067fcdc
call fcn.10019002
push eax
lea eax, [ebp - 0xc8]
push eax
lea eax, [ebp - 0x190]
push eax
mov ecx, 0x1067fcdc
call fcn.10019010
mov ecx, eax
call fcn.10019025
movzx eax, al
test eax, eax
je 0x10018466
mov eax, dword [ebp + 0xc]
mov dword [ebp - 0xb4], eax
lea eax, [ebp - 0xb4]
push eax
mov ecx, 0x1067fcdc
call fcn.10019143
push eax
mov ecx, dword [ebp + 8]
call fcn.10018c3f
mov eax, dword [ebp - 0x2c]
or eax, 1
mov dword [ebp - 0x2c], eax
mov eax, dword [ebp + 8]
jmp 0x10018ac6
mov dword [ebp - 0x3c], 0xba394643
mov dword [ebp - 0x12c], 0xa622a149
mov dword [ebp - 0x168], 0x672ca3c0
mov dword [ebp - 0x134], 8
mov dword [ebp - 0x140], 0xffffffff
mov dword [ebp - 0x114], 0xd658edfe
mov dword [ebp - 0x144], 0x87a7525d
mov dword [ebp - 0x14c], 0x9cf13e13
mov dword [ebp - 0x148], 0xfffffffa
mov dword [ebp - 0x170], 0xfffffff9
mov dword [ebp - 0x150], 0xfffffff7
mov dword [ebp - 0x198], 0xa165018
mov dword [ebp - 0x158], 0x28405cef
push 3
lea ecx, [ebp - 0x18c]
call fcn.10018e8a
mov dword [ebp - 4], 3
mov dword [ebp - 0x180], 1
mov dword [ebp - 0x118], 0x16488a97
mov dword [ebp - 0xbc], 0
mov dword [ebp - 0x24], 0
jmp 0x10018527
mov eax, dword [ebp - 0x24]
inc eax
mov dword [ebp - 0x24], eax
cmp dword [ebp - 0x24], 4
jge 0x1001853d
mov eax, dword [ebp - 0x24]
mov dword [ebp + eax*4 - 0x1ec], 3
jmp 0x10018520
lea eax, [ebp - 0x18c]
push eax
lea eax, [ebp - 0x24]
push eax
push 0x7299
push 0x63d1
push 1
call fcn.10017b85
add esp, 0x14
mov dword [ebp - 0x3c], 3
jmp 0x1001856c
mov eax, dword [ebp - 0x3c]
dec eax
mov dword [ebp - 0x3c], eax
cmp dword [ebp - 0x3c], 0
jl 0x100185b9
mov dword [ebp - 0xdc], 0x9609c3fb
lea eax, [ebp - 0xdc]
push eax
push 0x61a5
push 1
push 0x217c
call fcn.10017c2f
add esp, 0x10
mov byte [ebp - 0x17], 0
movzx eax, byte [ebp - 0x17]
test eax, eax
je 0x100185b7
push 0x2ca0
push 0x72f6
push 1
call fcn.10017ca5
add esp, 0xc
jmp 0x10018565
push 0x3f12
push 1
push 0x5900
lea eax, [ebp - 0xbc]
push eax
call fcn.10017d20
add esp, 0x10
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x18c]
call fcn.10018f0c
lea ecx, [ebp - 0x1b0]
call fcn.10018c67
mov dword [ebp - 4], 4
mov eax, dword [ebp - 0x40]
xor edx, edx
push 2
pop ecx
div ecx
test edx, edx
jne 0x10018935
lea eax, [ebp - 0x1dc]
push eax
call fcn.1000a934
pop ecx
mov esi, eax
lea edi, [ebp - 0x1c8]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
lea esi, [ebp - 0x1c8]
lea edi, [ebp - 0x1bc]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
mov dword [ebp - 0x10], 0x6af1124f
mov dword [ebp - 0x60], 0
mov dword [ebp - 0x38], 0xffffffff
push 4
lea ecx, [ebp - 0x110]
call fcn.10018e8a
mov byte [ebp - 4], 5
mov dword [ebp - 0x74], 0x890ba5fc
mov dword [ebp - 0xb0], 0x7cc73ee4
mov dword [ebp - 0x34], 0
jmp 0x10018675
mov eax, dword [ebp - 0x34]
inc eax
mov dword [ebp - 0x34], eax
cmp dword [ebp - 0x34], 4
jge 0x1001868e
push dword [ebp - 0x34]
lea ecx, [ebp - 0x110]
call fcn.10018f28
and dword [eax], 0
jmp 0x1001866e
mov dword [ebp - 0x10], 7
jmp 0x1001869e
mov eax, dword [ebp - 0x10]
dec eax
mov dword [ebp - 0x10], eax
cmp dword [ebp - 0x10], 0xffffffea
jne 0x100188a2
mov dword [ebp - 0x58], 0xfffffffe
mov dword [ebp - 0x54], 0xe6768459
mov dword [ebp - 0x5c], 1
cmp dword [ebp - 0x54], 0
je 0x100186d2
cmp dword [ebp - 0x10], 0
je 0x100186d2
mov dword [ebp - 0x70], 1
jmp 0x100186d6
and dword [ebp - 0x70], 0
mov eax, 0xe6fc2e60
sub eax, dword [ebp - 0x70]
cmp eax, 0x200279e5
jge 0x100186f1
mov dword [ebp - 0x88], 1
jmp 0x100186f8
and dword [ebp - 0x88], 0
mov eax, dword [ebp - 0x60]
dec eax
mov dword [ebp - 0x60], eax
mov eax, dword [ebp - 0x88]
mov dword [ebp - 0x38], eax
mov eax, dword [ebp - 0x38]
mov dword [ebp - 0x54], eax
mov eax, dword [ebp - 0x60]
imul eax, dword [ebp - 0x54]
cmp eax, dword [ebp - 0x5c]
jg 0x10018723
mov dword [ebp - 0x78], 1
jmp 0x10018727
and dword [ebp - 0x78], 0
mov eax, dword [ebp - 0x10]
cmp dword [ebp - 0x78], eax
jne 0x10018744
cmp dword [ebp - 0x10], 0
jne 0x10018744
cmp dword [ebp - 0x38], 0
jne 0x10018744
and dword [ebp - 0x98], 0
jmp 0x1001874e
mov dword [ebp - 0x98], 1
mov eax, dword [ebp - 0x98]
sub eax, dword [ebp - 0x5c]
cmp eax, 0xfffc
je 0x1001876a
mov dword [ebp - 0xa8], 1
jmp 0x10018771
and dword [ebp - 0xa8], 0
mov eax, dword [ebp - 0x5c]
mov dword [ebp - 0x120], eax
mov eax, dword [ebp - 0x10]
cmp dword [ebp - 0x38], eax
jne 0x1001878b
mov dword [ebp - 0x50], 1
jmp 0x1001878f
and dword [ebp - 0x50], 0
push 1
lea ecx, [ebp - 0x110]
call fcn.10018f28
mov ecx, dword [ebp - 0x50]
mov dword [eax], ecx
cmp dword [ebp - 0x50], 0xfffffff6
jne 0x100187b0
mov dword [ebp - 0x80], 1
jmp 0x100187b4
and dword [ebp - 0x80], 0
cmp dword [ebp - 0x80], 0xb6bc3ec3
je 0x100187c9
mov dword [ebp - 0xc4], 1
jmp 0x100187d0
and dword [ebp - 0xc4], 0
mov eax, dword [ebp - 0x10]
mov dword [ebp - 0x128], eax
mov eax, dword [ebp - 0x74]
mov dword [ebp - 0x130], eax
or eax, 0xffffffff
cmp eax, 0x6d99
jg 0x100187f5
mov dword [ebp - 0x68], 1
jmp 0x100187f9
and dword [ebp - 0x68], 0
mov eax, dword [ebp - 0x58]
mov dword [ebp - 0xcc], eax
mov eax, dword [ebp - 0x68]
mov dword [ebp - 0xac], eax
mov eax, dword [ebp - 0x58]
inc eax
mov dword [ebp - 0x58], eax
mov eax, dword [ebp - 0xcc]
cmp eax, dword [ebp - 0xac]
jge 0x10018829
mov dword [ebp - 0x6c], 1
jmp 0x1001882d
and dword [ebp - 0x6c], 0
mov eax, dword [ebp - 0x10]
cmp dword [ebp - 0x6c], eax
je 0x1001883e
mov dword [ebp - 0x7c], 1
jmp 0x10018842
and dword [ebp - 0x7c], 0
mov eax, dword [ebp - 0x74]
cmp dword [ebp - 0x7c], eax
jge 0x10018856
mov dword [ebp - 0x84], 1
jmp 0x1001885d
and dword [ebp - 0x84], 0
mov eax, dword [ebp - 0x10]
cmp dword [ebp - 0x84], eax
jge 0x10018874
mov dword [ebp - 0x8c], 1
jmp 0x1001887b
and dword [ebp - 0x8c], 0
mov eax, dword [ebp - 0x8c]
add eax, 0xfffb
mov dword [ebp - 0xb0], eax
mov byte [ebp - 0x1a], 0
lea eax, [ebp - 0x1a]
push eax
push 1
call fcn.10017d96
pop ecx
pop ecx
jmp 0x10018697
mov byte [ebp - 4], 4
lea ecx, [ebp - 0x110]
call fcn.10018f0c
mov ecx, dword [ebp + 0xc]
call fcn.10014e03
mov dword [ebp - 0xb8], eax
mov dword [ebp - 0x138], 0
push 1
call fcn.10017df1
pop ecx
mov byte [ebp - 0x15], 0
movzx eax, byte [ebp - 0x15]
test eax, eax
je 0x100188e3
call dword [sym.imp.KERNEL32.dll_GetSystemDefaultUILanguage]
lea eax, [ebp - 0x1bc]
push eax
lea eax, [ebp - 0xb8]
push eax
push 0x55b
lea eax, [ebp - 0x1b0]
push eax
push 1
lea eax, [ebp - 0x40]
push eax
push 0x1f37
call fcn.10017e32
add esp, 0x1c
cmp dword [ebp - 0x40], 6
jae 0x10018935
push 0x5917
lea eax, [ebp - 0x1b0]
push eax
lea eax, [ebp + 0xc]
push eax
push 0x1067fcdc
push 1
call fcn.10017ef0
add esp, 0x14
mov dword [ebp - 0xf8], 0x96dd1e1e
mov dword [ebp - 0xf4], 0x96dd1e1e
mov dword [ebp - 0xf0], 0x96dd1e1e
mov dword [ebp - 0xec], 0x96dd1e1e
lea ecx, [ebp - 0x49]
call fcn.1000a6f3
push eax
lea eax, [ebp - 0xe8]
push eax
lea eax, [ebp - 0xf8]
push eax
lea ecx, [ebp - 0x1d0]
call fcn.10018f37
push dword [eax + 4]
push dword [eax]
lea ecx, [ebp - 0xa4]
call fcn.10018ee6
mov byte [ebp - 4], 6
mov dword [ebp - 0x28], 0
mov dword [ebp - 0x30], 0
jmp 0x100189aa
mov eax, dword [ebp - 0x30]
inc eax
mov dword [ebp - 0x30], eax
cmp dword [ebp - 0x30], 1
jge 0x100189c0
mov eax, dword [ebp - 0x30]
mov dword [ebp + eax*4 - 0xc0], 1
jmp 0x100189a3
push 2
lea ecx, [ebp - 0xa4]
call fcn.10018f28
and dword [eax], 0
jmp 0x100189f6
push 2
lea ecx, [ebp - 0xa4]
call fcn.10018f28
mov dword [ebp - 0x94], eax
mov eax, dword [ebp - 0x94]
mov eax, dword [eax]
dec eax
mov ecx, dword [ebp - 0x94]
mov dword [ecx], eax
push 2
lea ecx, [ebp - 0xa4]
call fcn.10018f28
cmp dword [eax], 0
jl 0x10018a39
push 2
lea ecx, [ebp - 0xa4]
call fcn.10018f28
mov eax, dword [eax]
cmp dword [ebp + eax*4 - 0xc0], 0
je 0x10018a23
jmp 0x10018a39
mov byte [ebp - 0x1b], 0
movzx eax, byte [ebp - 0x1b]
test eax, eax
je 0x10018a37
push 0
call dword [sym.imp.USER32.dll_CreateIconIndirect]
jmp 0x100189d2
mov dword [ebp - 0x28], 0xffffffe9
jmp 0x10018a49
mov eax, dword [ebp - 0x28]
dec eax
mov dword [ebp - 0x28], eax
cmp dword [ebp - 0x28], 0xffffffe6
jl 0x10018a8d
push 0x7cfc
push 0x122f
lea eax, [ebp - 0xa4]
push eax
push 0x37b6
push 1
call fcn.10017f69
add esp, 0x14
lea eax, [ebp - 0x28]
push eax
lea eax, [ebp - 0xa4]
push eax
push 1
push 0x866
push 0x36
call fcn.10018038
add esp, 0x14
jmp 0x10018a42
mov byte [ebp - 4], 4
lea ecx, [ebp - 0xa4]
call fcn.10018f0c
lea eax, [ebp - 0x1b0]
push eax
mov ecx, dword [ebp + 8]
call fcn.10018c7a
mov eax, dword [ebp - 0x2c]
or eax, 1
mov dword [ebp - 0x2c], eax
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x1b0]
call fcn.10018cc4
mov eax, dword [ebp + 8]
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop edi
pop esi
mov esp, ebp
pop ebp
ret