Function at 0x430720
Capabilities:
Hide graphical window

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x47203e
mov eax, dword fs:[0]
push eax
sub esp, 0x430
mov eax, dword [0x485c44]
xor eax, ebp
mov dword [ebp - 0x14], eax
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov dword [ebp - 0x380], ecx
mov dword [ebp - 0x154], 0
mov eax, dword [ebp + 8]
mov ecx, dword [eax + 0xb4]
movzx edx, byte [ecx + 0x2a0]
test edx, edx
je 0x430774
jmp 0x4316d4
mov dword [ebp - 0x6c], 0
xor eax, eax
mov dword [ebp - 0x68], eax
mov dword [ebp - 0x64], eax
mov dword [ebp - 0x60], eax
mov ecx, dword [ebp - 0x380]
mov edx, dword [ecx + 8]
mov dword [ebp - 0x158], edx
lea eax, [ebp - 0x6c]
push eax
mov ecx, dword [ebp - 0x158]
push ecx
call dword [sym.imp.USER32.dll_GetClientRect]
mov edx, dword [ebp - 0x380]
mov eax, dword [edx + 8]
mov dword [ebp - 0x15c], eax
push 1
lea ecx, [ebp - 0x6c]
push ecx
mov edx, dword [ebp - 0x15c]
push edx
call dword [sym.imp.USER32.dll_InvalidateRect]
mov eax, dword [ebp + 8]
mov ecx, dword [eax + 0xb4]
cmp dword [ecx + 0x2a4], 0
je 0x4307f1
mov edx, dword [ebp + 8]
mov eax, dword [edx + 0xb4]
mov ecx, dword [eax + 0x2a4]
mov dword [ebp - 0x384], ecx
jmp 0x430809
mov edx, dword [ebp - 0x380]
mov eax, dword [edx + 0xc8]
mov ecx, dword [eax + 0x2bc]
mov dword [ebp - 0x384], ecx
mov edx, dword [ebp - 0x384]
push edx
mov ecx, dword [ebp - 0x380]
call fcn.0041e020
mov eax, dword [ebp - 0x380]
mov ecx, dword [eax + 0xc8]
add ecx, 0x2a4
mov dword [ebp - 0x160], ecx
mov edx, dword [ebp - 0x160]
mov eax, dword [ebp - 0x160]
mov ecx, dword [edx + 0x10]
sub ecx, dword [eax + 0xc]
mov eax, ecx
cdq
mov ecx, 0x88
idiv ecx
test eax, eax
je 0x430870
mov edx, dword [ebp - 0x380]
mov eax, dword [edx + 0xc8]
add eax, 0x2a4
push eax
mov ecx, dword [ebp - 0x380]
call fcn.0041e110
mov ecx, dword [ebp + 8]
mov edx, dword [ecx + 0xb4]
add edx, 0x258
mov dword [ebp - 0x164], edx
mov eax, dword [ebp - 0x164]
mov ecx, dword [ebp - 0x164]
mov eax, dword [eax + 0x10]
sub eax, dword [ecx + 0xc]
cdq
mov ecx, 0x88
idiv ecx
test eax, eax
je 0x4308bd
mov edx, dword [ebp + 8]
mov eax, dword [edx + 0xb4]
add eax, 0x258
push eax
mov ecx, dword [ebp - 0x380]
call fcn.0041e110
push 1
mov ecx, dword [ebp + 8]
call fcn.004193d0
mov ecx, dword [ebp + 8]
mov edx, dword [ecx + 0xb4]
mov dword [ebp - 0x74], edx
mov eax, dword [ebp - 0x380]
mov ecx, dword [eax + 0xc8]
xor edx, edx
cmp dword [ecx + 0x3d0], 0
sete dl
movzx eax, dl
test eax, eax
je 0x430a59
mov ecx, dword [ebp - 0x74]
xor edx, edx
cmp dword [ecx + 0x3d0], 0
sete dl
movzx eax, dl
test eax, eax
je 0x43095e
mov ecx, dword [ebp - 0x380]
mov edx, dword [ecx + 0xc8]
add edx, 0x164
mov dword [ebp - 0x2a0], edx
mov eax, dword [ebp - 0x2a0]
cmp dword [eax + 0x18], 8
jb 0x430941
mov ecx, dword [ebp - 0x2a0]
mov edx, dword [ecx + 4]
mov dword [ebp - 0x388], edx
jmp 0x430950
mov eax, dword [ebp - 0x2a0]
add eax, 4
mov dword [ebp - 0x388], eax
mov ecx, dword [ebp - 0x388]
mov dword [ebp - 0x2b4], ecx
jmp 0x4309a5
mov edx, dword [ebp - 0x74]
add edx, 0x3bc
mov dword [ebp - 0x2a4], edx
mov eax, dword [ebp - 0x2a4]
cmp dword [eax + 0x18], 8
jb 0x43098a
mov ecx, dword [ebp - 0x2a4]
mov edx, dword [ecx + 4]
mov dword [ebp - 0x38c], edx
jmp 0x430999
mov eax, dword [ebp - 0x2a4]
add eax, 4
mov dword [ebp - 0x38c], eax
mov ecx, dword [ebp - 0x38c]
mov dword [ebp - 0x2b4], ecx
lea edx, [ebp - 0x2ad]
mov dword [ebp - 0x2ac], edx
push 0
push 0
lea ecx, [ebp - 0xe8]
call fcn.0040d8a0
mov eax, dword [ebp - 0x2b4]
mov dword [ebp - 0x390], eax
mov ecx, dword [ebp - 0x390]
add ecx, 2
mov dword [ebp - 0x394], ecx
mov edx, dword [ebp - 0x390]
mov ax, word [edx]
mov word [ebp - 0x396], ax
add dword [ebp - 0x390], 2
cmp word [ebp - 0x396], 0
jne 0x4309db
mov ecx, dword [ebp - 0x390]
sub ecx, dword [ebp - 0x394]
sar ecx, 1
mov dword [ebp - 0x39c], ecx
mov edx, dword [ebp - 0x39c]
push edx
mov eax, dword [ebp - 0x2b4]
push eax
lea ecx, [ebp - 0xe8]
call fcn.0040d960
lea ecx, [ebp - 0xe8]
mov dword [ebp - 0x3a0], ecx
mov dword [ebp - 4], 0
mov edx, dword [ebp - 0x154]
or edx, 1
mov dword [ebp - 0x154], edx
mov eax, dword [ebp - 0x3a0]
mov dword [ebp - 0x3a4], eax
jmp 0x430a71
mov ecx, dword [ebp - 0x380]
mov edx, dword [ecx + 0xc8]
add edx, 0x3bc
mov dword [ebp - 0x3a4], edx
mov eax, dword [ebp - 0x3a4]
mov dword [ebp - 0xcc], eax
push 0
push 0
lea ecx, [ebp - 0x50]
call fcn.0040d8a0
mov ecx, dword [0x4764d8]
push ecx
push 0
mov edx, dword [ebp - 0xcc]
push edx
lea ecx, [ebp - 0x50]
call fcn.0040da60
mov dword [ebp - 4], 2
mov eax, dword [ebp - 0x154]
and eax, 1
je 0x430ac9
and dword [ebp - 0x154], 0xfffffffe
push 0
push 1
lea ecx, [ebp - 0xe8]
call fcn.0040d8a0
cmp dword [ebp - 0x38], 8
jb 0x430ada
mov ecx, dword [ebp - 0x4c]
mov dword [ebp - 0x3a8], ecx
jmp 0x430ae3
lea edx, [ebp - 0x4c]
mov dword [ebp - 0x3a8], edx
mov eax, dword [ebp - 0x380]
mov ecx, dword [eax + 8]
mov dword [ebp - 0x2b8], ecx
mov edx, dword [ebp - 0x3a8]
push edx
push 0xd
mov eax, dword [ebp - 0x2b8]
push eax
call dword [sym.imp.USER32.dll_GetDlgItem]
push eax
call dword [sym.imp.USER32.dll_SetWindowTextW]
mov ecx, dword [ebp - 0x380]
mov edx, dword [ecx + 8]
mov dword [ebp - 0x2bc], edx
push 0xb
mov eax, dword [ebp - 0x2bc]
push eax
call dword [sym.imp.USER32.dll_GetDlgItem]
mov dword [ebp - 0x5c], eax
push 0
mov ecx, dword [ebp - 0x5c]
push ecx
call dword [sym.imp.USER32.dll_ShowWindow]
mov edx, dword [ebp - 0x380]
mov eax, dword [edx + 0xc8]
xor ecx, ecx
cmp dword [eax + 0x3b4], 0
sete cl
movzx edx, cl
test edx, edx
je 0x430cbf
mov eax, dword [ebp - 0x74]
xor ecx, ecx
cmp dword [eax + 0x3ec], 0
sete cl
movzx edx, cl
test edx, edx
je 0x430bc7
mov eax, dword [ebp - 0x380]
mov ecx, dword [eax + 0xc8]
add ecx, 0x148
mov dword [ebp - 0x2c0], ecx
mov edx, dword [ebp - 0x2c0]
cmp dword [edx + 0x18], 8
jb 0x430baa
mov eax, dword [ebp - 0x2c0]
mov ecx, dword [eax + 4]
mov dword [ebp - 0x3ac], ecx
jmp 0x430bb9
mov edx, dword [ebp - 0x2c0]
add edx, 4
mov dword [ebp - 0x3ac], edx
mov eax, dword [ebp - 0x3ac]
mov dword [ebp - 0x2d4], eax
jmp 0x430c0e
mov ecx, dword [ebp - 0x74]
add ecx, 0x3d8
mov dword [ebp - 0x2c4], ecx
mov edx, dword [ebp - 0x2c4]
cmp dword [edx + 0x18], 8
jb 0x430bf3
mov eax, dword [ebp - 0x2c4]
mov ecx, dword [eax + 4]
mov dword [ebp - 0x3b0], ecx
jmp 0x430c02
mov edx, dword [ebp - 0x2c4]
add edx, 4
mov dword [ebp - 0x3b0], edx
mov eax, dword [ebp - 0x3b0]
mov dword [ebp - 0x2d4], eax
lea ecx, [ebp - 0x2cd]
mov dword [ebp - 0x2cc], ecx
push 0
push 0
lea ecx, [ebp - 0x108]
call fcn.0040d8a0
mov edx, dword [ebp - 0x2d4]
mov dword [ebp - 0x3b4], edx
mov eax, dword [ebp - 0x3b4]
add eax, 2
mov dword [ebp - 0x3b8], eax
mov ecx, dword [ebp - 0x3b4]
mov dx, word [ecx]
mov word [ebp - 0x3ba], dx
add dword [ebp - 0x3b4], 2
cmp word [ebp - 0x3ba], 0
jne 0x430c44
mov eax, dword [ebp - 0x3b4]
sub eax, dword [ebp - 0x3b8]
sar eax, 1
mov dword [ebp - 0x3c0], eax
mov ecx, dword [ebp - 0x3c0]
push ecx
mov edx, dword [ebp - 0x2d4]
push edx
lea ecx, [ebp - 0x108]
call fcn.0040d960
lea eax, [ebp - 0x108]
mov dword [ebp - 0x3c4], eax
mov byte [ebp - 4], 3
mov ecx, dword [ebp - 0x154]
or ecx, 2
mov dword [ebp - 0x154], ecx
mov edx, dword [ebp - 0x3c4]
mov dword [ebp - 0x3c8], edx
jmp 0x430cd7
mov eax, dword [ebp - 0x380]
mov ecx, dword [eax + 0xc8]
add ecx, 0x3a0
mov dword [ebp - 0x3c8], ecx
mov edx, dword [ebp - 0x3c8]
mov dword [ebp - 0xec], edx
push 0
push 0
lea ecx, [ebp - 0xb4]
call fcn.0040d8a0
mov eax, dword [0x4764d8]
push eax
push 0
mov ecx, dword [ebp - 0xec]
push ecx
lea ecx, [ebp - 0xb4]
call fcn.0040da60
mov dword [ebp - 4], 5
mov edx, dword [ebp - 0x154]
and edx, 2
je 0x430d34
and dword [ebp - 0x154], 0xfffffffd
push 0
push 1
lea ecx, [ebp - 0x108]
call fcn.0040d8a0
cmp dword [ebp - 0x9c], 8
jb 0x430d4b
mov eax, dword [ebp - 0xb0]
mov dword [ebp - 0x3cc], eax
jmp 0x430d57
lea ecx, [ebp - 0xb0]
mov dword [ebp - 0x3cc], ecx
mov edx, dword [ebp - 0x3cc]
push edx
mov eax, dword [ebp - 0x5c]
push eax
call dword [sym.imp.USER32.dll_SetWindowTextW]
push 0
mov ecx, dword [ebp - 0x74]
mov edx, dword [ecx + 0x458]
push edx
mov eax, dword [ebp - 0x5c]
push eax
mov ecx, dword [ebp - 0x380]
add ecx, 0xf0
call fcn.0040d1a0
push 5
mov ecx, dword [ebp - 0x5c]
push ecx
call dword [sym.imp.USER32.dll_ShowWindow]
mov edx, dword [ebp - 0x380]
mov eax, dword [edx + 8]
mov dword [ebp - 0x2d8], eax
push 0xa2
mov ecx, dword [ebp - 0x2d8]
push ecx
call dword [sym.imp.USER32.dll_GetDlgItem]
mov dword [ebp - 0x70], eax
push 0
mov edx, dword [ebp - 0x74]
mov eax, dword [edx + 0x480]
push eax
mov ecx, dword [ebp - 0x70]
push ecx
mov ecx, dword [ebp - 0x380]
add ecx, 0xf0
call fcn.0040d1a0
push 0
mov edx, dword [ebp - 0x70]
push edx
call dword [sym.imp.USER32.dll_ShowWindow]
mov eax, dword [ebp - 0x380]
mov ecx, dword [eax + 0xc8]
xor edx, edx
cmp dword [ecx + 0x3ec], 0
sete dl
movzx eax, dl
test eax, eax
je 0x430f69
mov ecx, dword [ebp - 0x74]
xor edx, edx
cmp dword [ecx + 0x478], 0
sete dl
movzx eax, dl
test eax, eax
je 0x430e71
mov ecx, dword [ebp - 0x380]
mov edx, dword [ecx + 0xc8]
add edx, 0x180
mov dword [ebp - 0x2dc], edx
mov eax, dword [ebp - 0x2dc]
cmp dword [eax + 0x18], 8
jb 0x430e54
mov ecx, dword [ebp - 0x2dc]
mov edx, dword [ecx + 4]
mov dword [ebp - 0x3d0], edx
jmp 0x430e63
mov eax, dword [ebp - 0x2dc]
add eax, 4
mov dword [ebp - 0x3d0], eax
mov ecx, dword [ebp - 0x3d0]
mov dword [ebp - 0x2f0], ecx
jmp 0x430eb8
mov edx, dword [ebp - 0x74]
add edx, 0x464
mov dword [ebp - 0x2e0], edx
mov eax, dword [ebp - 0x2e0]
cmp dword [eax + 0x18], 8
jb 0x430e9d
mov ecx, dword [ebp - 0x2e0]
mov edx, dword [ecx + 4]
mov dword [ebp - 0x3d4], edx
jmp 0x430eac
mov eax, dword [ebp - 0x2e0]
add eax, 4
mov dword [ebp - 0x3d4], eax
mov ecx, dword [ebp - 0x3d4]
mov dword [ebp - 0x2f0], ecx
lea edx, [ebp - 0x2e9]
mov dword [ebp - 0x2e8], edx
push 0
push 0
lea ecx, [ebp - 0x128]
call fcn.0040d8a0
mov eax, dword [ebp - 0x2f0]
mov dword [ebp - 0x3d8], eax
mov ecx, dword [ebp - 0x3d8]
add ecx, 2
mov dword [ebp - 0x3dc], ecx
mov edx, dword [ebp - 0x3d8]
mov ax, word [edx]
mov word [ebp - 0x3de], ax
add dword [ebp - 0x3d8], 2
cmp word [ebp - 0x3de], 0
jne 0x430eee
mov ecx, dword [ebp - 0x3d8]
sub ecx, dword [ebp - 0x3dc]
sar ecx, 1
mov dword [ebp - 0x3e4], ecx
mov edx, dword [ebp - 0x3e4]
push edx
mov eax, dword [ebp - 0x2f0]
push eax
lea ecx, [ebp - 0x128]
call fcn.0040d960
lea ecx, [ebp - 0x128]
mov dword [ebp - 0x3e8], ecx
mov byte [ebp - 4], 6
mov edx, dword [ebp - 0x154]
or edx, 4
mov dword [ebp - 0x154], edx
mov eax, dword [ebp - 0x3e8]
mov dword [ebp - 0x3ec], eax
jmp 0x430f81
mov ecx, dword [ebp - 0x380]
mov edx, dword [ecx + 0xc8]
add edx, 0x3d8
mov dword [ebp - 0x3ec], edx
mov eax, dword [ebp - 0x3ec]
mov dword [ebp - 0x10c], eax
push 0
push 0
lea ecx, [ebp - 0x30]
call fcn.0040d8a0
mov ecx, dword [0x4764d8]
push ecx
push 0
mov edx, dword [ebp - 0x10c]
push edx
lea ecx, [ebp - 0x30]
call fcn.0040da60
mov dword [ebp - 4], 8
mov eax, dword [ebp - 0x154]
and eax, 4
je 0x430fd9
and dword [ebp - 0x154], 0xfffffffb
push 0
push 1
lea ecx, [ebp - 0x128]
call fcn.0040d8a0
cmp dword [ebp - 0x18], 8
jb 0x430fea
mov ecx, dword [ebp - 0x2c]
mov dword [ebp - 0x3f0], ecx
jmp 0x430ff3
lea edx, [ebp - 0x2c]
mov dword [ebp - 0x3f0], edx
mov eax, dword [ebp - 0x3f0]
push eax
mov ecx, dword [ebp - 0x70]
push ecx
call dword [sym.imp.USER32.dll_SetWindowTextW]
push 5
mov edx, dword [ebp - 0x70]
push edx
call dword [sym.imp.USER32.dll_ShowWindow]
mov dword [ebp - 0x7c], 0
mov dword [ebp - 0x78], 0
mov dword [ebp - 0x34], 0
mov eax, dword [ebp - 0x74]
add eax, 0x270
mov dword [ebp - 0x2f4], eax
mov ecx, dword [ebp - 0x2f4]
push ecx
mov edx, dword [ebp - 0x2f4]
mov eax, dword [edx + 0xc]
push eax
lea ecx, [ebp - 0x130]
call fcn.00434470
mov ecx, dword [ebp - 0x130]
mov edx, dword [ebp - 0x12c]
mov dword [ebp - 0x7c], ecx
mov dword [ebp - 0x78], edx
jmp 0x431074
lea ecx, [ebp - 0x7c]
call fcn.0041ac70
mov eax, dword [ebp - 0x34]
add eax, 1
mov dword [ebp - 0x34], eax
mov ecx, dword [ebp - 0x74]
add ecx, 0x270
mov dword [ebp - 0x2fc], ecx
mov edx, dword [ebp - 0x2fc]
push edx
mov eax, dword [ebp - 0x2fc]
mov ecx, dword [eax + 0x10]
push ecx
lea ecx, [ebp - 0x138]
call fcn.00434470
lea edx, [ebp - 0x138]
push edx
lea ecx, [ebp - 0x7c]
call fcn.0041b600
movzx eax, al
neg eax
sbb eax, eax
add eax, 1
movzx ecx, al
test ecx, ecx
je 0x431274
mov edx, dword [ebp - 0x34]
push edx
push 6
mov eax, dword [ebp - 0x74]
push eax
mov ecx, dword [ebp - 0x380]
call fcn.00415e70
mov dword [ebp - 0x300], eax
mov ecx, dword [ebp - 0x380]
mov edx, dword [ecx + 8]
mov dword [ebp - 0x304], edx
mov eax, dword [ebp - 0x300]
push eax
mov ecx, dword [ebp - 0x304]
push ecx
call dword [sym.imp.USER32.dll_GetDlgItem]
mov dword [ebp - 0xc8], eax
mov dword [ebp - 0xc4], 0
xor edx, edx
mov dword [ebp - 0xc0], edx
mov dword [ebp - 0xbc], edx
mov dword [ebp - 0xb8], edx
lea ecx, [ebp - 0x7c]
call fcn.004344d0
mov dword [ebp - 0x308], eax
mov eax, dword [ebp - 0x308]
add eax, 0x2c
mov dword [ebp - 0x30c], eax
mov ecx, dword [ebp - 0x30c]
cmp dword [ecx + 0x18], 8
jb 0x43115f
mov edx, dword [ebp - 0x30c]
mov eax, dword [edx + 4]
mov dword [ebp - 0x3f4], eax
jmp 0x43116e
mov ecx, dword [ebp - 0x30c]
add ecx, 4
mov dword [ebp - 0x3f4], ecx
mov edx, dword [ebp - 0x3f4]
push edx
mov eax, dword [ebp - 0xc8]
push eax
mov ecx, dword [ebp - 0x380]
call fcn.0041e9a0
lea ecx, [ebp - 0xc4]
push ecx
mov edx, dword [ebp - 0xc8]
push edx
call dword [sym.imp.USER32.dll_GetWindowRect]
push 0
mov eax, dword [ebp - 0xc8]
push eax
call dword [sym.imp.USER32.dll_ShowWindow]
lea ecx, [ebp - 0x7c]
call fcn.004344d0
mov dword [ebp - 0x310], eax
mov ecx, dword [ebp - 0x310]
add ecx, 0x2c
mov dword [ebp - 0x314], ecx
mov edx, dword [ebp - 0x314]
cmp dword [edx + 0x18], 8
jb 0x4311e4
mov eax, dword [ebp - 0x314]
mov ecx, dword [eax + 4]
mov dword [ebp - 0x3f8], ecx
jmp 0x4311f3
mov edx, dword [ebp - 0x314]
add edx, 4
mov dword [ebp - 0x3f8], edx
mov eax, dword [ebp - 0x3f8]
push eax
mov ecx, dword [ebp - 0xc8]
push ecx
call dword [sym.imp.USER32.dll_SetWindowTextW]
lea ecx, [ebp - 0x7c]
call fcn.004344d0
mov dword [ebp - 0x318], eax
lea ecx, [ebp - 0x7c]
call fcn.004344d0
mov dword [ebp - 0x31c], eax
push 1
mov edx, dword [ebp - 0xb8]
sub edx, dword [ebp - 0xc0]
push edx
mov eax, dword [ebp - 0xbc]
sub eax, dword [ebp - 0xc4]
push eax
mov ecx, dword [ebp - 0x318]
mov edx, dword [ecx + 0x4c]
push edx
mov eax, dword [ebp - 0x31c]
mov ecx, dword [eax + 0x48]
push ecx
mov edx, dword [ebp - 0xc8]
push edx
call dword [sym.imp.USER32.dll_MoveWindow]
push 5
mov eax, dword [ebp - 0xc8]
push eax
call dword [sym.imp.USER32.dll_ShowWindow]
jmp 0x431063
lea ecx, [ebp - 0x325]
mov dword [ebp - 0x324], ecx
push 0
push 0
lea ecx, [ebp - 0x98]
call fcn.0040d8a0
mov byte [ebp - 4], 9
mov dword [ebp - 0x10], 0
mov edx, dword [ebp - 0x380]
mov eax, dword [edx + 0xc8]
xor ecx, ecx
cmp dword [eax + 0x360], 0
sete cl
movzx edx, cl
test edx, edx
je 0x431312
mov eax, dword [ebp - 0x74]
xor ecx, ecx
cmp dword [eax + 0x408], 0
sete cl
movzx edx, cl
test edx, edx
je 0x4312e9
mov eax, dword [ebp - 0x380]
mov ecx, dword [eax + 0xc8]
add ecx, 0xf4
mov dword [ebp - 0x3fc], ecx
jmp 0x4312f8
mov edx, dword [ebp - 0x74]
add edx, 0x3f4
mov dword [ebp - 0x3fc], edx
mov eax, dword [ebp - 0x3fc]
mov dword [ebp - 0x140], eax
mov ecx, dword [ebp - 0x140]
mov dword [ebp - 0x400], ecx
jmp 0x431329
mov edx, dword [ebp - 0x380]
mov eax, dword [edx + 0xc8]
add eax, 0x34c
mov dword [ebp - 0x400], eax
mov ecx, dword [ebp - 0x400]
mov dword [ebp - 0x13c], ecx
mov edx, dword [0x4764d8]
push edx
push 0
mov eax, dword [ebp - 0x13c]
push eax
lea ecx, [ebp - 0x98]
call fcn.0040da60
mov dword [ebp - 0x404], 0x4789c0
mov ecx, dword [ebp - 0x404]
add ecx, 2
mov dword [ebp - 0x408], ecx
mov edx, dword [ebp - 0x404]
mov ax, word [edx]
mov word [ebp - 0x40a], ax
add dword [ebp - 0x404], 2
cmp word [ebp - 0x40a], 0
jne 0x431369
mov ecx, dword [ebp - 0x404]
sub ecx, dword [ebp - 0x408]
sar ecx, 1
mov dword [ebp - 0x410], ecx
mov edx, dword [ebp - 0x410]
push edx
push 0x4789c0
lea ecx, [ebp - 0x98]
call fcn.0040ec70
mov eax, dword [ebp - 0x380]
mov ecx, dword [eax + 0xc8]
xor edx, edx
cmp dword [ecx + 0x37c], 0
sete dl
movzx eax, dl
test eax, eax
je 0x43142c
mov ecx, dword [ebp - 0x74]
xor edx, edx
cmp dword [ecx + 0x424], 0
sete dl
movzx eax, dl
test eax, eax
je 0x431404
mov ecx, dword [ebp - 0x380]
mov edx, dword [ecx + 0xc8]
add edx, 0x110
mov dword [ebp - 0x414], edx
jmp 0x431412
mov eax, dword [ebp - 0x74]
add eax, 0x410
mov dword [ebp - 0x414], eax
mov ecx, dword [ebp - 0x414]
mov dword [ebp - 0x148], ecx
mov edx, dword [ebp - 0x148]
mov dword [ebp - 0x418], edx
jmp 0x431444
mov eax, dword [ebp - 0x380]
mov ecx, dword [eax + 0xc8]
add ecx, 0x368
mov dword [ebp - 0x418], ecx
mov edx, dword [ebp - 0x418]
mov dword [ebp - 0x144], edx
mov eax, dword [0x4764d8]
push eax
push 0
mov ecx, dword [ebp - 0x144]
push ecx
lea ecx, [ebp - 0x98]
call fcn.0040f260
mov dword [ebp - 0x41c], 0x4789c8
mov edx, dword [ebp - 0x41c]
add edx, 2
mov dword [ebp - 0x420], edx
mov eax, dword [ebp - 0x41c]
mov cx, word [eax]
mov word [ebp - 0x422], cx
add dword [ebp - 0x41c], 2
cmp word [ebp - 0x422], 0
jne 0x431483
mov edx, dword [ebp - 0x41c]
sub edx, dword [ebp - 0x420]
sar edx, 1
mov dword [ebp - 0x428], edx
mov eax, dword [ebp - 0x428]
push eax
push 0x4789c8
lea ecx, [ebp - 0x98]
call fcn.0040ec70
mov ecx, dword [ebp - 0x380]
mov edx, dword [ecx + 0xc8]
xor eax, eax
cmp dword [edx + 0x398], 0
sete al
movzx ecx, al
test ecx, ecx
je 0x431546
mov edx, dword [ebp - 0x74]
xor eax, eax
cmp dword [edx + 0x440], 0
sete al
movzx ecx, al
test ecx, ecx
je 0x43151d
mov edx, dword [ebp - 0x380]
mov eax, dword [edx + 0xc8]
add eax, 0x12c
mov dword [ebp - 0x42c], eax
jmp 0x43152c
mov ecx, dword [ebp - 0x74]
add ecx, 0x42c
mov dword [ebp - 0x42c], ecx
mov edx, dword [ebp - 0x42c]
mov dword [ebp - 0x150], edx
mov eax, dword [ebp - 0x150]
mov dword [ebp - 0x430], eax
jmp 0x43155e
mov ecx, dword [ebp - 0x380]
mov edx, dword [ecx + 0xc8]
add edx, 0x384
mov dword [ebp - 0x430], edx
mov eax, dword [ebp - 0x430]
mov dword [ebp - 0x14c], eax
mov ecx, dword [0x4764d8]
push ecx
push 0
mov edx, dword [ebp - 0x14c]
push edx
lea ecx, [ebp - 0x98]
call fcn.0040f260
mov eax, dword [ebp - 0x380]
mov ecx, dword [eax + 0xc8]
xor edx, edx
cmp dword [ecx + 0x360], 0
sete dl
movzx eax, dl
test eax, eax
je 0x4315b5
mov ecx, dword [ebp - 0x74]
mov edx, dword [ecx + 0x44c]
mov dword [ebp - 0x434], edx
jmp 0x4315cd
mov eax, dword [ebp - 0x380]
mov ecx, dword [eax + 0xc8]
mov edx, dword [ecx + 0x338]
mov dword [ebp - 0x434], edx
mov eax, dword [ebp - 0x434]
mov dword [ebp - 0x10], eax
mov ecx, dword [ebp - 0x380]
mov edx, dword [ecx + 8]
mov dword [ebp - 0x32c], edx
push 0xa
mov eax, dword [ebp - 0x32c]
push eax
call dword [sym.imp.USER32.dll_GetDlgItem]
mov dword [ebp - 0x54], eax
push 0
mov ecx, dword [ebp - 0x54]
push ecx
call dword [sym.imp.USER32.dll_ShowWindow]
cmp dword [ebp - 0x80], 8
jb 0x431617
mov edx, dword [ebp - 0x94]
mov dword [ebp - 0x438], edx
jmp 0x431623
lea eax, [ebp - 0x94]
mov dword [ebp - 0x438], eax
mov ecx, dword [ebp - 0x438]
push ecx
mov edx, dword [ebp - 0x54]
push edx
call dword [sym.imp.USER32.dll_SetWindowTextW]
push 0
mov eax, dword [ebp - 0x10]
push eax
mov ecx, dword [ebp - 0x54]
push ecx
lea ecx, [ebp - 0x58]
call fcn.0040d1a0
push 5
mov edx, dword [ebp - 0x54]
push edx
call dword [sym.imp.USER32.dll_ShowWindow]
cmp dword [ebp - 0x38], 8
jb 0x431663
mov eax, dword [ebp - 0x4c]
mov dword [ebp - 0x43c], eax
jmp 0x43166c
lea ecx, [ebp - 0x4c]
mov dword [ebp - 0x43c], ecx
mov edx, dword [ebp - 0x74]
movzx eax, byte [edx + 0x460]
push eax
push 0xd
mov ecx, dword [ebp - 0x43c]
push ecx
mov ecx, dword [ebp - 0x380]
call fcn.004183e0
mov byte [ebp - 4], 8
push 0
push 1
lea ecx, [ebp - 0x98]
call fcn.0040d8a0
mov byte [ebp - 4], 5
push 0
push 1
lea ecx, [ebp - 0x30]
call fcn.0040d8a0
mov byte [ebp - 4], 2
push 0
push 1
lea ecx, [ebp - 0xb4]
call fcn.0040d8a0
mov dword [ebp - 4], 0xffffffff
push 0
push 1
lea ecx, [ebp - 0x50]
call fcn.0040d8a0
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
mov ecx, dword [ebp - 0x14]
xor ecx, ebp
call fcn.00458357
mov esp, ebp
pop ebp
ret 4