Function at 0x100307ca
Capabilities:
Get geographical location

Disassembly:
push 0x204
mov eax, 0x1004951c
call fcn.1003784d
xor ecx, ecx
or esi, 0xffffffff
mov dword [ebp - 0xec], esi
inc ecx
mov dword [ebp - 0x100], ecx
xor ebx, ebx
mov dword [ebp - 0xf4], 0x5411
mov dword [ebp - 0xf8], ebx
jmp 0x1003080f
mov eax, dword [ebp - 0xf8]
mov dword [ebp + eax*4 - 0x64], ecx
inc dword [ebp - 0xf8]
cmp dword [ebp - 0xf8], 3
jl 0x100307ff
mov dword [ebp - 0xec], ebx
jmp 0x100309cc
mov dword [ebp - 0xf0], 0x256a9ef7
mov dword [ebp - 0x104], 3
mov dword [ebp - 0xf8], ebx
jmp 0x10030856
mov eax, dword [ebp - 0xf8]
mov dword [ebp + eax*4 - 0xa4], 0xfffd
inc dword [ebp - 0xf8]
cmp dword [ebp - 0xf8], 4
jl 0x1003083f
mov dword [ebp - 0xf0], 2
cmp dword [ebp - 0xf0], ebx
jl 0x100309c6
mov dword [ebp - 0xf8], 0x6b2c4eb0
mov eax, dword [ebp - 0xec]
cmp dword [ebp + eax*4 - 0x64], esi
jl 0x10030891
mov eax, dword [ebp - 0xec]
mov eax, dword [ebp - 0x100]
mov eax, dword [ebp - 0xf0]
cmp dword [ebp - 0xf4], ecx
jle 0x1003094b
push 3
lea ecx, [ebp - 0x16c]
call fcn.10001a29
mov dword [ebp - 0xf8], ebx
jmp 0x100308d3
mov ecx, dword [ebp - 0xf8]
mov eax, dword [ebp - 0x16c]
mov dword [eax + ecx*4], ebx
inc dword [ebp - 0xf8]
cmp dword [ebp - 0xf8], 3
jl 0x100308be
mov byte [ebp - 0xe5], bl
cmp byte [ebp - 0xe5], bl
je 0x100308f1
push ebx
call dword [sym.imp.USER32.dll_DrawMenuBar]
mov eax, dword [ebp - 0x16c]
xor ecx, ecx
cmp dword [eax + 4], ebx
mov eax, dword [ebp - 0xec]
setl cl
xor edx, edx
mov eax, dword [ebp + eax*4 - 0x64]
cmp ecx, eax
mov eax, dword [ebp - 0xec]
setg dl
xor ecx, ecx
mov eax, dword [ebp + eax*4 - 0x64]
cmp eax, edx
setl cl
xor edx, edx
imul ecx, dword [ebp - 0xf4]
mov eax, dword [ebp - 0xa0]
imul ecx, ecx, 7
cmp eax, ecx
lea ecx, [ebp - 0x16c]
setge dl
mov dword [ebp - 0xf8], edx
call fcn.1000c4da
jmp 0x100309b7
mov dword [ebp - 0xfc], ecx
cmp dword [ebp - 0xf0], ebx
jne 0x10030975
cmp dword [ebp - 0x104], ebx
je 0x10030971
mov eax, dword [ebp - 0x104]
shl eax, 3
cmp eax, 0x6c55
jne 0x10030975
mov edx, ebx
jmp 0x10030977
mov edx, ecx
mov eax, dword [ebp - 0xfc]
xor ecx, ecx
cmp edx, eax
sete cl
imul ecx, dword [ebp - 0xec]
test ecx, ecx
je 0x10030995
mov eax, dword [ebp - 0xf4]
mov eax, dword [ebp - 0xa0]
xor ecx, ecx
mov eax, dword [ebp - 0xf8]
cmp ecx, eax
mov eax, dword [ebp - 0x5c]
sbb edx, edx
neg edx
cmp edx, eax
setle cl
mov dword [ebp - 0xfc], ecx
dec dword [ebp - 0xf0]
push 1
pop ecx
jns 0x10030875
inc dword [ebp - 0xec]
cmp dword [ebp - 0xec], 2
jle 0x10030823
cmp byte [0x100754e4], bl
jne 0x10030b5e
push 0x100754e0
push 0x1004b394
mov byte [0x100754e4], cl
call fcn.1002f8cc
pop ecx
pop ecx
push 3
lea ecx, [ebp - 0x178]
call fcn.10001a29
mov dword [ebp - 0xfc], 0xb74c38b6
lea ecx, [ebp - 0x154]
mov dword [ebp - 0x100], 0x4dbf0cf
xor eax, eax
mov dword [ebp - 0xec], 0x2f63069b
inc eax
mov dword [ebp - 0xfc], eax
mov dword [ebp - 0xfc], 0x94b748ab
mov dword [ebp - 0xf8], esi
mov dword [ebp - 0x104], ebx
mov dword [ebp - 0x104], eax
push 2
mov dword [ebp - 4], ebx
call fcn.10001a29
mov dword [ebp - 0xf4], 0xfffffffb
mov dword [ebp - 0xf0], ebx
jmp 0x10030a87
mov ecx, dword [ebp - 0xf0]
mov eax, dword [ebp - 0x178]
mov dword [eax + ecx*4], 2
inc dword [ebp - 0xf0]
cmp dword [ebp - 0xf0], 3
jl 0x10030a6e
mov dword [ebp - 0xf0], ebx
jmp 0x10030ab1
mov ecx, dword [ebp - 0xf0]
mov eax, dword [ebp - 0x154]
mov dword [eax + ecx*4], 1
inc dword [ebp - 0xf0]
cmp dword [ebp - 0xf0], 2
jl 0x10030a98
mov edi, dword [ebp - 0x178]
cmp dword [edi + 8], ebx
je 0x10030b1f
mov eax, dword [ebp - 0xfc]
xor edx, edx
mov esi, dword [ebp - 0x154]
cmp dword [esi + 4], eax
mov eax, dword [ebp - 0xf8]
setge dl
xor ecx, ecx
cmp eax, edx
setle cl
mov dword [esi + 4], ecx
inc dword [ebp - 0xf4]
or esi, 0xffffffff
mov eax, dword [ebp - 0xf4]
mov eax, dword [ebp - 0xfc]
mov eax, dword [edi + 8]
mov dword [ebp - 0xfc], eax
mov eax, dword [ebp - 0x104]
mov eax, dword [ebp - 0x100]
mov eax, dword [ebp - 0xfc]
mov eax, dword [ebp - 0xec]
mov eax, dword [ebp - 0x104]
lea ecx, [ebp - 0x154]
mov eax, dword [ebp - 0x154]
mov eax, dword [eax + 4]
mov dword [ebp - 0xf8], eax
call fcn.1000c4da
lea ecx, [ebp - 0x178]
mov dword [ebp - 4], esi
call fcn.1000c4da
push 0x100754d4
push 0x1004b3a4
call fcn.1002f8cc
pop ecx
pop ecx
mov dword [ebp - 0xf4], 5
lea ecx, [ebp - 0x204]
mov dword [ebp - 0x104], 0x96960f57
xor eax, eax
mov dword [ebp - 0xfc], ebx
inc eax
mov dword [ebp - 0x100], 0x2167fa5c
mov dword [ebp - 0x100], 0x4b666a75
mov dword [ebp - 0x100], 0xed9a924c
mov dword [ebp - 0xfc], esi
mov dword [ebp - 0x100], eax
push eax
call fcn.10001a29
xor eax, eax
mov dword [ebp - 0x100], 0x6c1dfe93
inc eax
mov dword [ebp - 0x100], 0x86335c0
push eax
lea ecx, [ebp - 0x184]
mov dword [ebp - 4], eax
call fcn.10001a29
xor edx, edx
inc edx
mov dword [ebp - 0x100], edx
mov dword [ebp - 0xf8], 0x4c2e
mov dword [ebp - 0xf0], ebx
jmp 0x10030c06
mov eax, dword [ebp - 0xf0]
mov dword [ebp + eax*4 - 0x58], 0x63ba20b9
inc dword [ebp - 0xf0]
cmp dword [ebp - 0xf0], 3
jl 0x10030bf2
mov dword [ebp - 0xf0], ebx
jmp 0x10030c30
mov ecx, dword [ebp - 0xf0]
mov eax, dword [ebp - 0x204]
mov dword [eax + ecx*4], 0xdf9c7750
inc dword [ebp - 0xf0]
cmp dword [ebp - 0xf0], edx
jl 0x10030c17
mov dword [ebp - 0xf0], ebx
jmp 0x10030c55
mov ecx, dword [ebp - 0xf0]
mov eax, dword [ebp - 0x184]
mov dword [eax + ecx*4], ebx
inc dword [ebp - 0xf0]
cmp dword [ebp - 0xf0], edx
jl 0x10030c40
mov dword [ebp - 0xf0], ebx
jmp 0x10030c7c
mov eax, dword [ebp - 0xf0]
mov dword [ebp + eax*4 - 0xc4], 0xfffffffe
inc dword [ebp - 0xf0]
cmp dword [ebp - 0xf0], 4
jl 0x10030c65
mov eax, dword [ebp - 0x184]
inc dword [eax]
cmp dword [ebp - 0x54], ebx
jne 0x10030c98
mov eax, dword [ebp - 0xfc]
mov eax, dword [ebp - 0x54]
mov eax, dword [ebp - 0x100]
mov eax, dword [ebp - 0x104]
mov eax, dword [ebp - 0xf4]
mov dword [ebp - 0xf4], 0xca92
mov eax, dword [ebp - 0xf4]
sub eax, dword [ebp - 0xfc]
jne 0x10030ccc
cmp dword [ebp - 0x54], ebx
jne 0x10030ccc
mov edx, ebx
mov eax, dword [ebp - 0x54]
xor ecx, ecx
mov eax, dword [ebp - 0x50]
mov eax, dword [ebp - 0xf4]
cmp edx, eax
setne cl
xor edx, edx
mov dword [ebp - 0xfc], ecx
mov eax, dword [ebp - 0xfc]
mov eax, dword [ebp - 0xf4]
mov ecx, dword [ebp - 0xf4]
mov eax, dword [ebp - 0xf8]
cmp ecx, eax
lea ecx, [ebp - 0x184]
setne dl
imul eax, edx, 0x5bcd
mov dword [ebp - 0x100], eax
call fcn.1000c4da
lea ecx, [ebp - 0x204]
mov dword [ebp - 4], esi
call fcn.1000c4da
push 3
pop eax
mov byte [ebp - 0x16], al
lea ecx, [ebp - 0x19c]
mov word [ebp - 0x18], 0x6600
mov dword [ebp - 0x15], 0x1040218
mov byte [ebp - 0x11], bl
mov dword [ebp - 0xf0], 0xa439beb0
mov dword [ebp - 0xec], esi
mov dword [ebp - 0xf8], eax
push eax
call fcn.10001a29
push 3
lea ecx, [ebp - 0x1e0]
mov dword [ebp - 4], 2
call fcn.10001a29
push 3
mov dword [ebp - 0x104], 0xf23d
mov dword [ebp - 0xec], ebx
pop edx
jmp 0x10030da3
mov ecx, dword [ebp - 0xec]
mov eax, dword [ebp - 0x19c]
mov dword [eax + ecx*4], 0xffff
inc dword [ebp - 0xec]
cmp dword [ebp - 0xec], edx
jl 0x10030d8a
mov dword [ebp - 0xec], ebx
jmp 0x10030dcc
mov ecx, dword [ebp - 0xec]
mov eax, dword [ebp - 0x1e0]
mov dword [eax + ecx*4], 1
inc dword [ebp - 0xec]
cmp dword [ebp - 0xec], edx
jl 0x10030db3
mov ecx, dword [ebp - 0xf0]
xor edx, edx
mov eax, dword [ebp - 0xf0]
cmp ecx, eax
setle dl
mov dword [ebp - 0xec], edx
xor edx, edx
mov ecx, dword [ebp - 0xf0]
mov eax, dword [ebp - 0xf0]
cmp ecx, eax
setg dl
xor eax, eax
cmp edx, 4
setne al
sub eax, dword [ebp - 0xec]
neg eax
sbb eax, eax
inc eax
imul eax, dword [ebp - 0xf0]
mov dword [ebp - 0xf8], eax
mov eax, dword [ebp - 0xf8]
mov eax, dword [ebp - 0xec]
mov eax, dword [ebp - 0xf0]
cmp eax, dword [ebp - 0xf0]
jge 0x10030e65
mov dword [ebp - 0xf0], ebx
jmp 0x10030e57
mov ecx, dword [ebp - 0xf0]
mov eax, dword [ebp - 0x19c]
mov dword [eax + ecx*4], ebx
inc dword [ebp - 0xf0]
cmp dword [ebp - 0xf0], 3
jl 0x10030e42
jmp 0x10030f6a
mov dword [ebp - 0x100], 9
mov dword [ebp - 0xf8], ebx
jmp 0x10030e8e
mov eax, dword [ebp - 0xf8]
mov dword [ebp + eax*4 - 0xd4], 0xc44d9964
inc dword [ebp - 0xf8]
cmp dword [ebp - 0xf8], 4
jl 0x10030e77
push 2
mov dword [ebp - 0xec], ebx
pop ecx
jmp 0x10030f5e
mov dword [ebp - 0xfc], 0xddae974c
mov dword [ebp - 0x100], 0xa4c5706b
mov dword [ebp - 0xf8], ebx
jmp 0x10030ed4
mov eax, dword [ebp - 0xf8]
mov dword [ebp + eax*4 - 0x128], esi
inc dword [ebp - 0xf8]
cmp dword [ebp - 0xf8], 1
jl 0x10030ec1
mov dword [ebp - 0xf8], ecx
cmp dword [ebp - 0xf8], ebx
jl 0x10030f0f
mov dword [ebp - 0xf0], ebx
jmp 0x10030eff
inc dword [ebp - 0xfc]
inc dword [ebp - 0xf0]
cmp dword [ebp - 0xf0], ecx
jle 0x10030ef3
dec dword [ebp - 0xf8]
jns 0x10030eeb
mov dword [ebp - 0xf0], ebx
jmp 0x10030f50
mov dword [ebp - 0x100], 0xfffffff6
mov dword [ebp - 0x100], 0xd3ed23c5
mov byte [ebp - 0xe5], bl
cmp byte [ebp - 0xe5], 0
je 0x10030f44
push ebx
call dword [sym.imp.USER32.dll_IsIconic]
push 2
pop ecx
inc dword [ebp - 0x104]
inc dword [ebp - 0xf0]
cmp dword [ebp - 0xf0], ecx
jle 0x10030f17
inc dword [ebp - 0xec]
cmp dword [ebp - 0xec], ecx
jle 0x10030ea5
lea ecx, [ebp - 0x1e0]
call fcn.1000c4da
lea ecx, [ebp - 0x19c]
mov dword [ebp - 4], esi
call fcn.1000c4da
push 0x68
pop eax
mov word [ebp - 0x34], ax
xor ecx, ecx
mov dword [ebp - 0xec], 0x5299dada
inc ecx
mov dword [ebp - 0x100], 0xab3921de
mov dword [ebp - 0xf8], ebx
jmp 0x10030fbc
mov eax, dword [ebp - 0xf8]
mov dword [ebp + eax*4 - 0x124], ecx
inc dword [ebp - 0xf8]
cmp dword [ebp - 0xf8], ecx
jl 0x10030fa9
mov dword [ebp - 0xec], ebx
jmp 0x10030fe1
mov eax, dword [ebp - 0xec]
cmp dword [ebp + eax*4 - 0x124], ebx
jne 0x10030fe9
inc dword [ebp - 0xec]
cmp dword [ebp - 0xec], ebx
jle 0x10030fcc
mov dword [ebp - 0xec], ebx
jmp 0x10031003
mov eax, dword [ebp - 0x124]
mov dword [ebp - 0x100], eax
inc dword [ebp - 0xec]
cmp dword [ebp - 0xec], 4
jg 0x10030ff1
push 2
pop esi
mov dword [ebp - 0xf8], 0xd7f825e7
mov dword [ebp - 0xf8], 0xfffffff8
jmp 0x10031085
mov dword [ebp - 0x100], 0xfffffffc
lea ecx, [ebp - 0x1b4]
push 4
call fcn.10001a29
mov dword [ebp - 0xec], ebx
jmp 0x1003105d
mov ecx, dword [ebp - 0xec]
mov eax, dword [ebp - 0x1b4]
mov dword [eax + ecx*4], 0x4d073ff8
inc dword [ebp - 0xec]
cmp dword [ebp - 0xec], 4
jl 0x10031044
mov ecx, dword [ebp - 0x100]
mov eax, dword [ebp - 0x1b4]
mov dword [eax], ecx
lea ecx, [ebp - 0x1b4]
call fcn.1000c4da
inc dword [ebp - 0xf8]
cmp dword [ebp - 0xf8], 0xc
jne 0x10031025
movzx eax, byte [ebp + esi - 0x1a]
movzx edx, byte [ebp + esi - 0x17]
mov ecx, edx
mov dword [ebp - 0xf8], 0xa7275995
movzx eax, word [ebp + eax*2 - 0x34]
or ecx, eax
and edx, eax
movzx eax, byte [ebp + esi - 0x18]
sub ecx, edx
add esi, 2
mov word [ebp + eax*2 - 0x34], cx
cmp esi, 8
jb 0x1003100f
xor eax, eax
mov word [ebp - 0x2c], ax
mov eax, dword [0x10075500]
test al, 1
jne 0x1003112d
or eax, 1
mov dword [0x10075500], eax
xor eax, eax
mov dword [ebp - 4], 3
mov dword [0x100754fc], 7
mov dword [0x100754f8], ebx
mov word [0x100754e8], ax
cmp word [ebp - 0x34], ax
jne 0x10031105
mov eax, ebx
jmp 0x1003110f
lea eax, [ebp - 0x34]
push eax
call fcn.10037734
pop ecx
push eax
lea eax, [ebp - 0x34]
mov ecx, 0x100754e8
push eax
call fcn.10002fe5
push 0x100498fd
call fcn.10036748
or dword [ebp - 4], 0xffffffff
pop ecx
mov esi, ebx
mov dword [ebp - 0xf0], 0xfffffff9
lea ecx, [ebp - 0x1cc]
push 2
call fcn.10001a29
mov dword [ebp - 0xf4], 0x36d0
mov dword [ebp - 0xec], ebx
jmp 0x1003116f
mov eax, dword [ebp - 0xec]
mov dword [ebp + eax*4 - 0x108], 0xfffffffd
inc dword [ebp - 0xec]
cmp dword [ebp - 0xec], 1
jl 0x10031158
mov dword [ebp - 0xec], ebx
jmp 0x10031199
mov ecx, dword [ebp - 0xec]
mov eax, dword [ebp - 0x1cc]
mov dword [eax + ecx*4], 0xfffffff7
inc dword [ebp - 0xec]
cmp dword [ebp - 0xec], 2
jl 0x10031180
mov eax, dword [ebp - 0xf0]
inc dword [ebp - 0xf0]
cmp eax, 0xa1e9
je 0x100311ba
xor ecx, ecx
inc ecx
jmp 0x100311bc
mov ecx, ebx
mov eax, dword [ebp - 0x108]
mov eax, dword [ebp - 0x108]
mov eax, dword [ebp - 0x108]
mov eax, dword [ebp - 0xf4]
add eax, ecx
jne 0x100311de
mov eax, dword [ebp - 0x108]
mov eax, dword [ebp - 0xf0]
mov edi, dword [ebp - 0x1cc]
mov eax, dword [edi + 4]
mov dword [ebp - 0x108], eax
mov dword [ebp - 0xf0], 0xffffffea
jmp 0x100312e1
mov dword [ebp - 0xec], ebx
mov dword [ebp - 0xfc], 0x5a258d3b
mov dword [ebp - 0x104], 0xc923f2b6
mov dword [ebp - 0xf8], ebx
jmp 0x1003123b
mov eax, dword [ebp - 0xf8]
mov dword [ebp + eax*4 - 0x130], 0x7014
inc dword [ebp - 0xf8]
cmp dword [ebp - 0xf8], 2
jl 0x10031224
mov eax, dword [ebp - 0xec]
cmp dword [ebp - 0xf4], 7
jne 0x10031259
mov eax, dword [ebp - 0xec]
mov eax, dword [ebp - 0x130]
mov eax, dword [ebp - 0xf4]
cmp dword [edi + 4], ebx
je 0x10031277
cmp dword [ebp - 0xf4], ebx
je 0x10031277
xor ecx, ecx
inc ecx
jmp 0x10031279
mov ecx, ebx
mov eax, dword [ebp - 0xec]
xor edx, edx
mov dword [ebp - 0x108], 0xc63b8821
mov eax, dword [ebp - 0xf0]
cmp ecx, eax
mov eax, dword [ebp - 0xec]
setne dl
xor ecx, ecx
cmp eax, edx
mov eax, 0xc63b8821
setl cl
sub eax, ecx
xor ecx, ecx
mov dword [ebp - 0xfc], eax
mov eax, dword [ebp - 0xfc]
mov eax, dword [ebp - 0x104]
mov eax, dword [ebp - 0x130]
mov eax, dword [ebp - 0x130]
mov eax, dword [ebp - 0xec]
test eax, eax
setns cl
mov dword [ebp - 0x104], ecx
inc dword [ebp - 0xf0]
cmp dword [ebp - 0xf0], 0x39
jle 0x10031202
lea ecx, [ebp - 0x1cc]
call fcn.1000c4da
cmp esi, 0xa
jae 0x10031e33
xor eax, eax
mov word [ebp + esi - 0x34], ax
add esi, 2
cmp esi, 0xa
jb 0x1003112f
mov dword [ebp - 0x100], 1
mov byte [ebp - 0xe5], bl
cmp byte [ebp - 0xe5], al
je 0x10031337
push ebx
push ebx
push ebx
push ebx
call dword [sym.imp.USER32.dll_FindWindowExW]
mov byte [ebp - 0xe5], bl
cmp byte [ebp - 0xe5], 0
je 0x10031351
push ebx
push ebx
push ebx
push ebx
push ebx
call dword [sym.imp.KERNEL32.dll_WriteConsoleW]
mov dword [ebp - 0x28], 0x2e024100
mov dword [ebp - 0x24], 0x41c0139
mov dword [ebp - 0x20], 0x2030307
mov byte [ebp - 0x1c], 4
mov dword [ebp - 0xf8], 0xffffffff
mov dword [ebp - 0xf8], 0x1a
jmp 0x100313c1
mov dword [ebp - 0xec], 0xffffffff
mov dword [ebp - 0xec], 0xc
jmp 0x100313b2
mov dword [ebp - 0x100], 0x1c55
mov eax, dword [ebp - 0xf8]
mov dword [ebp - 0x100], eax
dec dword [ebp - 0xec]
cmp dword [ebp - 0xec], 0xffffffe2
jle 0x10031396
dec dword [ebp - 0xf8]
cmp dword [ebp - 0xf8], 7
jle 0x10031380
push 0x68
pop eax
push 2
mov word [ebp - 0x40], ax
mov esi, ebx
pop edi
cmp edi, 2
jne 0x100314fc
mov dword [ebp - 0xf4], 0x648261f
mov dword [ebp - 0xf4], ebx
jmp 0x100314e5
mov dword [ebp - 0xec], 0x925b0e44
mov dword [ebp - 0xec], ebx
jmp 0x100314af
mov dword [ebp - 0xf0], 0x887cf2e5
mov dword [ebp - 0x74], 0xfaaf
mov dword [ebp - 0x70], 0xfaaf
mov dword [ebp - 0x6c], 0xfaaf
mov dword [ebp - 0x68], 0xfaaf
mov dword [ebp - 0xf0], 0xfffffff0
jmp 0x100314a0
push 2
lea ecx, [ebp - 0x1c0]
call fcn.10001a29
mov dword [ebp - 0xf8], ebx
jmp 0x10031469
mov ecx, dword [ebp - 0xf8]
mov eax, dword [ebp - 0x1c0]
mov dword [eax + ecx*4], 0xee1c9741
inc dword [ebp - 0xf8]
cmp dword [ebp - 0xf8], 2
jl 0x10031450
mov ecx, dword [ebp - 0x1c0]
mov dword [ecx + 4], ebx
mov eax, dword [ecx + 4]
inc dword [ecx + 4]
cmp dword [ecx + 4], 4
mov dword [ebp + eax*4 - 0x74], 0xa5b7
jl 0x1003147b
lea ecx, [ebp - 0x1c0]
call fcn.1000c4da
inc dword [ebp - 0xf0]
cmp dword [ebp - 0xf0], 0xfffffffa
jle 0x1003143b
dec dword [ebp - 0xec]
cmp dword [ebp - 0xec], 0xffffffe7
jne 0x10031409
mov dword [ebp - 0xec], 0xa
jmp 0x100314d6
cmp dword [ebp - 0xec], ebx
jne 0x100314df
inc dword [ebp - 0xec]
cmp dword [ebp - 0xec], 0xd
jg 0x100314c8
dec dword [ebp - 0xf4]
cmp dword [ebp - 0xf4], 0xffffffee
je 0x100313f4
push 3
pop esi
push esi
pop edi
jmp 0x1003168f
push 1
lea ecx, [ebp - 0x1f8]
call fcn.10001a29
mov dword [ebp - 0xf4], ebx
jmp 0x10031526
mov ecx, dword [ebp - 0xf4]
mov eax, dword [ebp - 0x1f8]
mov dword [eax + ecx*4], ebx
inc dword [ebp - 0xf4]
cmp dword [ebp - 0xf4], 1
jl 0x10031511
mov byte [ebp - 0xe5], bl
cmp byte [ebp - 0xe5], 0
je 0x10031547
push ebx
push ebx
push ebx
call dword [sym.imp.USER32.dll_EnableMenuItem]
mov byte [ebp - 0xe5], bl
cmp byte [ebp - 0xe5], 0
je 0x10031567
push ebx
push ebx
push ebx
push ebx
push ebx
push ebx
push ebx
push ebx
push ebx
push ebx
push ebx
call dword [sym.imp.GDI32.dll_StretchBlt]
lea ecx, [ebp - 0x1f8]
call fcn.1000c4da
movzx edx, byte [ebp + edi - 0x27]
mov eax, edi
sub eax, esi
push 3
pop esi
push esi
movzx eax, byte [ebp + eax - 0x2a]
movzx eax, word [ebp + eax*2 - 0x40]
mov ecx, eax
and eax, edx
or ecx, edx
sub ecx, eax
movzx eax, byte [ebp + edi - 0x28]
mov word [ebp + eax*2 - 0x40], cx
lea ecx, [ebp - 0x160]
call fcn.10001a29
mov dword [ebp - 0xf0], esi
mov dword [ebp - 0xfc], 0x268dd2ac
mov dword [ebp - 0x104], 0xffffffff
mov dword [ebp - 0xfc], 0xdcff2fd6
mov dword [ebp - 0xf4], ebx
jmp 0x100315eb
mov ecx, dword [ebp - 0xf4]
mov eax, dword [ebp - 0x160]
mov dword [eax + ecx*4], 1
inc dword [ebp - 0xf4]
cmp dword [ebp - 0xf4], esi
jl 0x100315d2
mov byte [ebp - 0xe5], bl
cmp byte [ebp - 0xe5], 0
je 0x10031612
push ebx
push ebx
push ebx
push ebx
push ebx
push ebx
push ebx
push ebx
push ebx
push ebx
call dword [sym.imp.USER32.dll_DrawStateW]
mov dword [ebp - 0xf0], ebx
jmp 0x10031679
mov dword [ebp - 0xec], 1
mov dword [ebp - 0xfc], 0xfffffff6
mov dword [ebp - 0x100], 0xd239f94a
cmp dword [ebp - 0xec], ebx
jne 0x10031682
xor ecx, ecx
mov eax, ebx
cmp eax, 0xfffffffd
mov eax, dword [ebp - 0x160]
setge cl
imul ecx, dword [eax + 4]
mov eax, dword [ebp - 0xec]
neg ecx
sbb ecx, ecx
neg ecx
imul eax, ecx
xor ecx, ecx
cmp eax, 0xed99
setne cl
mov dword [ebp - 0x100], ecx
inc dword [ebp - 0xf0]
cmp dword [ebp - 0xf0], 2
jle 0x1003161a
lea ecx, [ebp - 0x160]
call fcn.1000c4da
mov esi, ebx
add edi, 2
cmp edi, 0xd
jb 0x100313d6
push 4
lea ecx, [ebp - 0x1a8]
call fcn.10001a29
mov dword [ebp - 0xf4], ebx
jmp 0x100316c9
mov ecx, dword [ebp - 0xf4]
mov eax, dword [ebp - 0x1a8]
mov dword [eax + ecx*4], 1
inc dword [ebp - 0xf4]
cmp dword [ebp - 0xf4], 4
jl 0x100316b0
mov byte [ebp - 0xe5], bl
cmp byte [ebp - 0xe5], 0
je 0x100316e9
push ebx
push ebx
call dword [sym.imp.GDI32.dll_GetWindowOrgEx]
mov eax, dword [ebp - 0x1a8]
lea ecx, [ebp - 0x1a8]
inc dword [eax + 0xc]
call fcn.1000c4da
xor eax, eax
lea ecx, [ebp - 0x148]
push 2
mov word [ebp - 0x36], ax
call fcn.10001a29
mov dword [ebp - 0x100], 0x9c9214a9
push 2
pop edx
mov dword [ebp - 0xfc], edx
mov dword [ebp - 0xfc], 0x14a5ea96
mov dword [ebp - 0xfc], 0x4309642e
mov dword [ebp - 0x104], 0x9a20
mov dword [ebp - 0x100], 0xfffffffb
mov dword [ebp - 0xf4], ebx
jmp 0x1003176c
mov ecx, dword [ebp - 0xf4]
mov eax, dword [ebp - 0x148]
mov dword [eax + ecx*4], 0x4615
inc dword [ebp - 0xf4]
cmp dword [ebp - 0xf4], edx
jl 0x10031753
mov byte [ebp - 0xe5], bl
cmp byte [ebp - 0xe5], 0
je 0x1003178b
push ebx
push ebx
call dword [sym.imp.USER32.dll_KillTimer]
mov eax, dword [ebp - 0x148]
mov eax, dword [eax]
mov dword [ebp - 0x100], eax
mov dword [ebp - 0xfc], ebx
mov eax, dword [ebp - 0xfc]
mov edx, dword [ebp - 0x148]
mov eax, dword [edx + 4]
add eax, 0x4b7c7008
mov dword [ebp - 0xfc], eax
mov ecx, dword [ebp - 0xfc]
mov eax, dword [ebp - 0x148]
imul ecx, dword [eax]
mov dword [ebp - 0xfc], ecx
mov ecx, dword [ebp - 0xfc]
imul ecx, dword [edx + 4]
mov eax, dword [ebp - 0x104]
sub ecx, eax
mov dword [ebp - 0x100], ecx
lea ecx, [ebp - 0x148]
call fcn.1000c4da
mov eax, dword [0x10075500]
test al, 2
jne 0x10031853
or eax, 2
mov dword [0x10075500], eax
xor eax, eax
mov dword [ebp - 4], 4
mov dword [0x10075518], 7
mov dword [0x10075514], ebx
mov word [0x10075504], ax
cmp word [ebp - 0x40], ax
jne 0x1003182b
mov eax, ebx
jmp 0x10031835
lea eax, [ebp - 0x40]
push eax
call fcn.10037734
pop ecx
push eax
lea eax, [ebp - 0x40]
mov ecx, 0x10075504
push eax
call fcn.10002fe5
push 0x1004990c
call fcn.10036748
or dword [ebp - 4], 0xffffffff
pop ecx
mov dword [ebp - 0xf8], 0xffffffff
mov dword [ebp - 0xf4], ebx
jmp 0x10031878
mov eax, dword [ebp - 0xf4]
mov dword [ebp + eax*4 - 0xb4], ebx
inc dword [ebp - 0xf4]
cmp dword [ebp - 0xf4], 4
jl 0x10031865
mov dword [ebp - 0xf8], ebx
jmp 0x1003192d
push 1
lea ecx, [ebp - 0x13c]
call fcn.10001a29
xor edx, edx
inc edx
mov dword [ebp - 0x100], edx
mov dword [ebp - 0xf4], ebx
jmp 0x100318c0
mov ecx, dword [ebp - 0xf4]
mov eax, dword [ebp - 0x13c]
or dword [eax + ecx*4], 0xffffffff
inc dword [ebp - 0xf4]
cmp dword [ebp - 0xf4], edx
jl 0x100318aa
mov eax, dword [ebp - 0x13c]
mov dword [eax], ebx
mov dword [ebp - 0xf4], ebx
jmp 0x100318ef
mov eax, dword [ebp - 0xf4]
mov dword [ebp + eax*4 - 0x94], 0x3e8e
inc dword [ebp - 0xf4]
cmp dword [ebp - 0xf4], 4
jl 0x100318d8
mov eax, dword [ebp - 0x13c]
mov eax, dword [eax]
cmp dword [ebp + eax*4 - 0xb4], ebx
jne 0x1003191c
dec dword [ebp - 0x90]
mov eax, dword [ebp - 0x13c]
inc dword [eax]
cmp dword [eax], 3
jle 0x100318d0
lea ecx, [ebp - 0x13c]
call fcn.1000c4da
inc dword [ebp - 0xf8]
cmp dword [ebp - 0xf8], 0x10
jge 0x1003188c
mov byte [ebp - 0xe5], bl
cmp byte [ebp - 0xe5], 0
je 0x10031950
push ebx
call dword [sym.imp.USER32.dll_RegisterWindowMessageA]
mov edi, ebx
mov dword [ebp - 0xfc], ebx
push 4
lea ecx, [ebp - 0x190]
call fcn.10001a29
mov dword [ebp - 0xf8], 0x44d4e2b7
mov dword [ebp - 0xec], 0xffffffff
mov dword [ebp - 0x100], 7
mov dword [ebp - 4], 5
mov dword [ebp - 0xf0], ebx
jmp 0x100319a9
mov eax, dword [ebp - 0xf0]
mov dword [ebp + eax*4 - 0x84], 0xffffffff
inc dword [ebp - 0xf0]
cmp dword [ebp - 0xf0], 4
jl 0x10031992
mov dword [ebp - 0xf0], ebx
jmp 0x100319cd
call fcn.10036895
int3