Function at 0x1001dfd5
Capabilities:
Get geographical location

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x1006b3d5
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x21c
push esi
movzx eax, byte [ebp + 0x20]
test eax, eax
je 0x1001eb69
lea eax, [ebp + 0xc]
mov dword [ebp - 0x168], eax
lea eax, [ebp + 0x18]
mov dword [ebp - 0x120], eax
mov eax, dword [ebp + 0x14]
mov dword [ebp - 0x134], eax
mov eax, dword [ebp + 0x1c]
mov dword [ebp - 0x154], eax
mov eax, dword [ebp - 0x120]
movzx eax, byte [eax]
test eax, eax
je 0x1001eb57
mov eax, dword [ebp - 0x154]
mov dword [ebp - 0x110], eax
mov eax, dword [ebp - 0x168]
mov dword [ebp - 0x138], eax
mov eax, dword [ebp - 0x134]
mov dword [ebp - 0x34], eax
mov dword [ebp - 0x1b0], 0xfffffff7
mov dword [ebp - 0x1ac], 0xfffffff7
mov dword [ebp - 0x1a8], 0xfffffff7
mov dword [ebp - 0x1a4], 0xfffffff7
lea ecx, [ebp - 0x59]
call fcn.1000e7d2
push eax
lea eax, [ebp - 0x1a0]
push eax
lea eax, [ebp - 0x1b0]
push eax
lea ecx, [ebp - 0x228]
call fcn.10032a42
push dword [eax + 4]
push dword [eax]
lea ecx, [ebp - 0x178]
call fcn.100329ab
and dword [ebp - 4], 0
mov dword [ebp - 0x14], 0xfffffffe
mov dword [ebp - 0x14c], 0xe458c458
mov dword [ebp - 0x14], 3
jmp 0x1001e0d5
mov eax, dword [ebp - 0x14]
dec eax
mov dword [ebp - 0x14], eax
cmp dword [ebp - 0x14], 0
jl 0x1001e24b
mov dword [ebp - 0xdc], 0xfffffffe
mov dword [ebp - 0x108], 0xd0a3
push dword [ebp - 0x14]
lea ecx, [ebp - 0x178]
call fcn.1000e00f
cmp dword [eax], 0
je 0x1001e1eb
mov dword [ebp - 0x188], 0xa9d69236
mov dword [ebp - 0x184], 0xa9d69236
mov dword [ebp - 0x180], 0xa9d69236
mov dword [ebp - 0x17c], 0xa9d69236
push 4
pop eax
shl eax, 0
cmp dword [ebp + eax - 0x188], 0xffffffff
jae 0x1001e14e
mov dword [ebp - 0xd0], 1
jmp 0x1001e155
and dword [ebp - 0xd0], 0
cmp dword [ebp - 0xd0], 0
jne 0x1001e16a
mov dword [ebp - 0xe8], 1
jmp 0x1001e171
and dword [ebp - 0xe8], 0
push 4
pop eax
imul eax, eax, 0
mov esi, dword [ebp + eax - 0x188]
push dword [ebp - 0x14]
lea ecx, [ebp - 0x178]
call fcn.1000e00f
mov dword [eax], esi
mov eax, 0xad9d
cmp eax, 9
jb 0x1001e1b7
push dword [ebp - 0x14]
lea ecx, [ebp - 0x178]
call fcn.1000e00f
cmp dword [eax], 0
je 0x1001e1b7
mov dword [ebp - 0x84], 1
jmp 0x1001e1be
and dword [ebp - 0x84], 0
mov eax, dword [ebp - 0x84]
sub eax, 8
cmp dword [ebp - 0xe8], eax
jle 0x1001e1d8
mov dword [ebp - 0x80], 1
jmp 0x1001e1dc
and dword [ebp - 0x80], 0
mov eax, dword [ebp - 0x14]
imul eax, dword [ebp - 0x80]
mov dword [ebp - 0xdc], eax
jmp 0x1001e221
mov dword [ebp - 0x13c], 0xe637c5b1
push 1
lea eax, [ebp - 0x13c]
push eax
push 0
push 1
push 0x3d2
lea eax, [ebp - 0xdc]
push eax
call fcn.1002064e
add esp, 0x18
cmp dword [ebp - 0x14], 0
je 0x1001e221
jmp 0x1001e0ce
lea eax, [ebp - 0x108]
push eax
push 1
lea eax, [ebp - 0x14c]
push eax
lea eax, [ebp - 0x14]
push eax
lea eax, [ebp - 0x178]
push eax
push 1
call fcn.1001bf3e
add esp, 0x18
jmp 0x1001e0ce
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x178]
call fcn.1000e00a
mov eax, dword [ebp - 0x34]
mov eax, dword [eax]
mov ecx, dword [ebp - 0x110]
add ecx, dword [eax]
mov dword [ebp - 0x130], ecx
mov dword [ebp - 0x19c], 1
mov dword [ebp - 0x198], 1
mov dword [ebp - 0x194], 1
mov dword [ebp - 0x190], 1
lea ecx, [ebp - 0x4d]
call fcn.1000e7d2
push eax
lea eax, [ebp - 0x18c]
push eax
lea eax, [ebp - 0x19c]
push eax
lea ecx, [ebp - 0x220]
call fcn.10032a42
push dword [eax + 4]
push dword [eax]
lea ecx, [ebp - 0x1e0]
call fcn.100329ab
mov dword [ebp - 4], 1
mov dword [ebp - 0x30], 0x29000d4e
mov dword [ebp - 0x30], 0
jmp 0x1001e2e5
mov eax, dword [ebp - 0x30]
inc eax
mov dword [ebp - 0x30], eax
cmp dword [ebp - 0x30], 3
jg 0x1001e33c
mov dword [ebp - 0x20], 0x76d7be7e
mov dword [ebp - 0x20], 0
jmp 0x1001e302
mov eax, dword [ebp - 0x20]
inc eax
mov dword [ebp - 0x20], eax
cmp dword [ebp - 0x20], 3
jg 0x1001e33a
mov byte [ebp - 0x15], 0
push 1
push 1
lea eax, [ebp - 0x15]
push eax
push 0
push 0x4a01
call fcn.100248ee
add esp, 0x14
push dword [ebp - 0x20]
lea ecx, [ebp - 0x1e0]
call fcn.1000e00f
cmp dword [eax], 0
je 0x1001e338
jmp 0x1001e2fb
jmp 0x1001e2fb
jmp 0x1001e2de
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x1e0]
call fcn.1000e00a
mov eax, dword [ebp - 0x34]
mov eax, dword [eax]
add eax, 8
mov dword [ebp - 0x4c], eax
and dword [ebp - 0x58], 0
jmp 0x1001e36b
mov eax, dword [ebp - 0x58]
inc eax
mov dword [ebp - 0x58], eax
mov eax, dword [ebp - 0x4c]
inc eax
inc eax
mov dword [ebp - 0x4c], eax
mov eax, dword [ebp - 0x34]
mov eax, dword [eax]
mov eax, dword [eax + 4]
sub eax, 8
shr eax, 1
cmp dword [ebp - 0x58], eax
jae 0x1001eb3e
mov dword [ebp - 0x28], 0xb74c38b6
mov dword [ebp - 0x60], 1
push 2
lea ecx, [ebp - 0xf4]
call fcn.1000dfce
mov dword [ebp - 4], 2
mov dword [ebp - 0x64], 0xc9b6cd04
mov dword [ebp - 0x118], 0
mov dword [ebp - 0x40], 0
jmp 0x1001e3c4
mov eax, dword [ebp - 0x40]
inc eax
mov dword [ebp - 0x40], eax
cmp dword [ebp - 0x40], 2
jge 0x1001e3e0
push dword [ebp - 0x40]
lea ecx, [ebp - 0xf4]
call fcn.1000e00f
mov dword [eax], 0x4cbed562
jmp 0x1001e3bd
mov dword [ebp - 0x60], 1
mov eax, dword [ebp - 0x60]
add eax, dword [ebp - 0x28]
cmp eax, 4
jbe 0x1001e3fe
mov dword [ebp - 0x8c], 1
jmp 0x1001e405
and dword [ebp - 0x8c], 0
mov eax, dword [ebp - 0x8c]
sub eax, dword [ebp - 0x28]
mov dword [ebp - 0xbc], eax
push 1
lea ecx, [ebp - 0xf4]
call fcn.1000e00f
mov ecx, dword [ebp - 0xbc]
mov dword [eax], ecx
mov eax, dword [ebp - 0xbc]
sub eax, dword [ebp - 0x28]
cmp eax, dword [ebp - 0x28]
jne 0x1001e443
mov dword [ebp - 0x94], 1
jmp 0x1001e44a
and dword [ebp - 0x94], 0
mov eax, dword [ebp - 0x28]
cmp eax, dword [ebp - 0x94]
je 0x1001e461
mov dword [ebp - 0xd4], 1
jmp 0x1001e468
and dword [ebp - 0xd4], 0
cmp dword [ebp - 0xd4], 0xffffffff
jge 0x1001e47d
mov dword [ebp - 0x9c], 1
jmp 0x1001e484
and dword [ebp - 0x9c], 0
imul eax, dword [ebp - 0x9c], 0xabe8
test eax, eax
jne 0x1001e4a1
cmp dword [ebp - 0x64], 0
jne 0x1001e4a1
and dword [ebp - 0xc4], 0
jmp 0x1001e4ab
mov dword [ebp - 0xc4], 1
mov eax, dword [ebp - 0xc4]
neg eax
cmp eax, 1
jge 0x1001e4c4
mov dword [ebp - 0xa4], 1
jmp 0x1001e4cb
and dword [ebp - 0xa4], 0
cmp dword [ebp - 0xa4], 0
jne 0x1001e4e6
mov eax, 0x21aa291
test eax, eax
jne 0x1001e4e6
and dword [ebp - 0xe4], 0
jmp 0x1001e4f0
mov dword [ebp - 0xe4], 1
mov eax, dword [ebp - 0x64]
imul eax, dword [ebp - 0xe4]
test eax, eax
je 0x1001e50b
push 0
call fcn.100200cc
pop ecx
jmp 0x1001e672
mov dword [ebp - 0x3c], 5
mov dword [ebp - 0x38], 0
jmp 0x1001e522
mov eax, dword [ebp - 0x38]
inc eax
mov dword [ebp - 0x38], eax
cmp dword [ebp - 0x38], 3
jge 0x1001e538
mov eax, dword [ebp - 0x38]
mov dword [ebp + eax*4 - 0x218], 0xeea3821c
jmp 0x1001e51b
xor eax, eax
inc eax
je 0x1001e65f
mov eax, dword [ebp - 0x64]
mov dword [ebp - 0x54], eax
push 1
lea ecx, [ebp - 0xf4]
call fcn.1000e00f
mov ecx, dword [ebp - 0x54]
mov dword [eax], ecx
push 4
pop eax
shl eax, 1
mov ecx, dword [ebp - 0x54]
mov dword [ebp + eax - 0x218], ecx
cmp dword [ebp - 0x54], 0
jne 0x1001e5c1
mov esi, dword [ebp - 0x3c]
push 0
lea ecx, [ebp - 0xf4]
call fcn.1000e00f
cmp esi, dword [eax]
jne 0x1001e58e
mov dword [ebp - 0x148], 1
jmp 0x1001e595
and dword [ebp - 0x148], 0
push 1
lea ecx, [ebp - 0xf4]
call fcn.1000e00f
push 1
lea ecx, [ebp - 0xf4]
call fcn.1000e00f
mov ecx, 0xfd29cc02
sub ecx, dword [eax]
jne 0x1001e5c1
and dword [ebp - 0xac], 0
jmp 0x1001e5cb
mov dword [ebp - 0xac], 1
mov eax, dword [ebp - 0x3c]
cmp dword [ebp - 0xac], eax
jne 0x1001e5e2
mov dword [ebp - 0xcc], 1
jmp 0x1001e5e9
and dword [ebp - 0xcc], 0
cmp dword [ebp - 0xcc], 0
jne 0x1001e604
mov eax, 0xbeba424a
test eax, eax
jne 0x1001e604
and dword [ebp - 0xb4], 0
jmp 0x1001e60e
mov dword [ebp - 0xb4], 1
mov eax, dword [ebp - 0xb4]
sub eax, dword [ebp - 0x60]
cmp dword [ebp - 0x3c], eax
jge 0x1001e625
mov dword [ebp - 0x7c], 1
jmp 0x1001e629
and dword [ebp - 0x7c], 0
cmp dword [ebp - 0x7c], 0
jne 0x1001e63e
cmp dword [ebp - 0x3c], 0
jne 0x1001e63e
and dword [ebp - 0x88], 0
jmp 0x1001e648
mov dword [ebp - 0x88], 1
imul eax, dword [ebp - 0x88], 3
test eax, eax
je 0x1001e65f
mov dword [ebp - 0x90], 1
jmp 0x1001e666
and dword [ebp - 0x90], 0
mov eax, dword [ebp - 0x90]
mov dword [ebp - 0x118], eax
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0xf4]
call fcn.1000e00a
mov dword [ebp - 0x1d0], 0xfffffff6
mov byte [ebp - 0x17], 0
movzx eax, byte [ebp - 0x17]
test eax, eax
je 0x1001e69d
call dword [sym.imp.USER32.dll_CreateMenu]
mov byte [ebp - 0x16], 0
movzx eax, byte [ebp - 0x16]
test eax, eax
je 0x1001e6dd
push 0xca1
push 0x7fc9
push 0x6a41
push 0x37a2
push 0x9dc
push 1
push 1
push 0x40b2
push 0x2be6
push 0x388c
call fcn.1001c1aa
add esp, 0x28
push 1
lea eax, [ebp - 0x4c]
push eax
push 0x31e3
push 1
push 0x4b3c
lea eax, [ebp - 0x128]
push eax
push 1
call fcn.1001c30f
add esp, 0x1c
push 3
lea ecx, [ebp - 0x164]
call fcn.1000dfce
mov dword [ebp - 4], 3
mov dword [ebp - 0x10], 0xffffffff
mov dword [ebp - 0x1cc], 0xffffffff
mov dword [ebp - 0x1c8], 0xffffffff
mov dword [ebp - 0x1c4], 0xffffffff
mov dword [ebp - 0x1c0], 0xffffffff
mov dword [ebp - 0x158], 1
push 1
lea ecx, [ebp - 0x1bc]
call fcn.1000dfce
mov byte [ebp - 4], 4
mov dword [ebp - 0x24], 0
jmp 0x1001e76e
mov eax, dword [ebp - 0x24]
inc eax
mov dword [ebp - 0x24], eax
cmp dword [ebp - 0x24], 3
jge 0x1001e787
push dword [ebp - 0x24]
lea ecx, [ebp - 0x164]
call fcn.1000e00f
and dword [eax], 0
jmp 0x1001e767
lea eax, [ebp - 0x1bc]
push eax
push 0x62ed
push 0
push 0x64d5
lea eax, [ebp - 0x24]
push eax
push 0x6397
push 1
call fcn.100242da
add esp, 0x1c
mov dword [ebp - 0x10], 0
jmp 0x1001e7bd
mov eax, dword [ebp - 0x10]
inc eax
mov dword [ebp - 0x10], eax
cmp dword [ebp - 0x10], 2
jg 0x1001e7d6
mov byte [ebp - 0x19], 0
push 0
lea eax, [ebp - 0x19]
push eax
call fcn.10024a17
pop ecx
pop ecx
jmp 0x1001e7b6
mov dword [ebp - 0x10], 2
jmp 0x1001e7e6
mov eax, dword [ebp - 0x10]
dec eax
mov dword [ebp - 0x10], eax
cmp dword [ebp - 0x10], 0
jl 0x1001e9cb
mov dword [ebp - 0x68], 0x9c77509c
mov dword [ebp - 0x1e4], 0
mov dword [ebp - 0x1f4], 0x466ac3a6
mov dword [ebp - 0x1f8], 6
mov dword [ebp - 0x1fc], 0xdaa08bbd
mov dword [ebp - 0x1d4], 0x5300ce3d
mov dword [ebp - 0x204], 0xffffffff
push 3
lea ecx, [ebp - 0x1f0]
call fcn.1000dfce
mov byte [ebp - 4], 5
mov dword [ebp - 0x20c], 0x5e320525
mov dword [ebp - 0x44], 0
jmp 0x1001e85e
mov eax, dword [ebp - 0x44]
inc eax
mov dword [ebp - 0x44], eax
cmp dword [ebp - 0x44], 3
jge 0x1001e87a
push dword [ebp - 0x44]
lea ecx, [ebp - 0x1f0]
call fcn.1000e00f
mov dword [eax], 0xa6c2e3a4
jmp 0x1001e857
push 4
pop eax
imul eax, eax, 0
mov dword [ebp + eax - 0x1cc], 0xfffc
cmp dword [ebp - 0x10], 0xfffc
jl 0x1001e8a0
mov dword [ebp - 0x98], 1
jmp 0x1001e8a7
and dword [ebp - 0x98], 0
mov eax, dword [ebp - 0x10]
mov dword [ebp - 0x208], eax
mov eax, dword [ebp - 0x68]
cmp dword [ebp - 0x98], eax
jl 0x1001e8c7
mov dword [ebp - 0xa8], 1
jmp 0x1001e8ce
and dword [ebp - 0xa8], 0
push dword [ebp - 0x10]
lea ecx, [ebp - 0x164]
call fcn.1000e00f
mov dword [ebp - 0xa0], eax
push dword [ebp - 0x10]
lea ecx, [ebp - 0x164]
call fcn.1000e00f
mov ecx, dword [ebp - 0xa0]
mov eax, dword [eax]
mov dword [ecx], eax
mov eax, dword [ebp - 0xa0]
mov eax, dword [eax]
cmp eax, dword [ebp - 0xa8]
jg 0x1001e916
mov dword [ebp - 0xb0], 1
jmp 0x1001e91d
and dword [ebp - 0xb0], 0
mov eax, dword [ebp - 0x68]
add eax, dword [ebp - 0xb0]
jne 0x1001e944
push dword [ebp - 0x10]
lea ecx, [ebp - 0x164]
call fcn.1000e00f
cmp dword [eax], 0
jne 0x1001e944
and dword [ebp - 0xb8], 0
jmp 0x1001e94e
mov dword [ebp - 0xb8], 1
cmp dword [ebp - 0xb8], 0xbe856dfc
je 0x1001e966
mov dword [ebp - 0xc0], 1
jmp 0x1001e96d
and dword [ebp - 0xc0], 0
mov eax, dword [ebp - 0xc0]
sub eax, dword [ebp - 0x10]
inc eax
inc eax
cmp eax, dword [ebp - 0x68]
je 0x1001e989
mov dword [ebp - 0xc8], 1
jmp 0x1001e990
and dword [ebp - 0xc8], 0
mov eax, dword [ebp - 0xc8]
mov dword [ebp - 0x158], eax
push 0
lea ecx, [ebp - 0x1bc]
call fcn.1000e00f
mov dword [ebp - 0x78], eax
mov eax, dword [ebp - 0x78]
mov eax, dword [eax]
inc eax
mov ecx, dword [ebp - 0x78]
mov dword [ecx], eax
mov byte [ebp - 4], 4
lea ecx, [ebp - 0x1f0]
call fcn.1000e00a
jmp 0x1001e7df
mov byte [ebp - 4], 3
lea ecx, [ebp - 0x1bc]
call fcn.1000e00a
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x164]
call fcn.1000e00a
mov dword [ebp - 0xf8], 0x1b3d
cmp dword [ebp - 0xf8], 0xd58
jge 0x1001eae5
lea eax, [ebp - 0x150]
push eax
push 0x100089d4
call fcn.10050e4b
pop ecx
pop ecx
mov dword [ebp - 0x200], 3
and dword [ebp - 0x74], 0
xor eax, eax
mov dword [ebp - 0x70], eax
mov dword [ebp - 0x6c], eax
and dword [ebp - 0xd8], 0
and dword [ebp - 0x2c], 0
jmp 0x1001ea40
mov eax, dword [ebp - 0x2c]
inc eax
mov dword [ebp - 0x2c], eax
mov eax, dword [ebp - 0x2c]
cmp eax, dword [ebp - 0x150]
jge 0x1001ea80
lea eax, [ebp - 0xd8]
push eax
push 0x100089d4
call fcn.10050e4b
pop ecx
pop ecx
mov eax, dword [ebp - 0x2c]
cdq
push 3
pop ecx
idiv ecx
mov ecx, dword [ebp + edx*4 - 0x74]
add ecx, dword [ebp - 0xd8]
mov eax, dword [ebp - 0x2c]
cdq
push 3
pop esi
idiv esi
mov dword [ebp + edx*4 - 0x74], ecx
jmp 0x1001ea39
push 4
pop eax
imul eax, eax, 0
push 4
pop ecx
shl ecx, 0
mov eax, dword [ebp + eax - 0x74]
cmp eax, dword [ebp + ecx - 0x74]
jle 0x1001eab8
push 4
pop eax
imul eax, eax, 0
push 4
pop ecx
shl ecx, 1
mov eax, dword [ebp + eax - 0x74]
cmp eax, dword [ebp + ecx - 0x74]
jle 0x1001eab8
push 0x10008ee8
call fcn.10051040
pop ecx
jmp 0x1001eae5
push 4
pop eax
shl eax, 0
push 4
pop ecx
shl ecx, 1
mov eax, dword [ebp + eax - 0x74]
cmp eax, dword [ebp + ecx - 0x74]
jle 0x1001eada
push 0x10008ef0
call fcn.10051040
pop ecx
jmp 0x1001eae5
push 0x10008ef8
call fcn.10051040
pop ecx
mov eax, dword [ebp - 0x4c]
movzx eax, word [eax]
and eax, 0xfff
mov dword [ebp - 0x140], eax
mov eax, dword [ebp - 0x128]
mov dword [ebp - 0x16c], eax
cmp dword [ebp - 0x16c], 3
je 0x1001eb0f
jmp 0x1001eb39
mov eax, dword [ebp - 0x130]
add eax, dword [ebp - 0x140]
mov dword [ebp - 0xe0], eax
mov eax, dword [ebp - 0xe0]
mov eax, dword [eax]
mov ecx, dword [ebp - 0x138]
add eax, dword [ecx]
mov ecx, dword [ebp - 0xe0]
mov dword [ecx], eax
jmp 0x1001e35c
push 1
lea eax, [ebp - 0x34]
push eax
push 1
push 0x5fd5
push 1
call fcn.1001ca33
add esp, 0x14
jmp 0x1001eb64
push 0
push 0x2c6
call dword [sym.imp.GDI32.dll_GetClipBox]
jmp 0x1001ec2e
mov eax, dword [ebp + 8]
mov dword [ebp - 0x100], eax
lea eax, [ebp + 0x10]
mov dword [ebp - 0x144], eax
mov eax, dword [ebp + 0x24]
mov dword [ebp - 0x104], eax
mov eax, dword [ebp + 0x28]
mov dword [ebp - 0x12c], eax
mov eax, dword [ebp - 0x144]
movzx eax, byte [eax]
test eax, eax
je 0x1001ebdc
mov eax, dword [ebp - 0x100]
mov dword [ebp - 0x10c], eax
mov eax, dword [ebp - 0x104]
mov dword [ebp - 0x114], eax
mov eax, dword [ebp - 0x10c]
mov dword [ebp - 0x11c], eax
mov eax, dword [ebp - 0x114]
mov dword [ebp - 0x124], eax
mov eax, dword [ebp - 0x11c]
mov ecx, dword [ebp - 0x124]
mov ecx, dword [ecx]
mov dword [eax], ecx
jmp 0x1001ec2e
mov eax, dword [ebp - 0x12c]
mov dword [ebp - 0xfc], eax
mov eax, dword [ebp - 0xfc]
mov dword [ebp - 0x48], eax
mov eax, dword [ebp - 0x48]
mov dword [eax], 0
jmp 0x1001ec07
mov eax, dword [ebp - 0x48]
mov eax, dword [eax]
dec eax
mov ecx, dword [ebp - 0x48]
mov dword [ecx], eax
mov eax, dword [ebp - 0x48]
cmp dword [eax], 0xfffffffc
jne 0x1001ec2e
mov byte [ebp - 0x18], 0
movzx eax, byte [ebp - 0x18]
test eax, eax
je 0x1001ec2c
push 0x1741
push 0
push 0
push 0
call dword [sym.imp.KERNEL32.dll_GetLocaleInfoW]
jmp 0x1001ebfc
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop esi
mov esp, ebp
pop ebp
ret