Function at 0x4035d5
Capabilities:
Get common file path
Get geographical location

Disassembly:
push ebp
mov ebp, esp
add esp, 0xfffff65c
push ebx
push esi
push edi
mov ebx, 0x424440
mov eax, 0x424a58
call fcn.0041d008
mov edx, dword [ebp + 8]
mov dword [0x42e784], edx
mov ecx, dword [0x42e784]
push dword [ecx + 0x30]
call sub.USER32.dll_BringWindowToTop
call fcn.0040157d
cmp dword [0x424598], 0
je 0x4036de
push 0x84
call fcn.004213c0
pop ecx
mov dword [ebp - 4], eax
test eax, eax
je 0x403661
mov word [ebp - 0x20], 0x14
push 0
push 0
push 0x4019a9
push 5
push dword [0x42e784]
push dword [ebp - 4]
call fcn.0040f51b
add esp, 0x18
mov edx, dword [0x493654]
sub dword [edx], 2
mov word [ebp - 0x20], 8
mov ecx, dword [ebp - 4]
jmp 0x403664
mov ecx, dword [ebp - 4]
mov dword [0x4245a4], ecx
mov eax, dword [0x4245a4]
push eax
mov edx, dword [eax]
call dword [edx + 4]
pop ecx
lea eax, [ebp - 0x5c]
push eax
push dword [0x4245a4]
call fcn.0040ea4f
add esp, 8
push 0
call sub.USER32.dll_GetSystemMetrics
add eax, 0xfffffd80
sar eax, 1
jns 0x40369b
adc eax, 0
add eax, 0x5b
mov dword [ebp - 0x34], eax
push 1
call sub.USER32.dll_GetSystemMetrics
add eax, 0xfffffe20
sar eax, 1
jns 0x4036b4
adc eax, 0
add eax, 0x60
mov dword [ebp - 0x38], eax
push 0
mov edx, dword [ebp - 0x50]
sub edx, dword [ebp - 0x58]
push edx
mov ecx, dword [ebp - 0x54]
sub ecx, dword [ebp - 0x5c]
push ecx
push dword [ebp - 0x38]
push dword [ebp - 0x34]
push dword [0x4245a4]
call fcn.0040e9d9
add esp, 0x18
push 0xc000
call fcn.00420e60
pop ecx
mov dword [0x424430], eax
push 0xa
call fcn.0040114d
pop ecx
test eax, eax
jne 0x403736
push 4
call fcn.00409299
pop ecx
push eax
push dword [0x42e784]
call fcn.004012fc
add esp, 8
push 0
push 0
push 0x10
push dword [0x42e784]
call fcn.0040e8ba
mov eax, 1
mov edx, dword [ebp - 0x30]
mov dword fs:[0], edx
jmp 0x4045dd
push 0x42e788
call fcn.004094ce
pop ecx
push 0x42e788
call fcn.0041ab64
pop ecx
movsx ecx, byte [eax + 0x42e787]
cmp ecx, 0x5c
je 0x403781
push 0x42e788
call fcn.0041ab64
pop ecx
movsx eax, byte [eax + 0x42e787]
cmp eax, 0x3a
je 0x403781
push 0x425185
push 0x42e788
call fcn.0041aaa4
add esp, 8
push 0x10
lea edx, [ebp - 0x184]
push edx
push 3
push 0x800
call sub.KERNEL32.DLL_GetLocaleInfoA
lea ecx, [ebp - 0x184]
push ecx
push 0x425187
lea eax, [ebp - 0x174]
push eax
call fcn.0041e5ec
add esp, 0xc
lea edx, [ebp - 0x174]
push edx
lea ecx, [ebp - 0x160]
push ecx
call fcn.00409563
add esp, 8
push 0
lea eax, [ebp - 0x160]
push eax
call fcn.0041d4dc
add esp, 8
test eax, eax
je 0x4037f0
push 0x425192
lea edx, [ebp - 0x160]
push edx
call fcn.00409563
add esp, 8
push 0
lea ecx, [ebp - 0x160]
push ecx
call fcn.0041d4dc
add esp, 8
test eax, eax
je 0x403819
push 0x42519e
lea eax, [ebp - 0x160]
push eax
call fcn.00409563
add esp, 8
cmp dword [0x4939d0], 2
jge 0x403859
push 0x4251aa
lea edx, [ebp - 0x160]
push edx
call fcn.0041da58
add esp, 8
mov esi, eax
test esi, esi
jne 0x403903
push 0x4251ac
lea eax, [ebp - 0x160]
push eax
call fcn.0041ab34
add esp, 8
jmp 0x403903
mov edx, dword [0x4939d4]
push dword [edx + 4]
lea ecx, [ebp - 0x160]
push ecx
call fcn.00409563
add esp, 8
push 0x2e
lea eax, [ebp - 0x160]
push eax
call fcn.0041aae0
add esp, 8
test eax, eax
jne 0x40389a
push 0x4251bb
lea edx, [ebp - 0x160]
push edx
call fcn.0041aaa4
add esp, 8
push 0x4251c0
lea ecx, [ebp - 0x160]
push ecx
call fcn.0041da58
add esp, 8
mov esi, eax
test esi, esi
jne 0x403903
lea eax, [ebp - 0x484]
push eax
lea edx, [ebp - 0x384]
push edx
lea ecx, [ebp - 0x284]
push ecx
lea eax, [ebp - 0x3b]
push eax
lea edx, [ebp - 0x160]
push edx
call fcn.0041d4fc
add esp, 0x14
lea ecx, [ebp - 0x484]
push ecx
lea eax, [ebp - 0x384]
push eax
push 0x4251c5
push 0x4251c2
lea edx, [ebp - 0x160]
push edx
call fcn.0041d894
add esp, 0x14
test esi, esi
jne 0x403af2
push 0x4251c7
lea ecx, [ebp - 0x160]
push ecx
call fcn.0041da58
add esp, 8
mov esi, eax
test eax, eax
jne 0x403af2
push 0xb
call fcn.00409299
pop ecx
push eax
lea edx, [ebp - 0x790]
push edx
call fcn.0041ab34
add esp, 8
cmp byte [0x42e990], 0
jne 0x403960
push 0x64
call fcn.00409299
pop ecx
push eax
push 0x42e990
call fcn.0041ab34
add esp, 8
push 0x42e990
lea ecx, [ebp - 0x790]
push ecx
call fcn.0041aaa4
add esp, 8
push 0x4251c9
lea eax, [ebp - 0x790]
push eax
call fcn.0041aaa4
add esp, 8
push 0x4251cc
lea edx, [ebp - 0x68c]
push edx
call fcn.0041ab34
add esp, 8
push 0x4251cf
lea ecx, [ebp - 0x588]
push ecx
call fcn.0041ab34
add esp, 8
push 0x84
call fcn.004213c0
pop ecx
mov dword [ebp - 8], eax
test eax, eax
je 0x4039fa
mov word [ebp - 0x20], 0x2c
push 0
lea edx, [ebp - 0x790]
push edx
push 0x402199
push 4
push dword [ebp + 8]
push dword [ebp - 8]
call fcn.0040f51b
add esp, 0x18
mov ecx, dword [0x493654]
sub dword [ecx], 2
mov word [ebp - 0x20], 0x20
mov eax, dword [ebp - 8]
jmp 0x4039fd
mov eax, dword [ebp - 8]
push eax
call fcn.0040f504
mov esi, eax
push dword [0x438460]
call fcn.0040d740
pop ecx
dec esi
jne 0x403ad0
lea eax, [ebp - 0x68c]
push eax
push 0x42e788
call fcn.0041ab34
add esp, 8
push 0x42e788
call fcn.0041ab64
pop ecx
movsx edx, byte [eax + 0x42e787]
cmp edx, 0x5c
je 0x403a6c
push 0x42e788
call fcn.0041ab64
pop ecx
movsx ecx, byte [eax + 0x42e787]
cmp ecx, 0x3a
je 0x403a6c
push 0x4251db
push 0x42e788
call fcn.0041aaa4
add esp, 8
push 0x42e788
lea eax, [ebp - 0x160]
push eax
call fcn.0041ab34
add esp, 8
push 0x4251dd
lea edx, [ebp - 0x160]
push edx
call fcn.0041aaa4
add esp, 8
push 0x4251e9
lea ecx, [ebp - 0x160]
push ecx
call fcn.0041da58
add esp, 8
mov esi, eax
test esi, esi
jne 0x403af2
push 0
push 0
push 0x10
push dword [0x42e784]
call fcn.0040e8ba
xor eax, eax
mov edx, dword [ebp - 0x30]
mov dword fs:[0], edx
jmp 0x4045dd
push 0
push 0
push 0x10
push dword [0x42e784]
call fcn.0040e8ba
xor eax, eax
mov edx, dword [ebp - 0x30]
mov dword fs:[0], edx
jmp 0x4045dd
push esi
call fcn.004024f2
pop ecx
push esi
call fcn.0041d59c
pop ecx
xor ecx, ecx
mov dword [0x424444], ecx
xor eax, eax
jmp 0x403bb3
mov edx, dword [0x42445c]
mov edx, dword [edx + eax*4]
shr edx, 0x10
and dx, 0xffff
mov ecx, dword [0x42445c]
mov cx, word [ecx + eax*4]
mov word [ebp - 0x3e], cx
test dx, dx
jle 0x403ba3
movsx ecx, dx
cmp ecx, dword [0x42443c]
jg 0x403ba3
cmp word [ebp - 0x3e], 0
jne 0x403b5c
mov ecx, dword [0x424458]
mov ecx, dword [ecx + eax*4]
movsx edx, dx
lea edx, [edx + edx*2]
mov esi, dword [ebx]
add dword [esi + edx*8 - 0xc], ecx
jmp 0x403bb2
movsx ecx, dx
lea ecx, [ecx + ecx*2]
mov esi, dword [ebx]
mov ecx, dword [esi + ecx*8 - 8]
movsx esi, word [ebp - 0x3e]
cmp ecx, esi
jl 0x403b92
mov ecx, dword [0x424458]
mov ecx, dword [ecx + eax*4]
movsx edx, dx
lea edx, [edx + edx*2]
mov esi, dword [ebx]
mov edx, dword [esi + edx*8 - 4]
movsx esi, word [ebp - 0x3e]
lea esi, [esi + esi*4]
add dword [edx + esi*4 - 8], ecx
jmp 0x403bb2
mov edx, dword [0x424458]
mov ecx, dword [edx + eax*4]
add dword [0x424444], ecx
jmp 0x403bb2
mov edx, dword [0x424458]
mov ecx, dword [edx + eax*4]
add dword [0x424444], ecx
inc eax
cmp eax, dword [0x42e9cc]
jl 0x403b0f
call fcn.00405af5
cmp eax, 2
jne 0x403bda
xor eax, eax
mov edx, dword [ebp - 0x30]
mov dword fs:[0], edx
jmp 0x4045dd
cmp dword [0x424464], 0
jne 0x403c32
xor edx, edx
jmp 0x403c2a
lea eax, [edx + edx*2]
mov ecx, dword [ebx]
mov eax, dword [ecx + eax*8 + 8]
lea ecx, [edx + edx*2]
mov esi, dword [ebx]
mov dword [esi + ecx*8 + 4], eax
xor eax, eax
jmp 0x403c1e
lea ecx, [edx + edx*2]
mov esi, dword [ebx]
mov ecx, dword [esi + ecx*8 + 0x14]
lea esi, [eax + eax*4]
mov ecx, dword [ecx + esi*4 + 8]
lea esi, [edx + edx*2]
mov edi, dword [ebx]
mov esi, dword [edi + esi*8 + 0x14]
lea edi, [eax + eax*4]
mov dword [esi + edi*4 + 4], ecx
inc eax
lea ecx, [edx + edx*2]
mov esi, dword [ebx]
cmp eax, dword [esi + ecx*8 + 0x10]
jl 0x403bfd
inc edx
cmp edx, dword [0x42443c]
jl 0x403be7
mov eax, dword [0x424444]
mov dword [0x42e9d0], eax
mov edx, dword [0x424a0c]
mov dword [ebp - 0x79c], edx
mov edx, dword [0x424a10]
mov dword [ebp - 0x798], edx
mov edx, dword [0x424a14]
mov dword [ebp - 0x794], edx
xor esi, esi
jmp 0x403c8a
mov eax, dword [0x424464]
push dword [ebp + eax*4 - 0x79c]
mov edx, esi
shl edx, 3
lea edx, [edx + edx*2]
add edx, dword [ebx]
push edx
call fcn.0040107c
add esp, 8
add dword [0x42e9d0], eax
inc esi
cmp esi, dword [0x42443c]
jl 0x403c64
push 0x84
call fcn.004213c0
pop ecx
mov dword [ebp - 0xc], eax
test eax, eax
je 0x403cda
mov word [ebp - 0x20], 0x44
push 0
push 0x42e88c
push 0x401e2b
push 2
push dword [ebp + 8]
push dword [ebp - 0xc]
call fcn.0040f51b
add esp, 0x18
mov edx, dword [0x493654]
sub dword [edx], 2
mov word [ebp - 0x20], 0x38
mov ecx, dword [ebp - 0xc]
jmp 0x403cdd
mov ecx, dword [ebp - 0xc]
push ecx
call fcn.0040f504
cmp eax, 2
jne 0x403d0a
push 0
push 0
push 0x10
push dword [0x42e784]
call fcn.0040e8ba
xor eax, eax
mov edx, dword [ebp - 0x30]
mov dword fs:[0], edx
jmp 0x4045dd
cmp eax, 3
je 0x403bbf
movsx eax, byte [0x42e88d]
cmp eax, 0x3a
jne 0x403d31
movsx edx, byte [0x42e88c]
push edx
call fcn.004203e8
pop ecx
mov esi, eax
jmp 0x403d38
call fcn.0041fa90
mov esi, eax
lea eax, [esi - 0x41]
push eax
call fcn.0041faa0
pop ecx
lea edx, [ebp - 0x7ac]
push edx
mov ecx, esi
add cl, 0xc0
push ecx
call fcn.0041fa28
add esp, 8
mov eax, dword [ebp - 0x7ac]
mov dword [ebp - 0x994], eax
xor edx, edx
mov dword [ebp - 0x990], edx
fild qword [ebp - 0x994]
mov ecx, dword [ebp - 0x7a4]
mov dword [ebp - 0x99c], ecx
xor eax, eax
mov dword [ebp - 0x998], eax
fild qword [ebp - 0x99c]
fmulp st(1)
mov edx, dword [ebp - 0x7a0]
mov dword [ebp - 0x9a4], edx
xor ecx, ecx
mov dword [ebp - 0x9a0], ecx
fild qword [ebp - 0x9a4]
fmulp st(1)
fmul dword [0x4045e9]
fstp qword [ebp - 0x48]
mov eax, dword [0x42e9d0]
mov dword [ebp - 0x994], eax
xor edx, edx
mov dword [ebp - 0x990], edx
fild qword [ebp - 0x994]
fcomp qword [ebp - 0x48]
fnstsw ax
sahf
jbe 0x403e39
push 0x14
call fcn.00409299
pop ecx
push eax
mov eax, dword [0x42e9d0]
mov ecx, 0x3e8
xor edx, edx
div ecx
push eax
push 0x13
call fcn.00409299
pop ecx
push eax
push 0x4240e4
push 0x1f
call fcn.00409299
pop ecx
push eax
push 3
call fcn.00409299
pop ecx
push eax
push 0x4251eb
lea eax, [ebp - 0x874]
push eax
call fcn.0041e5ec
add esp, 0x20
lea edx, [ebp - 0x874]
push edx
push dword [0x42e784]
call fcn.004012fc
add esp, 8
jmp 0x403c92
push 0
push 0x42e88c
call fcn.0041d4dc
add esp, 8
test eax, eax
je 0x403e77
push 0x42e88c
call fcn.00403525
pop ecx
test eax, eax
jne 0x403e77
push 2
call fcn.00409299
pop ecx
push eax
push dword [0x42e784]
call fcn.004012fc
add esp, 8
jmp 0x403c92
xor ebx, ebx
jmp 0x403ef9
push 0x42e88c
lea eax, [ebp - 0x160]
push eax
call fcn.0041ab34
add esp, 8
lea edx, [ebp - 0x160]
push edx
call fcn.0041ab64
pop ecx
movsx ecx, byte [ebp + eax - 0x161]
cmp ecx, 0x5c
je 0x403ebd
push 0x4251ff
lea eax, [ebp - 0x160]
push eax
call fcn.0041aaa4
add esp, 8
imul edx, ebx, 0x32
add edx, dword [0x424438]
push edx
lea ecx, [ebp - 0x160]
push ecx
call fcn.0041aaa4
add esp, 8
push 0
lea eax, [ebp - 0x160]
push eax
call fcn.0041d4dc
add esp, 8
test eax, eax
je 0x403ef8
lea edx, [ebp - 0x160]
push edx
call fcn.00403525
pop ecx
inc ebx
cmp dword [0x424438], 0
je 0x403f17
lea ecx, [ebx + ebx*4]
lea ecx, [ecx + ecx*4]
mov eax, dword [0x424438]
cmp byte [eax + ecx*2], 0
jne 0x403e7b
push 0x401d41
push 1
call fcn.0040d4ad
add esp, 8
xor edx, edx
mov dword [0x42458c], edx
push 0x84
call fcn.004213c0
pop ecx
mov dword [ebp - 0x10], eax
test eax, eax
je 0x403f76
mov word [ebp - 0x20], 0x5c
push 0
push 0
push 0x402067
push 3
push dword [0x42e784]
push dword [ebp - 0x10]
call fcn.0040f51b
add esp, 0x18
mov edx, dword [0x493654]
sub dword [edx], 2
mov word [ebp - 0x20], 0x50
mov ecx, dword [ebp - 0x10]
jmp 0x403f79
mov ecx, dword [ebp - 0x10]
mov dword [0x42e9ec], ecx
mov eax, dword [0x42e9ec]
push eax
mov edx, dword [eax]
call dword [edx + 4]
pop ecx
push 0x4240e4
push 0xe
call fcn.00409299
pop ecx
push eax
lea eax, [ebp - 0x874]
push eax
call fcn.0041e5ec
add esp, 0xc
lea edx, [ebp - 0x874]
push edx
mov ecx, dword [0x42e9ec]
push ecx
mov eax, dword [ecx]
call dword [eax + 0x3c]
add esp, 8
push dword [0x438460]
call fcn.0040d740
pop ecx
push 0x4241ae
call fcn.0041ab64
pop ecx
test eax, eax
je 0x404267
push 0x42e88c
lea edx, [ebp - 0x160]
push edx
call fcn.0041ab34
add esp, 8
lea ecx, [ebp - 0x160]
push ecx
call fcn.0041ab64
pop ecx
movsx eax, byte [ebp + eax - 0x161]
cmp eax, 0x5c
je 0x40401f
push 0x425201
lea edx, [ebp - 0x160]
push edx
call fcn.0041aaa4
add esp, 8
push 0x4241ae
lea ecx, [ebp - 0x160]
push ecx
call fcn.0041aaa4
add esp, 8
push 0x425203
lea eax, [ebp - 0x160]
push eax
call fcn.0041da58
add esp, 8
mov dword [0x42407c], eax
cmp dword [0x42407c], 0
je 0x404267
push 0x425206
push dword [0x42407c]
call fcn.0041da84
add esp, 8
push 0x424080
push 0x425213
push dword [0x42407c]
call fcn.0041da84
add esp, 0xc
push 0x4240b2
push 0x425221
push dword [0x42407c]
call fcn.0041da84
add esp, 0xc
push 0x4240e4
push 0x42522f
push dword [0x42407c]
call fcn.0041da84
add esp, 0xc
push dword [0x424418]
push 0x42523d
push dword [0x42407c]
call fcn.0041da84
add esp, 0xc
push 0x42e9a4
push 0x425249
push dword [0x42407c]
call fcn.0041da84
add esp, 0xc
push 0x42e9c2
push 0x42525c
push dword [0x42407c]
call fcn.0041da84
add esp, 0xc
push 0x424116
push 0x42526d
push dword [0x42407c]
call fcn.0041da84
add esp, 0xc
push 0x424167
push 0x42527e
push dword [0x42407c]
call fcn.0041da84
add esp, 0xc
push 0x42417c
push 0x42528f
push dword [0x42407c]
call fcn.0041da84
add esp, 0xc
push 0x4241ae
push 0x4252a0
push dword [0x42407c]
call fcn.0041da84
add esp, 0xc
xor ebx, ebx
jmp 0x40421b
lea eax, [ebx + 1]
push eax
push 0x4252b2
lea edx, [ebp - 0x888]
push edx
call fcn.0041e5ec
add esp, 0xc
lea ecx, [ebp - 0x888]
push ecx
push dword [0x42407c]
call fcn.0041da84
add esp, 8
imul eax, ebx, 0x8b
add eax, dword [0x42441c]
push eax
push 0x4252c0
push dword [0x42407c]
call fcn.0041da84
add esp, 0xc
imul edx, ebx, 0x8b
add edx, dword [0x42441c]
add edx, 5
push edx
push 0x4252cb
push dword [0x42407c]
call fcn.0041da84
add esp, 0xc
imul ecx, ebx, 0x8b
add ecx, dword [0x42441c]
add ecx, 0x37
push ecx
push 0x4252d7
push dword [0x42407c]
call fcn.0041da84
add esp, 0xc
imul eax, ebx, 0x8b
add eax, dword [0x42441c]
add eax, 0x55
push eax
push 0x4252e3
push dword [0x42407c]
call fcn.0041da84
add esp, 0xc
inc ebx
cmp ebx, dword [0x424418]
jl 0x404164
push 0x4252f2
push dword [0x42407c]
call fcn.0041da84
add esp, 8
xor ebx, ebx
jmp 0x40425f
mov eax, dword [0x424424]
push dword [eax + ebx*4]
push 0x42e88c
push 0x4252fc
push dword [0x42407c]
call fcn.0041da84
add esp, 0x10
inc ebx
cmp ebx, dword [0x424420]
jl 0x40423e
or ebx, 0xffffffff
cmp byte [0x42417c], 0
je 0x40430e
push 0x42e788
lea eax, [ebp - 0x98c]
push eax
call fcn.0041ab34
add esp, 8
lea edx, [ebp - 0x98c]
push edx
call fcn.0041ab64
pop ecx
movsx ecx, byte [ebp + eax - 0x98d]
cmp ecx, 0x5c
je 0x4042b9
push 0x425303
lea eax, [ebp - 0x98c]
push eax
call fcn.0041aaa4
add esp, 8
push 0x42417c
lea edx, [ebp - 0x98c]
push edx
call fcn.0041aaa4
add esp, 8
push 0x8000
lea ecx, [ebp - 0x98c]
push ecx
call fcn.0041d50c
add esp, 8
mov ebx, eax
cmp ebx, 0xffffffff
jne 0x40430e
lea eax, [ebp - 0x98c]
push eax
push dword [0x42e9ec]
call fcn.0040202a
add esp, 8
xor eax, eax
mov edx, dword [ebp - 0x30]
mov dword fs:[0], edx
jmp 0x4045dd
push 0x104
lea ecx, [ebp - 0x98c]
push ecx
call sub.KERNEL32.DLL_GetWindowsDirectoryA
lea eax, [ebp - 0x98c]
push eax
call fcn.0041ab64
pop ecx
movsx edx, byte [ebp + eax - 0x98d]
cmp edx, 0x5c
je 0x40434d
push 0x425305
lea ecx, [ebp - 0x98c]
push ecx
call fcn.0041aaa4
add esp, 8
lea eax, [ebp - 0x98c]
push eax
call fcn.0041ab64
pop ecx
lea edx, [ebp - 0x98c]
add eax, edx
mov dword [ebp - 0x4c], eax
push 0x2e
push 0x42417c
call fcn.0041aae0
add esp, 8
mov esi, eax
test esi, esi
jne 0x40438d
push 0x42417c
call fcn.0041ab64
pop ecx
mov esi, eax
add esi, 0x42417c
push 0x42417c
lea eax, [ebp - 0x98c]
push eax
call fcn.0041aaa4
add esp, 8
xor edi, edi
jmp 0x4043d0
push 0xa
push esi
push edi
call fcn.004205b8
add esp, 0xc
push 0x425307
push esi
call fcn.0041aaa4
add esp, 8
push 0x42417c
push dword [ebp - 0x4c]
call fcn.0041ab34
add esp, 8
inc edi
push 0
lea eax, [ebp - 0x98c]
push eax
call fcn.0041d4dc
add esp, 8
test eax, eax
jne 0x4043ea
cmp edi, 0x63
jl 0x4043a5
push 0x80
push 0x8301
lea edx, [ebp - 0x98c]
push edx
call fcn.0041d50c
add esp, 0xc
mov esi, eax
cmp esi, 0xffffffff
jne 0x404437
push ebx
call fcn.0041d4ec
pop ecx
lea eax, [ebp - 0x98c]
push eax
push dword [0x42e784]
call fcn.0040202a
add esp, 8
xor eax, eax
mov edx, dword [ebp - 0x30]
mov dword fs:[0], edx
jmp 0x4045dd
push 0
push esi
call fcn.0041d4e4
add esp, 8
push ebx
call fcn.0041f7d4
pop ecx
add eax, 0x3ff
test eax, eax
jns 0x404457
add eax, 0x3ff
sar eax, 0xa
add dword [0x42e9d0], eax
push eax
push ebx
push esi
call fcn.00405fe5
add esp, 0xc
test eax, eax
jne 0x404495
lea ecx, [ebp - 0x98c]
push ecx
push dword [0x42e784]
call fcn.0040202a
add esp, 8
xor eax, eax
mov edx, dword [ebp - 0x30]
mov dword fs:[0], edx
jmp 0x4045dd
push ebx
call fcn.0041d4ec
pop ecx
push esi
call fcn.0041d4ec
pop ecx
call fcn.00405c12
test eax, eax
jne 0x4044e6
push 0
push 0
push 0x10
push dword [0x42e784]
call fcn.0040e8ba
cmp dword [0x42407c], 0
je 0x4044d2
push dword [0x42407c]
call fcn.0041d59c
pop ecx
mov eax, 1
mov edx, dword [ebp - 0x30]
mov dword fs:[0], edx
jmp 0x4045dd
mov dword [0x42458c], 0x64
push 1
push 0
mov ecx, dword [0x4245d4]
push dword [ecx + 0x30]
call sub.USER32.dll_InvalidateRect
mov eax, dword [0x4245d4]
push eax
mov edx, dword [eax]
call dword [edx + 0x44]
pop ecx
push dword [0x438460]
call fcn.0040d740
pop ecx
push 2
mov ecx, dword [0x42e9ec]
push ecx
mov eax, dword [ecx]
call dword [eax + 0x10]
add esp, 8
cmp dword [0x42407c], 0
je 0x4045c4
push 0x42530c
push dword [0x42407c]
call fcn.0041da84
add esp, 8
push 0x42e88c
push 0x42531b
push dword [0x42407c]
call fcn.0041da84
add esp, 0xc
xor ebx, ebx
jmp 0x40458a
imul eax, ebx, 0x32
add eax, dword [0x424438]
push eax
push 0x42e88c
push 0x42531f
push dword [0x42407c]
call fcn.0041da84
add esp, 0x10
inc ebx
cmp dword [0x424438], 0
je 0x4045a5
lea edx, [ebx + ebx*4]
lea edx, [edx + edx*4]
mov ecx, dword [0x424438]
cmp byte [ecx + edx*2], 0
jne 0x404567
push 0x425326
push dword [0x42407c]
call fcn.0041da84
add esp, 8
push dword [0x42407c]
call fcn.0041d59c
pop ecx
mov dword [0x424074], 1
mov eax, 1
mov edx, dword [ebp - 0x30]
mov dword fs:[0], edx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 4