Function at 0x525320
Capabilities:
Hide graphical window

Disassembly:
push ebp
mov ebp, esp
add esp, 0xffffff38
push ebx
push esi
push edi
xor edx, edx
mov dword [ebp - 0xbc], edx
mov dword [ebp - 0xc0], edx
mov dword [ebp - 0xc8], edx
mov dword [ebp - 0x50], edx
mov dword [ebp - 0x54], edx
mov dword [ebp - 4], eax
xor eax, eax
push ebp
push 0x5263bc
push dword fs:[eax]
mov dword fs:[eax], esp
xor eax, eax
mov dword [0x5a8094], eax
xor eax, eax
mov dword [0x5a8098], eax
xor eax, eax
mov dword [0x5a809c], eax
mov byte [0x5a4af8], 0
xor eax, eax
mov dword [0x5a8194], eax
mov eax, dword [0x5a64e8]
mov eax, dword [eax]
call fcn.00411924
xor eax, eax
mov dword [ebp - 8], eax
mov eax, dword [ebp - 8]
lea eax, [eax + eax*2]
cmp dword [eax*8 + 0x5a80d0], 0xffffffff
je 0x5253be
mov eax, dword [ebp - 8]
lea eax, [eax + eax*2]
cmp dword [eax*8 + 0x5a80d0], 0
je 0x5253be
mov eax, dword [ebp - 8]
lea eax, [eax + eax*2]
mov eax, dword [eax*8 + 0x5a80d0]
push eax
call sub.user32.dll_DestroyWindow
mov eax, dword [ebp - 8]
lea eax, [eax + eax*2]
mov dword [eax*8 + 0x5a80d0], 0xffffffff
inc dword [ebp - 8]
cmp dword [ebp - 8], 8
jl 0x52538b
cmp dword [0x5a8190], 0xffffffff
je 0x5253f5
cmp dword [0x5a8190], 0
je 0x5253f5
mov eax, dword [0x5a8190]
push eax
call sub.user32.dll_DestroyWindow
mov dword [0x5a8190], 0xffffffff
xor eax, eax
push ebp
push 0x52637f
push dword fs:[eax]
mov dword fs:[eax], esp
test byte [0x5a8006], 4
jne 0x525428
test byte [0x5a8006], 0x40
jne 0x525428
test byte [0x5a8007], 2
jne 0x52542c
xor eax, eax
jmp 0x52542e
mov al, 1
mov byte [0x5a80cc], al
cmp byte [0x5a7fe8], 0
je 0x525500
mov word [ebp - 0x80], 1
mov word [ebp - 0x7e], 0xffff
xor eax, eax
mov dword [ebp - 0x7c], eax
mov eax, dword [0x5a800c]
mov dword [ebp - 0x78], eax
mov eax, dword [0x5a8004]
or eax, 0x10000000
mov dword [ebp - 0x74], eax
mov ax, word [0x5a7fec]
mov word [ebp - 0x70], ax
mov ax, word [0x5a7ff0]
mov word [ebp - 0x6e], ax
mov ax, word [0x5a7ff4]
mov word [ebp - 0x6c], ax
fild dword [0x5a8064]
fdiv dword [0x5a80c4]
call fcn.00402964
mov word [ebp - 0x6a], ax
fild dword [0x5a8068]
fdiv dword [0x5a80c8]
call fcn.00402964
mov word [ebp - 0x68], ax
mov word [ebp - 0x66], 0
mov word [ebp - 0x64], 0
test byte [ebp - 0x71], 0x80
je 0x5254c7
and dword [ebp - 0x74], 0x7fffffff
test byte [ebp - 0x71], 0x40
jne 0x5254d4
or dword [ebp - 0x74], 0x40000000
cmp byte [0x5a8038], 0
je 0x5254e3
or dword [ebp - 0x74], 0x40
jmp 0x5254e7
and dword [ebp - 0x74], 0xffffffbf
lea edx, [ebp - 0x80]
mov eax, dword [0x5a64e8]
mov eax, dword [eax]
mov ecx, 0x1e
mov ebx, dword [eax]
call dword [ebx + 8]
jmp 0x5255da
mov eax, dword [0x5a8004]
or eax, 0x10000000
mov dword [ebp - 0x98], eax
mov eax, dword [0x5a800c]
mov dword [ebp - 0x94], eax
mov ax, word [0x5a7fec]
mov word [ebp - 0x90], ax
mov ax, word [0x5a7ff0]
mov word [ebp - 0x8e], ax
mov ax, word [0x5a7ff4]
mov word [ebp - 0x8c], ax
fild dword [0x5a8064]
fdiv dword [0x5a80c4]
call fcn.00402964
mov word [ebp - 0x8a], ax
fild dword [0x5a8068]
fdiv dword [0x5a80c8]
call fcn.00402964
mov word [ebp - 0x88], ax
mov word [ebp - 0x86], 0
mov word [ebp - 0x84], 0
test byte [ebp - 0x95], 0x80
je 0x525597
and dword [ebp - 0x98], 0x7fffffff
test byte [ebp - 0x95], 0x40
jne 0x5255aa
or dword [ebp - 0x98], 0x40000000
cmp byte [0x5a8038], 0
je 0x5255bc
or dword [ebp - 0x98], 0x40
jmp 0x5255c3
and dword [ebp - 0x98], 0xffffffbf
lea edx, [ebp - 0x98]
mov eax, dword [0x5a64e8]
mov eax, dword [eax]
mov ecx, 0x16
mov ebx, dword [eax]
call dword [ebx + 8]
push ebp
mov eax, dword [0x5a8020]
call fcn.00524f8c
pop ecx
cmp byte [0x5a8038], 0
je 0x525646
mov edx, 0x5a8040
mov eax, dword [0x5a64e8]
mov eax, dword [eax]
mov ecx, 2
mov ebx, dword [eax]
call dword [ebx + 8]
cmp byte [0x5a7fe8], 0
je 0x52563a
mov edx, 0x5a8044
mov eax, dword [0x5a64e8]
mov eax, dword [eax]
mov ecx, 2
mov ebx, dword [eax]
call dword [ebx + 8]
mov edx, 0x5a8048
mov eax, dword [0x5a64e8]
mov eax, dword [eax]
mov ecx, 2
mov ebx, dword [eax]
call dword [ebx + 8]
push ebp
mov eax, dword [0x5a803c]
call fcn.00524f8c
pop ecx
xor eax, eax
mov dword [ebp - 0x18], eax
cmp byte [0x5a7fe8], 0
je 0x525668
lea edx, [ebp - 0x18]
mov eax, dword [0x5a64e8]
mov eax, dword [eax]
mov ecx, 4
mov ebx, dword [eax]
call dword [ebx + 8]
mov eax, dword [0x5a64e8]
mov eax, dword [eax]
call fcn.00411258
call fcn.005343bc
mov ebx, eax
mov eax, dword [0x5a64e8]
mov eax, dword [eax]
call fcn.00411258
sub ebx, eax
mov dword [ebp - 0x18], ebx
cmp dword [ebp - 0x18], 0
je 0x5256a9
xor eax, eax
mov dword [ebp - 0x1c], eax
lea edx, [ebp - 0x1c]
mov eax, dword [0x5a64e8]
mov eax, dword [eax]
mov ecx, dword [ebp - 0x18]
mov ebx, dword [eax]
call dword [ebx + 8]
mov eax, dword [0x5a7fec]
dec eax
test eax, eax
jl 0x525b39
inc eax
mov dword [ebp - 0x5c], eax
mov dword [ebp - 8], 0
mov edx, dword [ebp - 8]
mov eax, dword [0x5a806c]
call fcn.0040e308
mov dword [ebp - 0x10], eax
mov eax, dword [ebp - 0x10]
cmp dword [eax], 6
jne 0x5256fe
push ebp
lea ecx, [ebp - 0xbc]
mov edx, dword [ebp - 8]
mov eax, dword [0x5a8070]
mov ebx, dword [eax]
call dword [ebx + 0xc]
mov eax, dword [ebp - 0xbc]
call fcn.0052505c
pop ecx
test al, al
je 0x525702
xor eax, eax
jmp 0x525704
mov al, 1
mov byte [ebp - 0x29], al
mov eax, dword [ebp - 0x10]
mov eax, dword [eax + 0x2c]
mov dword [ebp - 0x14], eax
mov eax, dword [ebp - 0x10]
mov eax, dword [eax + 0x30]
mov dword [ebp - 0x18], eax
mov eax, dword [ebp - 0x18]
inc eax
call fcn.004026a8
mov dword [ebp - 0x28], eax
xor eax, eax
push ebp
push 0x525b26
push dword fs:[eax]
mov dword fs:[eax], esp
mov eax, dword [ebp - 0x28]
xor ecx, ecx
mov edx, dword [ebp - 0x18]
call fcn.00402b14
mov edx, dword [ebp - 0x28]
mov eax, dword [ebp - 0x14]
mov ecx, dword [ebp - 0x18]
call fcn.004027e0
cmp byte [0x5a7fe8], 0
jne 0x525899
mov eax, dword [ebp - 0x28]
mov dword [ebp - 0x20], eax
mov eax, dword [ebp - 0x10]
mov eax, dword [eax + 0x1c]
mov edx, dword [ebp - 0x20]
mov dword [edx], eax
mov eax, dword [ebp - 0x10]
mov eax, dword [eax + 0x24]
mov edx, dword [ebp - 0x20]
mov dword [edx + 4], eax
mov eax, dword [ebp - 0x10]
fild dword [eax + 0x44]
fdiv dword [0x5a80c4]
call fcn.00402964
mov edx, dword [ebp - 0x20]
mov word [edx + 8], ax
mov eax, dword [ebp - 0x10]
fild dword [eax + 0x48]
fdiv dword [0x5a80c8]
call fcn.00402964
mov edx, dword [ebp - 0x20]
mov word [edx + 0xa], ax
mov eax, dword [ebp - 0x10]
fild dword [eax + 0x4c]
fdiv dword [0x5a80c4]
call fcn.00402964
mov edx, dword [ebp - 0x20]
mov word [edx + 0xc], ax
mov eax, dword [ebp - 0x10]
fild dword [eax + 0x50]
fdiv dword [0x5a80c8]
call fcn.00402964
mov edx, dword [ebp - 0x20]
mov word [edx + 0xe], ax
mov eax, dword [ebp - 0x10]
cmp dword [eax], 4
jne 0x5257ee
mov eax, dword [ebp - 0x10]
mov ax, word [eax + 0x14]
mov edx, dword [ebp - 0x20]
mov word [edx + 0xe], ax
push ebp
mov eax, dword [ebp - 0x20]
lea ecx, [eax + 4]
mov eax, dword [ebp - 0x20]
mov edx, dword [eax]
mov eax, dword [ebp - 0x10]
mov eax, dword [eax]
call fcn.005252e4
pop ecx
mov edx, dword [ebp - 0x20]
mov dword [edx], eax
mov eax, dword [ebp - 0x10]
cmp dword [eax], 6
jne 0x52584e
lea ecx, [ebp - 0xc0]
mov edx, dword [ebp - 8]
mov eax, dword [0x5a8070]
mov ebx, dword [eax]
call dword [ebx + 0xc]
mov eax, dword [ebp - 0xc0]
lea edx, [ebp - 0xbc]
call fcn.00406fa4
mov eax, dword [ebp - 0xbc]
mov edx, 0x5263d4
call fcn.00403d9c
jne 0x52584e
mov eax, dword [ebp - 0x20]
and dword [eax], 0xffffffef
cmp byte [ebp - 0x29], 0
je 0x525888
mov eax, dword [ebp - 0x20]
mov word [eax + 0x12], 0xffff
mov eax, dword [ebp - 0x20]
mov word [eax + 0x14], 0x82
mov eax, dword [ebp - 0x20]
mov word [eax + 0x16], 0
mov eax, dword [ebp - 0x20]
mov word [eax + 0x18], 0
mov eax, dword [ebp - 0x20]
mov word [eax + 0x1a], 0
mov dword [ebp - 0x18], 0x1c
mov ax, word [ebp - 8]
inc eax
mov edx, dword [ebp - 0x20]
mov word [edx + 0x10], ax
jmp 0x5259d1
mov eax, dword [ebp - 0x28]
mov dword [ebp - 0x24], eax
mov eax, dword [ebp - 0x10]
mov eax, dword [eax + 0x24]
mov edx, dword [ebp - 0x24]
mov dword [edx], eax
mov eax, dword [ebp - 0x10]
mov eax, dword [eax + 0x1c]
mov edx, dword [ebp - 0x24]
mov dword [edx + 4], eax
mov eax, dword [ebp - 0x10]
fild dword [eax + 0x44]
fdiv dword [0x5a80c4]
call fcn.00402964
mov edx, dword [ebp - 0x24]
mov word [edx + 8], ax
mov eax, dword [ebp - 0x10]
fild dword [eax + 0x48]
fdiv dword [0x5a80c8]
call fcn.00402964
mov edx, dword [ebp - 0x24]
mov word [edx + 0xa], ax
mov eax, dword [ebp - 0x10]
fild dword [eax + 0x4c]
fdiv dword [0x5a80c4]
call fcn.00402964
mov edx, dword [ebp - 0x24]
mov word [edx + 0xc], ax
mov eax, dword [ebp - 0x10]
fild dword [eax + 0x50]
fdiv dword [0x5a80c8]
call fcn.00402964
mov edx, dword [ebp - 0x24]
mov word [edx + 0xe], ax
mov eax, dword [ebp - 0x10]
cmp dword [eax], 4
jne 0x52592c
mov eax, dword [ebp - 0x10]
mov ax, word [eax + 0x14]
mov edx, dword [ebp - 0x24]
mov word [edx + 0xe], ax
push ebp
mov ecx, dword [ebp - 0x24]
mov eax, dword [ebp - 0x24]
mov edx, dword [eax + 4]
mov eax, dword [ebp - 0x10]
mov eax, dword [eax]
call fcn.005252e4
pop ecx
mov edx, dword [ebp - 0x24]
mov dword [edx + 4], eax
mov eax, dword [ebp - 0x10]
cmp dword [eax], 6
jne 0x52598c
lea ecx, [ebp - 0xc0]
mov edx, dword [ebp - 8]
mov eax, dword [0x5a8070]
mov ebx, dword [eax]
call dword [ebx + 0xc]
mov eax, dword [ebp - 0xc0]
lea edx, [ebp - 0xbc]
call fcn.00406fa4
mov eax, dword [ebp - 0xbc]
mov edx, 0x5263d4
call fcn.00403d9c
jne 0x52598c
mov eax, dword [ebp - 0x24]
and dword [eax + 4], 0xffffffef
cmp byte [ebp - 0x29], 0
je 0x5259c5
mov eax, dword [ebp - 0x24]
mov word [eax + 0x14], 0xffff
mov eax, dword [ebp - 0x24]
mov word [eax + 0x16], 0x82
mov eax, dword [ebp - 0x24]
mov word [eax + 0x18], 0
mov eax, dword [ebp - 0x24]
mov word [eax + 0x1a], 0
mov eax, dword [ebp - 0x24]
xor edx, edx
mov dword [eax + 0x1c], edx
mov dword [ebp - 0x18], 0x20
mov ax, word [ebp - 8]
inc eax
mov edx, dword [ebp - 0x24]
mov word [edx + 0x10], ax
mov edx, dword [ebp - 0x28]
mov eax, dword [0x5a64e8]
mov eax, dword [eax]
mov ecx, dword [ebp - 0x18]
mov ebx, dword [eax]
call dword [ebx + 8]
cmp byte [ebp - 0x29], 0
jne 0x525a67
mov eax, dword [ebp - 0x10]
cmp byte [eax + 0x34], 0
je 0x525a47
mov dword [ebp - 0x18], 2
mov dword [ebp - 0x1c], 0xffff
lea edx, [ebp - 0x1c]
mov eax, dword [0x5a64e8]
mov eax, dword [eax]
mov ecx, dword [ebp - 0x18]
mov ebx, dword [eax]
call dword [ebx + 8]
lea ecx, [ebp - 0xbc]
mov edx, dword [ebp - 8]
mov eax, dword [0x5a8074]
mov ebx, dword [eax]
call dword [ebx + 0xc]
mov eax, dword [ebp - 0xbc]
call fcn.00407460
mov dword [ebp - 0x1c], eax
lea edx, [ebp - 0x1c]
mov eax, dword [0x5a64e8]
mov eax, dword [eax]
mov ecx, dword [ebp - 0x18]
mov ebx, dword [eax]
call dword [ebx + 8]
jmp 0x525a67
push ebp
lea ecx, [ebp - 0xbc]
mov edx, dword [ebp - 8]
mov eax, dword [0x5a8078]
mov ebx, dword [eax]
call dword [ebx + 0xc]
mov eax, dword [ebp - 0xbc]
call fcn.00524f8c
pop ecx
cmp byte [0x5a7fe8], 0
je 0x525a8e
mov dword [ebp - 0x18], 2
xor eax, eax
mov dword [ebp - 0x1c], eax
lea edx, [ebp - 0x1c]
mov eax, dword [0x5a64e8]
mov eax, dword [eax]
mov ecx, dword [ebp - 0x18]
mov ebx, dword [eax]
call dword [ebx + 8]
cmp byte [ebp - 0x29], 0
jne 0x525b10
mov eax, dword [0x5a7fec]
dec eax
cmp eax, dword [ebp - 8]
je 0x525acf
cmp byte [0x5a7fe8], 0
je 0x525ab1
mov dword [ebp - 0x18], 4
jmp 0x525ab8
mov dword [ebp - 0x18], 2
xor eax, eax
mov dword [ebp - 0x1c], eax
lea edx, [ebp - 0x1c]
mov eax, dword [0x5a64e8]
mov eax, dword [eax]
mov ecx, dword [ebp - 0x18]
mov ebx, dword [eax]
call dword [ebx + 8]
mov eax, dword [0x5a64e8]
mov eax, dword [eax]
call fcn.00411258
call fcn.005343bc
mov ebx, eax
mov eax, dword [0x5a64e8]
mov eax, dword [eax]
call fcn.00411258
sub ebx, eax
mov dword [ebp - 0x18], ebx
cmp dword [ebp - 0x18], 0
je 0x525b10
xor eax, eax
mov dword [ebp - 0x1c], eax
lea edx, [ebp - 0x1c]
mov eax, dword [0x5a64e8]
mov eax, dword [eax]
mov ecx, dword [ebp - 0x18]
mov ebx, dword [eax]
call dword [ebx + 8]
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
push 0x525b2d
mov eax, dword [ebp - 0x28]
call fcn.004026c0
ret
mov eax, 0x5a8198
xor ecx, ecx
mov edx, pe_nt_image_headers32
call fcn.00402b14
mov edx, 0x5a8198
mov eax, dword [0x5a64e8]
mov eax, dword [eax]
mov ecx, pe_nt_image_headers32
mov ebx, dword [eax]
call dword [ebx + 8]
mov eax, dword [0x5a64e8]
mov eax, dword [eax]
xor ecx, ecx
xor edx, edx
mov ebx, dword [eax]
call dword [ebx + 0xc]
mov eax, dword [0x5a64e8]
mov eax, dword [eax]
mov eax, dword [eax + 4]
mov dword [ebp - 0x14], eax
push 0x523188
mov eax, dword [0x5a6450]
mov eax, dword [eax]
call fcn.0042771c
mov ecx, eax
mov eax, dword [ebp - 0x14]
mov edx, eax
mov eax, dword [ebp - 4]
call fcn.0040637c
mov dword [0x5a8054], eax
cmp dword [0x5a8054], 0
je 0x52633c
mov eax, dword [0x5a66ec]
cmp dword [eax], 0xffffffff
jne 0x525c06
mov eax, dword [0x5a67e4]
cmp dword [eax], 0xffffffff
jne 0x525c06
lea eax, [ebp - 0xa8]
push eax
mov eax, dword [0x5a5f5c]
mov eax, dword [eax]
mov eax, dword [eax + 0x2bc]
call fcn.0042771c
push eax
call sub.user32.dll_GetWindowRect
mov eax, dword [ebp - 0xa8]
add eax, 0x40
mov edx, dword [0x5a66ec]
mov dword [edx], eax
mov eax, dword [ebp - 0x9c]
sub eax, 0x96
mov edx, dword [0x5a67e4]
mov dword [edx], eax
mov eax, dword [0x5a8054]
push eax
push 0x5228dc
mov eax, dword [0x5a8054]
push eax
call sub.user32.dll_EnumChildWindows
push 1
mov eax, dword [0x5a8054]
push eax
call sub.user32.dll_ShowWindow
mov dword [ebp - 0x18], 0x90
mov eax, dword [ebp - 0x18]
push eax
mov eax, dword [0x5a6450]
mov eax, dword [eax]
mov eax, dword [eax + 0x3c]
push eax
mov eax, dword [0x5a6450]
mov eax, dword [eax]
mov eax, dword [eax + 0x38]
push eax
mov eax, dword [0x5a67e4]
mov eax, dword [eax]
push eax
mov eax, dword [0x5a66ec]
mov eax, dword [eax]
push eax
push 0
mov eax, dword [0x5a6450]
mov eax, dword [eax]
call fcn.0042771c
push eax
call sub.user32.dll_SetWindowPos
mov eax, dword [0x5a6450]
mov eax, dword [eax]
call fcn.0042771c
push eax
mov eax, dword [0x5a8054]
push eax
call sub.user32.dll_SetParent
mov eax, dword [0x5a6450]
mov eax, dword [eax]
call fcn.0042355c
mov dword [0x5a80bc], eax
mov eax, dword [0x5a6450]
mov eax, dword [eax]
call fcn.004235a0
mov dword [0x5a80c0], eax
mov dword [0x5a8094], 0xffffffff
mov eax, dword [0x5a5f04]
cmp byte [eax], 0
je 0x525cec
call fcn.00522568
push 0
mov eax, dword [0x5a6450]
mov eax, dword [eax]
call fcn.004235a0
push eax
mov eax, dword [0x5a6450]
mov eax, dword [eax]
call fcn.0042355c
push eax
push 0
push 0
mov eax, dword [0x5a8190]
push eax
call sub.user32.dll_MoveWindow
push 0xffffffffffffffff
mov eax, dword [0x5a8054]
push eax
call sub.user32.dll_EnableWindow
lea eax, [ebp - 0xa8]
push eax
mov eax, dword [0x5a8054]
push eax
call sub.user32.dll_GetClientRect
mov eax, dword [ebp - 0xa0]
sub eax, dword [ebp - 0xa8]
mov dword [0x5a8064], eax
mov eax, dword [ebp - 0x9c]
sub eax, dword [ebp - 0xa4]
mov dword [0x5a8068], eax
xor eax, eax
mov dword [ebp - 0xa8], eax
xor eax, eax
mov dword [ebp - 0xa4], eax
mov eax, dword [0x5a7ff8]
mov dword [ebp - 0xa0], eax
mov eax, dword [0x5a7ffc]
mov dword [ebp - 0x9c], eax
lea eax, [ebp - 0xa8]
push eax
mov eax, dword [0x5a8054]
push eax
call sub.user32.dll_MapDialogRect
mov eax, dword [ebp - 0xa0]
sub eax, dword [ebp - 0xa8]
mov dword [ebp - 0xc4], eax
fild dword [ebp - 0xc4]
fild dword [0x5a7ff8]
fdivp st(1)
fstp dword [0x5a80c4]
wait
mov eax, dword [ebp - 0x9c]
sub eax, dword [ebp - 0xa4]
mov dword [ebp - 0xc4], eax
fild dword [ebp - 0xc4]
fild dword [0x5a7ffc]
fdivp st(1)
fstp dword [0x5a80c8]
wait
mov eax, dword [0x5a7fec]
dec eax
test eax, eax
jl 0x526320
inc eax
mov dword [ebp - 0x5c], eax
mov dword [ebp - 8], 0
mov edx, dword [ebp - 8]
mov eax, dword [0x5a806c]
call fcn.0040e308
mov dword [ebp - 0x10], eax
mov eax, dword [ebp - 0x10]
cmp dword [eax], 1
jne 0x526314
mov eax, dword [ebp - 0x10]
mov eax, dword [eax + 0x18]
and eax, 0xf
sub eax, 3
je 0x525e04
sub eax, 0xb
je 0x525fdc
jmp 0x526314
xor eax, eax
mov dword [ebp - 0x30], eax
mov eax, dword [0x5a6210]
mov eax, dword [eax]
mov edx, dword [eax]
call dword [edx + 0x14]
dec eax
test eax, eax
jl 0x525ec8
inc eax
mov dword [ebp - 0x60], eax
mov dword [ebp - 0xc], 0
lea ecx, [ebp - 0xc0]
mov edx, dword [ebp - 8]
mov eax, dword [0x5a8074]
mov ebx, dword [eax]
call dword [ebx + 0xc]
mov eax, dword [ebp - 0xc0]
lea edx, [ebp - 0xbc]
call fcn.00406f68
mov eax, dword [ebp - 0xbc]
push eax
lea ecx, [ebp - 0xc8]
mov eax, dword [0x5a6210]
mov eax, dword [eax]
mov edx, dword [ebp - 0xc]
mov ebx, dword [eax]
call dword [ebx + 0xc]
mov eax, dword [ebp - 0xc8]
lea edx, [ebp - 0xc0]
call fcn.00406f68
mov edx, dword [ebp - 0xc0]
pop eax
call fcn.00403d9c
jne 0x525ebc
lea ecx, [ebp - 0xbc]
mov edx, dword [ebp - 8]
mov eax, dword [0x5a8074]
mov ebx, dword [eax]
call dword [ebx + 0xc]
mov eax, dword [ebp - 0xbc]
push eax
mov eax, dword [0x5a6210]
mov eax, dword [eax]
mov edx, dword [ebp - 0xc]
mov ecx, dword [eax]
call dword [ecx + 0x18]
pop edx
call fcn.005237b4
mov dword [ebp - 0x30], eax
jmp 0x525ec8
inc dword [ebp - 0xc]
dec dword [ebp - 0x60]
jne 0x525e29
cmp dword [ebp - 0x30], 0
jne 0x525f2f
xor eax, eax
push ebp
push 0x525f15
push dword fs:[eax]
mov dword fs:[eax], esp
lea ecx, [ebp - 0xbc]
mov edx, dword [ebp - 8]
mov eax, dword [0x5a8074]
mov ebx, dword [eax]
call dword [ebx + 0xc]
mov eax, dword [ebp - 0xbc]
call fcn.00407460
mov dword [ebp - 0x18], eax
mov eax, dword [ebp - 0x18]
push eax
push 0
call sub.user32.dll_LoadIconA
mov dword [ebp - 0x30], eax
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x525f1f
cmp dword [ebp - 0x30], 0
jne 0x525f2f
mov eax, dword [0x5a6650]
mov eax, dword [eax]
mov dword [ebp - 0x30], eax
mov eax, dword [ebp - 0x30]
push eax
push 1
push 0x172
mov eax, dword [ebp - 0x10]
mov eax, dword [eax + 0x40]
push eax
call sub.user32.dll_SendMessageA
mov eax, dword [ebp - 0x10]
cmp dword [eax + 0x14], 0x14
jne 0x525f62
mov eax, dword [ebp - 0x10]
cmp dword [eax + 0x10], 0x15
je 0x525f62
mov eax, dword [ebp - 0x10]
mov dword [eax + 0x10], 0x15
mov eax, dword [ebp - 0x10]
mov eax, dword [eax + 0x14]
push eax
lea eax, [ebp - 0xb8]
push eax
mov eax, dword [ebp - 0x10]
mov ecx, dword [eax + 0x10]
xor edx, edx
xor eax, eax
call fcn.0040d548
lea eax, [ebp - 0xb8]
push eax
mov eax, dword [0x5a8054]
push eax
call sub.user32.dll_MapDialogRect
push 0x316
mov eax, dword [ebp - 0xac]
push eax
mov eax, dword [ebp - 0xb0]
push eax
mov eax, dword [ebp - 0x10]
mov eax, dword [eax + 0xc]
push eax
mov eax, dword [ebp - 0x10]
mov eax, dword [eax + 8]
push eax
push 0
mov eax, dword [ebp - 0x10]
mov eax, dword [eax + 0x40]
push eax
call sub.user32.dll_SetWindowPos
mov eax, dword [ebp - 0x10]
fild dword [eax + 0x10]
fmul dword [0x5a80c4]
call fcn.00402964
mov edx, dword [ebp - 0x10]
mov dword [edx + 0x4c], eax
jmp 0x526314
lea ecx, [ebp - 0xbc]
mov edx, dword [ebp - 8]
mov eax, dword [0x5a8074]
mov ebx, dword [eax]
call dword [ebx + 0xc]
mov eax, dword [ebp - 0xbc]
lea edx, [ebp - 0x50]
call fcn.00406f68
lea eax, [ebp - 0x54]
call fcn.00403a10
mov eax, dword [ebp - 0x10]
cmp byte [eax + 0x34], 0
je 0x52601c
lea edx, [ebp - 0x54]
mov eax, dword [ebp - 0x10]
mov eax, dword [eax + 4]
call fcn.004073f4
mov dl, 1
mov eax, dword [0x40d000]
call fcn.00402e3c
mov dword [ebp - 0x34], eax
mov eax, dword [ebp - 0x34]
call fcn.00411924
mov dl, 1
mov eax, dword [0x4179dc]
call fcn.0041db40
mov dword [ebp - 0x48], eax
mov byte [ebp - 0x55], 0
xor eax, eax
push ebp
push 0x52630d
push dword fs:[eax]
mov dword fs:[eax], esp
mov eax, dword [0x5a6690]
mov eax, dword [eax]
mov edx, dword [eax]
call dword [edx + 0x14]
dec eax
test eax, eax
jl 0x526186
inc eax
mov dword [ebp - 0x60], eax
mov dword [ebp - 0xc], 0
lea ecx, [ebp - 0xc0]
mov eax, dword [0x5a6690]
mov eax, dword [eax]
mov edx, dword [ebp - 0xc]
mov ebx, dword [eax]
call dword [ebx + 0xc]
mov eax, dword [ebp - 0xc0]
lea edx, [ebp - 0xbc]
call fcn.00406f68
mov edx, dword [ebp - 0xbc]
mov eax, dword [ebp - 0x50]
call fcn.00403d9c
je 0x5260e4
lea ecx, [ebp - 0xc0]
mov eax, dword [0x5a6690]
mov eax, dword [eax]
mov edx, dword [ebp - 0xc]
mov ebx, dword [eax]
call dword [ebx + 0xc]
mov eax, dword [ebp - 0xc0]
lea edx, [ebp - 0xbc]
call fcn.00406f68
mov edx, dword [ebp - 0xbc]
mov eax, dword [ebp - 0x54]
call fcn.00403d9c
jne 0x52617a
mov eax, dword [0x5a6690]
mov eax, dword [eax]
mov edx, dword [ebp - 0xc]
mov ecx, dword [eax]
call dword [ecx + 0x18]
mov eax, dword [eax + 8]
mov dword [ebp - 0x40], eax
mov eax, dword [0x5a6690]
mov eax, dword [eax]
mov edx, dword [ebp - 0xc]
mov ecx, dword [eax]
call dword [ecx + 0x18]
mov eax, dword [eax + 0xc]
mov dword [ebp - 0x44], eax
mov eax, dword [ebp - 0x40]
add eax, dword [ebp - 0x44]
mov dword [ebp - 0x38], eax
mov eax, dword [ebp - 0x38]
mov eax, dword [eax]
add eax, dword [ebp - 0x40]
mov edx, dword [0x5a5f6c]
sub eax, dword [edx]
mov dword [ebp - 0x3c], eax
xor eax, eax
push ebp
push 0x52616e
push dword fs:[eax]
mov dword fs:[eax], esp
mov eax, dword [ebp - 0x38]
mov ecx, dword [eax + 4]
mov edx, dword [ebp - 0x3c]
mov eax, dword [ebp - 0x34]
call fcn.00536758
xor ecx, ecx
xor edx, edx
mov eax, dword [ebp - 0x34]
mov ebx, dword [eax]
call dword [ebx + 0xc]
mov edx, dword [ebp - 0x34]
mov eax, dword [ebp - 0x48]
mov ecx, dword [eax]
call dword [ecx + 0x50]
mov byte [ebp - 0x55], 1
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x526186
inc dword [ebp - 0xc]
dec dword [ebp - 0x60]
jne 0x526074
cmp byte [ebp - 0x55], 0
jne 0x526251
mov dl, 1
mov eax, dword [0x4179dc]
call fcn.0041db40
mov dword [ebp - 0x4c], eax
xor eax, eax
push ebp
push 0x52624a
push dword fs:[eax]
mov dword fs:[eax], esp
mov edx, dword [0x5a62ac]
mov edx, dword [edx]
mov ecx, 0x5263ec
mov eax, dword [ebp - 0x4c]
call fcn.0041e644
mov eax, dword [ebp - 0x10]
mov edx, dword [eax + 0x10]
mov eax, dword [ebp - 0x48]
mov ecx, dword [eax]
call dword [ecx + 0x40]
mov eax, dword [ebp - 0x10]
mov edx, dword [eax + 0x14]
mov eax, dword [ebp - 0x48]
mov ecx, dword [eax]
call dword [ecx + 0x34]
push 0xcc0020
mov eax, dword [ebp - 0x4c]
mov edx, dword [eax]
call dword [edx + 0x20]
push eax
mov eax, dword [ebp - 0x4c]
mov edx, dword [eax]
call dword [edx + 0x2c]
push eax
push 0
push 0
mov eax, dword [ebp - 0x4c]
call fcn.0041e074
call fcn.00419878
push eax
mov eax, dword [ebp - 0x10]
mov eax, dword [eax + 0x14]
push eax
mov eax, dword [ebp - 0x10]
mov eax, dword [eax + 0x10]
push eax
push 0
push 0
mov eax, dword [ebp - 0x48]
call fcn.0041e074
call fcn.00419878
push eax
call sub.gdi32.dll_StretchBlt
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
push 0x526251
mov eax, dword [ebp - 0x4c]
call fcn.0041e00c
mov eax, dword [ebp - 0x4c]
call fcn.00402e64
ret
mov eax, dword [ebp - 0x48]
mov edx, dword [eax]
call dword [edx + 0x60]
test eax, eax
je 0x526279
mov eax, dword [ebp - 0x48]
mov edx, dword [eax]
call dword [edx + 0x60]
push eax
push 0
push 0x172
mov eax, dword [ebp - 0x10]
mov eax, dword [eax + 0x40]
push eax
call sub.user32.dll_SendMessageA
mov eax, dword [ebp - 0x10]
mov eax, dword [eax + 0x14]
push eax
lea eax, [ebp - 0xb8]
push eax
mov eax, dword [ebp - 0x10]
mov ecx, dword [eax + 0x10]
xor edx, edx
xor eax, eax
call fcn.0040d548
lea eax, [ebp - 0xb8]
push eax
mov eax, dword [0x5a8054]
push eax
call sub.user32.dll_MapDialogRect
push 0x316
mov eax, dword [ebp - 0xac]
push eax
mov eax, dword [ebp - 0xb0]
push eax
mov eax, dword [ebp - 0x10]
mov eax, dword [eax + 0xc]
push eax
mov eax, dword [ebp - 0x10]
mov eax, dword [eax + 8]
push eax
push 0
mov eax, dword [ebp - 0x10]
mov eax, dword [eax + 0x40]
push eax
call sub.user32.dll_SetWindowPos
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
push 0x526314
mov eax, dword [ebp - 0x48]
call fcn.0041e00c
mov eax, dword [ebp - 0x48]
call fcn.0041f454
mov eax, dword [ebp - 0x48]
call fcn.00402e64
mov eax, dword [ebp - 0x34]
call fcn.00411924
mov eax, dword [ebp - 0x34]
call fcn.00402e64
ret
inc dword [ebp - 8]
dec dword [ebp - 0x5c]
jne 0x525dcc
push 0
mov eax, dword [0x5a8054]
push eax
call sub.user32.dll_ShowWindow
push 4
mov eax, dword [0x5a8054]
push eax
call sub.user32.dll_ShowWindow
jmp 0x526371
mov eax, dword [0x5a64e8]
mov eax, dword [eax]
call fcn.00411924
mov eax, dword [0x5a67d0]
mov byte [eax], 1
mov eax, dword [0x5a6450]
mov eax, dword [eax]
call fcn.00431838
mov eax, dword [0x5a6450]
mov eax, dword [eax]
call fcn.00402e64
mov eax, dword [0x5a6450]
xor edx, edx
mov dword [eax], edx
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
push 0x526386
ret