Function at 0x10045150
Capabilities:
Capture screenshot
Contain obfuscated stackstrings

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x308
mov eax, dword [0x101b734c]
xor eax, ebp
mov dword [ebp - 0x14], eax
push esi
push edi
mov dword [ebp - 0x28], 0
mov eax, dword [ebp + 0x24]
mov dword [eax], 0
mov byte [ebp - 0x1c], 0x70
mov byte [ebp - 0x1b], 0x69
mov byte [ebp - 0x1a], 0x63
mov byte [ebp - 0x19], 0x3a
mov byte [ebp - 0x18], 0
mov byte [ebp - 0x30], 0x6d
mov byte [ebp - 0x2f], 0x65
mov byte [ebp - 0x2e], 0x6d
mov byte [ebp - 0x2d], 0x3a
mov byte [ebp - 0x2c], 0
push 4
lea ecx, [ebp - 0x1c]
push ecx
mov edx, dword [ebp + 8]
mov ecx, dword [edx + 0x2650]
call fcn.100034b0
push eax
call fcn.10102e04
add esp, 0xc
test eax, eax
je 0x100451e3
push 4
lea eax, [ebp - 0x30]
push eax
mov ecx, dword [ebp + 8]
mov ecx, dword [ecx + 0x2650]
call fcn.100034b0
push eax
call fcn.10102e04
add esp, 0xc
test eax, eax
jne 0x10045946
mov dword [ebp - 0x6c], 0
mov edx, dword [ebp + 8]
mov ecx, dword [edx + 0x2650]
call fcn.100034b0
add eax, 4
mov dword [ebp - 0x64], eax
mov dword [ebp - 0x34], 0
push 4
lea eax, [ebp - 0x30]
push eax
mov ecx, dword [ebp + 8]
mov ecx, dword [ecx + 0x2650]
call fcn.100034b0
push eax
call fcn.10102e04
add esp, 0xc
test eax, eax
jne 0x1004522d
mov dword [ebp - 0x34], 1
push 0
mov edx, dword [ebp - 0x34]
push edx
lea eax, [ebp - 0x68]
push eax
lea ecx, [ebp - 0x6c]
push ecx
lea edx, [ebp - 0x60]
push edx
mov eax, dword [ebp - 0x64]
push eax
mov ecx, dword [ebp + 8]
push ecx
call fcn.10070c70
add esp, 0x1c
test eax, eax
jne 0x1004525a
xor eax, eax
jmp 0x10046d6f
mov edx, dword [ebp - 0x5c]
mov dword [ebp - 0xc], edx
mov eax, dword [ebp - 0x58]
mov dword [ebp - 0x10], eax
mov ecx, dword [ebp + 0x14]
cmp ecx, dword [ebp + 0xc]
jg 0x100452f6
mov byte [ebp - 0x80], 0xd7
mov byte [ebp - 0x7f], 0xf8
mov byte [ebp - 0x7e], 0xb1
mov byte [ebp - 0x7d], 0xea
mov byte [ebp - 0x7c], 0xd4
mov byte [ebp - 0x7b], 0xbd
mov byte [ebp - 0x7a], 0xbd
mov byte [ebp - 0x79], 0xe7
mov byte [ebp - 0x78], 0x20
mov byte [ebp - 0x77], 0x78
mov byte [ebp - 0x76], 0x32
mov byte [ebp - 0x75], 0x20
mov byte [ebp - 0x74], 0x3c
mov byte [ebp - 0x73], 0x3d
mov byte [ebp - 0x72], 0x20
mov byte [ebp - 0x71], 0x78
mov byte [ebp - 0x70], 0x31
mov byte [ebp - 0x6f], 0
lea edx, [ebp - 0x80]
push edx
mov eax, dword [ebp + 8]
push eax
call fcn.1003f300
add esp, 8
cmp dword [ebp - 0x34], 0
jne 0x100452dc
mov ecx, dword [ebp + 8]
cmp dword [ecx + 0x32fc], 0
jne 0x100452ef
mov edx, dword [ebp - 0x6c]
push edx
call fcn.100ffef8
add esp, 4
mov dword [ebp - 0x6c], 0
xor eax, eax
jmp 0x10046d6f
mov eax, dword [ebp + 0x18]
cmp eax, dword [ebp + 0x10]
jg 0x100453bf
mov byte [ebp - 0x94], 0xd7
mov byte [ebp - 0x93], 0xf8
mov byte [ebp - 0x92], 0xb1
mov byte [ebp - 0x91], 0xea
mov byte [ebp - 0x90], 0xd4
mov byte [ebp - 0x8f], 0xbd
mov byte [ebp - 0x8e], 0xbd
mov byte [ebp - 0x8d], 0xe7
mov byte [ebp - 0x8c], 0x20
mov byte [ebp - 0x8b], 0x79
mov byte [ebp - 0x8a], 0x32
mov byte [ebp - 0x89], 0x20
mov byte [ebp - 0x88], 0x3c
mov byte [ebp - 0x87], 0x3d
mov byte [ebp - 0x86], 0x20
mov byte [ebp - 0x85], 0x79
mov byte [ebp - 0x84], 0x31
mov byte [ebp - 0x83], 0
lea ecx, [ebp - 0x94]
push ecx
mov edx, dword [ebp + 8]
push edx
call fcn.1003f300
add esp, 8
cmp dword [ebp - 0x34], 0
jne 0x100453a5
mov eax, dword [ebp + 8]
cmp dword [eax + 0x32fc], 0
jne 0x100453b8
mov ecx, dword [ebp - 0x6c]
push ecx
call fcn.100ffef8
add esp, 4
mov dword [ebp - 0x6c], 0
xor eax, eax
jmp 0x10046d6f
mov edx, dword [ebp + 0xc]
cmp edx, dword [ebp - 0xc]
jl 0x100454b2
mov byte [ebp - 0xac], 0xd7
mov byte [ebp - 0xab], 0xf8
mov byte [ebp - 0xaa], 0xb1
mov byte [ebp - 0xa9], 0xea
mov byte [ebp - 0xa8], 0xd4
mov byte [ebp - 0xa7], 0xbd
mov byte [ebp - 0xa6], 0xbd
mov byte [ebp - 0xa5], 0xe7
mov byte [ebp - 0xa4], 0x20
mov byte [ebp - 0xa3], 0x78
mov byte [ebp - 0xa2], 0x31
mov byte [ebp - 0xa1], 0xb4
mov byte [ebp - 0xa0], 0xf3
mov byte [ebp - 0x9f], 0xd3
mov byte [ebp - 0x9e], 0xda
mov byte [ebp - 0x9d], 0xcd
mov byte [ebp - 0x9c], 0xbc
mov byte [ebp - 0x9b], 0xc6
mov byte [ebp - 0x9a], 0xac
mov byte [ebp - 0x99], 0xbf
mov byte [ebp - 0x98], 0xed
mov byte [ebp - 0x97], 0xb6
mov byte [ebp - 0x96], 0xc8
mov byte [ebp - 0x95], 0
lea eax, [ebp - 0xac]
push eax
mov ecx, dword [ebp + 8]
push ecx
call fcn.1003f300
add esp, 8
cmp dword [ebp - 0x34], 0
jne 0x10045498
mov edx, dword [ebp + 8]
cmp dword [edx + 0x32fc], 0
jne 0x100454ab
mov eax, dword [ebp - 0x6c]
push eax
call fcn.100ffef8
add esp, 4
mov dword [ebp - 0x6c], 0
xor eax, eax
jmp 0x10046d6f
mov ecx, dword [ebp + 0x10]
cmp ecx, dword [ebp - 0x10]
jl 0x100455a5
mov byte [ebp - 0xc4], 0xd7
mov byte [ebp - 0xc3], 0xf8
mov byte [ebp - 0xc2], 0xb1
mov byte [ebp - 0xc1], 0xea
mov byte [ebp - 0xc0], 0xd4
mov byte [ebp - 0xbf], 0xbd
mov byte [ebp - 0xbe], 0xbd
mov byte [ebp - 0xbd], 0xe7
mov byte [ebp - 0xbc], 0x20
mov byte [ebp - 0xbb], 0x79
mov byte [ebp - 0xba], 0x31
mov byte [ebp - 0xb9], 0xb4
mov byte [ebp - 0xb8], 0xf3
mov byte [ebp - 0xb7], 0xd3
mov byte [ebp - 0xb6], 0xda
mov byte [ebp - 0xb5], 0xcd
mov byte [ebp - 0xb4], 0xbc
mov byte [ebp - 0xb3], 0xc6
mov byte [ebp - 0xb2], 0xac
mov byte [ebp - 0xb1], 0xb8
mov byte [ebp - 0xb0], 0xdf
mov byte [ebp - 0xaf], 0xb6
mov byte [ebp - 0xae], 0xc8
mov byte [ebp - 0xad], 0
lea edx, [ebp - 0xc4]
push edx
mov eax, dword [ebp + 8]
push eax
call fcn.1003f300
add esp, 8
cmp dword [ebp - 0x34], 0
jne 0x1004558b
mov ecx, dword [ebp + 8]
cmp dword [ecx + 0x32fc], 0
jne 0x1004559e
mov edx, dword [ebp - 0x6c]
push edx
call fcn.100ffef8
add esp, 4
mov dword [ebp - 0x6c], 0
xor eax, eax
jmp 0x10046d6f
cmp dword [ebp + 0x14], 0
jge 0x10045665
mov byte [ebp - 0xd8], 0xd7
mov byte [ebp - 0xd7], 0xf8
mov byte [ebp - 0xd6], 0xb1
mov byte [ebp - 0xd5], 0xea
mov byte [ebp - 0xd4], 0xd4
mov byte [ebp - 0xd3], 0xbd
mov byte [ebp - 0xd2], 0xbd
mov byte [ebp - 0xd1], 0xe7
mov byte [ebp - 0xd0], 0x20
mov byte [ebp - 0xcf], 0x78
mov byte [ebp - 0xce], 0x32
mov byte [ebp - 0xcd], 0xd0
mov byte [ebp - 0xcc], 0xa1
mov byte [ebp - 0xcb], 0xd3
mov byte [ebp - 0xca], 0xda
mov byte [ebp - 0xc9], 0x30
mov byte [ebp - 0xc8], 0
lea eax, [ebp - 0xd8]
push eax
mov ecx, dword [ebp + 8]
push ecx
call fcn.1003f300
add esp, 8
cmp dword [ebp - 0x34], 0
jne 0x1004564b
mov edx, dword [ebp + 8]
cmp dword [edx + 0x32fc], 0
jne 0x1004565e
mov eax, dword [ebp - 0x6c]
push eax
call fcn.100ffef8
add esp, 4
mov dword [ebp - 0x6c], 0
xor eax, eax
jmp 0x10046d6f
cmp dword [ebp + 0x18], 0
jge 0x10045725
mov byte [ebp - 0xec], 0xd7
mov byte [ebp - 0xeb], 0xf8
mov byte [ebp - 0xea], 0xb1
mov byte [ebp - 0xe9], 0xea
mov byte [ebp - 0xe8], 0xd4
mov byte [ebp - 0xe7], 0xbd
mov byte [ebp - 0xe6], 0xbd
mov byte [ebp - 0xe5], 0xe7
mov byte [ebp - 0xe4], 0x20
mov byte [ebp - 0xe3], 0x79
mov byte [ebp - 0xe2], 0x32
mov byte [ebp - 0xe1], 0xd0
mov byte [ebp - 0xe0], 0xa1
mov byte [ebp - 0xdf], 0xd3
mov byte [ebp - 0xde], 0xda
mov byte [ebp - 0xdd], 0x30
mov byte [ebp - 0xdc], 0
lea ecx, [ebp - 0xec]
push ecx
mov edx, dword [ebp + 8]
push edx
call fcn.1003f300
add esp, 8
cmp dword [ebp - 0x34], 0
jne 0x1004570b
mov eax, dword [ebp + 8]
cmp dword [eax + 0x32fc], 0
jne 0x1004571e
mov ecx, dword [ebp - 0x6c]
push ecx
call fcn.100ffef8
add esp, 4
mov dword [ebp - 0x6c], 0
xor eax, eax
jmp 0x10046d6f
cmp dword [ebp + 0xc], 0
jge 0x10045732
mov dword [ebp + 0xc], 0
cmp dword [ebp + 0x10], 0
jge 0x1004573f
mov dword [ebp + 0x10], 0
mov edx, dword [ebp + 0x14]
cmp edx, dword [ebp - 0xc]
jle 0x1004574d
mov eax, dword [ebp - 0xc]
mov dword [ebp + 0x14], eax
mov ecx, dword [ebp + 0x18]
cmp ecx, dword [ebp - 0x10]
jle 0x1004575b
mov edx, dword [ebp - 0x10]
mov dword [ebp + 0x18], edx
mov eax, dword [ebp + 0x28]
mov ecx, dword [ebp + 0xc]
mov dword [eax], ecx
mov edx, dword [ebp + 0x2c]
mov eax, dword [ebp + 0x10]
mov dword [edx], eax
xor ecx, ecx
mov edx, dword [ebp + 0x1c]
mov dword [edx], ecx
mov dword [edx + 4], ecx
mov dword [edx + 8], ecx
mov dword [edx + 0xc], ecx
mov dword [edx + 0x10], ecx
mov dword [edx + 0x14], ecx
mov dword [edx + 0x18], ecx
mov dword [edx + 0x1c], ecx
mov dword [edx + 0x20], ecx
mov dword [edx + 0x24], ecx
mov eax, dword [ebp + 0x1c]
mov dword [eax], 0x28
mov ecx, dword [ebp + 0x14]
sub ecx, dword [ebp + 0xc]
mov edx, dword [ebp + 0x1c]
mov dword [edx + 4], ecx
mov eax, dword [ebp + 0x18]
sub eax, dword [ebp + 0x10]
mov ecx, dword [ebp + 0x1c]
mov dword [ecx + 8], eax
mov edx, dword [ebp + 0x1c]
mov word [edx + 0xc], 1
mov eax, dword [ebp + 0x1c]
mov word [eax + 0xe], 0x20
mov ecx, dword [ebp + 0x1c]
mov dword [ecx + 0x10], 0
mov edx, dword [ebp + 0x1c]
mov eax, dword [edx + 4]
lea ecx, [eax*4 + 3]
and ecx, 0xfffffffc
mov edx, dword [ebp + 0x20]
mov dword [edx], ecx
mov eax, dword [ebp + 0x20]
mov ecx, dword [ebp + 0x1c]
mov edx, dword [eax]
imul edx, dword [ecx + 8]
push edx
call fcn.100ffe35
add esp, 4
mov ecx, dword [ebp + 0x24]
mov dword [ecx], eax
mov edx, dword [ebp + 0x24]
cmp dword [edx], 0
jne 0x1004589f
mov byte [ebp - 0xfc], 0xc4
mov byte [ebp - 0xfb], 0xda
mov byte [ebp - 0xfa], 0xb4
mov byte [ebp - 0xf9], 0xe6
mov byte [ebp - 0xf8], 0xb7
mov byte [ebp - 0xf7], 0xd6
mov byte [ebp - 0xf6], 0xc5
mov byte [ebp - 0xf5], 0xe4
mov byte [ebp - 0xf4], 0xca
mov byte [ebp - 0xf3], 0xa7
mov byte [ebp - 0xf2], 0xb0
mov byte [ebp - 0xf1], 0xdc
mov byte [ebp - 0xf0], 0
lea eax, [ebp - 0xfc]
push eax
mov ecx, dword [ebp + 8]
push ecx
call fcn.1003f300
add esp, 8
cmp dword [ebp - 0x34], 0
jne 0x10045885
mov edx, dword [ebp + 8]
cmp dword [edx + 0x32fc], 0
jne 0x10045898
mov eax, dword [ebp - 0x6c]
push eax
call fcn.100ffef8
add esp, 4
mov dword [ebp - 0x6c], 0
xor eax, eax
jmp 0x10046d6f
mov dword [ebp - 0x38], 0
jmp 0x100458b1
mov ecx, dword [ebp - 0x38]
add ecx, 1
mov dword [ebp - 0x38], ecx
mov edx, dword [ebp + 0x1c]
mov eax, dword [ebp - 0x38]
cmp eax, dword [edx + 8]
jge 0x100458ef
mov ecx, dword [ebp + 0x20]
mov edx, dword [ecx]
push edx
mov eax, dword [ebp + 0x10]
add eax, dword [ebp - 0x38]
imul eax, dword [ebp - 0x68]
add eax, dword [ebp - 0x6c]
mov ecx, dword [ebp + 0xc]
lea edx, [eax + ecx*4]
push edx
mov eax, dword [ebp + 0x20]
mov ecx, dword [ebp - 0x38]
imul ecx, dword [eax]
mov edx, dword [ebp + 0x24]
add ecx, dword [edx]
push ecx
call fcn.10102150
add esp, 0xc
jmp 0x100458a8
cmp dword [ebp - 0x34], 0
jne 0x10045901
mov eax, dword [ebp + 8]
cmp dword [eax + 0x32fc], 0
jne 0x10045914
mov ecx, dword [ebp - 0x6c]
push ecx
call fcn.100ffef8
add esp, 4
mov dword [ebp - 0x6c], 0
mov edx, dword [ebp + 0x2c]
push edx
mov eax, dword [ebp + 0x28]
push eax
lea ecx, [ebp - 0x10]
push ecx
lea edx, [ebp - 0xc]
push edx
mov eax, dword [ebp + 0x24]
push eax
mov ecx, dword [ebp + 0x20]
push ecx
mov edx, dword [ebp + 0x1c]
push edx
mov eax, dword [ebp + 8]
push eax
call fcn.10056060
add esp, 0x20
mov eax, 1
jmp 0x10046d6f
mov ecx, dword [ebp + 8]
push ecx
call fcn.1004efa0
add esp, 4
mov edx, dword [ebp + 8]
mov eax, dword [edx + 0x1c]
mov dword [ebp - 0x24], eax
mov ecx, dword [ebp - 0x24]
mov dword [ebp - 8], ecx
mov edx, dword [ebp + 8]
cmp dword [edx + 0x38], 0
jne 0x10045973
call dword [sym.imp.USER32.dll_GetDesktopWindow]
mov dword [ebp - 8], eax
call fcn.1003f550
mov dword [ebp - 0x28], eax
cmp dword [ebp - 0x28], 0x20
je 0x1004598e
cmp dword [ebp - 0x28], 0x10
je 0x1004598e
xor eax, eax
jmp 0x10046d6f
mov dword [ebp - 4], 0
mov dword [ebp - 0x20], 0
cmp dword [ebp - 0x24], 0
jne 0x100459e5
push 0x4e
call dword [sym.imp.USER32.dll_GetSystemMetrics]
mov dword [ebp - 0xc], eax
push 0x4f
call dword [sym.imp.USER32.dll_GetSystemMetrics]
mov dword [ebp - 0x10], eax
push 0x4c
call dword [sym.imp.USER32.dll_GetSystemMetrics]
mov dword [ebp - 4], eax
push 0x4d
call dword [sym.imp.USER32.dll_GetSystemMetrics]
mov dword [ebp - 0x20], eax
mov eax, dword [ebp - 0xc]
add eax, dword [ebp - 4]
mov dword [ebp - 0xc], eax
mov ecx, dword [ebp - 0x10]
add ecx, dword [ebp - 0x20]
mov dword [ebp - 0x10], ecx
jmp 0x10045a66
lea edx, [ebp - 0x10c]
push edx
mov eax, dword [ebp - 0x24]
push eax
call dword [sym.imp.USER32.dll_GetClientRect]
mov ecx, dword [ebp - 0x24]
push ecx
call fcn.1003f750
add esp, 4
mov dword [ebp - 0x110], eax
mov edx, dword [ebp + 8]
cmp dword [edx + 0x38], 5
jne 0x10045a36
mov eax, dword [ebp - 0x110]
push eax
call dword [sym.imp.USER32.dll_IsIconic]
test eax, eax
je 0x10045a36
mov ecx, dword [ebp + 8]
mov edx, dword [ecx + 0x30]
mov dword [ebp - 0xc], edx
mov eax, dword [ebp + 8]
mov ecx, dword [eax + 0x34]
mov dword [ebp - 0x10], ecx
jmp 0x10045a66
mov edx, dword [ebp - 0x104]
sub edx, dword [ebp - 0x10c]
mov dword [ebp - 0xc], edx
mov eax, dword [ebp - 0x100]
sub eax, dword [ebp - 0x108]
mov dword [ebp - 0x10], eax
mov ecx, dword [ebp + 8]
mov edx, dword [ebp - 0xc]
mov dword [ecx + 0x30], edx
mov eax, dword [ebp + 8]
mov ecx, dword [ebp - 0x10]
mov dword [eax + 0x34], ecx
mov edx, dword [ebp + 0x14]
cmp edx, dword [ebp + 0xc]
jg 0x10045b0a
mov byte [ebp - 0x124], 0xd7
mov byte [ebp - 0x123], 0xf8
mov byte [ebp - 0x122], 0xb1
mov byte [ebp - 0x121], 0xea
mov byte [ebp - 0x120], 0xd4
mov byte [ebp - 0x11f], 0xbd
mov byte [ebp - 0x11e], 0xbd
mov byte [ebp - 0x11d], 0xe7
mov byte [ebp - 0x11c], 0x20
mov byte [ebp - 0x11b], 0x78
mov byte [ebp - 0x11a], 0x32
mov byte [ebp - 0x119], 0x20
mov byte [ebp - 0x118], 0x3c
mov byte [ebp - 0x117], 0x3d
mov byte [ebp - 0x116], 0x20
mov byte [ebp - 0x115], 0x78
mov byte [ebp - 0x114], 0x31
mov byte [ebp - 0x113], 0
lea eax, [ebp - 0x124]
push eax
mov ecx, dword [ebp + 8]
push ecx
call fcn.1003f300
add esp, 8
xor eax, eax
jmp 0x10046d6f
mov edx, dword [ebp + 0x18]
cmp edx, dword [ebp + 0x10]
jg 0x10045bae
mov byte [ebp - 0x138], 0xd7
mov byte [ebp - 0x137], 0xf8
mov byte [ebp - 0x136], 0xb1
mov byte [ebp - 0x135], 0xea
mov byte [ebp - 0x134], 0xd4
mov byte [ebp - 0x133], 0xbd
mov byte [ebp - 0x132], 0xbd
mov byte [ebp - 0x131], 0xe7
mov byte [ebp - 0x130], 0x20
mov byte [ebp - 0x12f], 0x79
mov byte [ebp - 0x12e], 0x32
mov byte [ebp - 0x12d], 0x20
mov byte [ebp - 0x12c], 0x3c
mov byte [ebp - 0x12b], 0x3d
mov byte [ebp - 0x12a], 0x20
mov byte [ebp - 0x129], 0x79
mov byte [ebp - 0x128], 0x31
mov byte [ebp - 0x127], 0
lea eax, [ebp - 0x138]
push eax
mov ecx, dword [ebp + 8]
push ecx
call fcn.1003f300
add esp, 8
xor eax, eax
jmp 0x10046d6f
mov edx, dword [ebp + 0xc]
cmp edx, dword [ebp - 0xc]
jl 0x10045d46
cmp dword [ebp - 0x24], 0
je 0x10045c84
mov byte [ebp - 0x150], 0xd7
mov byte [ebp - 0x14f], 0xf8
mov byte [ebp - 0x14e], 0xb1
mov byte [ebp - 0x14d], 0xea
mov byte [ebp - 0x14c], 0xd4
mov byte [ebp - 0x14b], 0xbd
mov byte [ebp - 0x14a], 0xbd
mov byte [ebp - 0x149], 0xe7
mov byte [ebp - 0x148], 0x20
mov byte [ebp - 0x147], 0x78
mov byte [ebp - 0x146], 0x31
mov byte [ebp - 0x145], 0xb4
mov byte [ebp - 0x144], 0xf3
mov byte [ebp - 0x143], 0xd3
mov byte [ebp - 0x142], 0xda
mov byte [ebp - 0x141], 0xb4
mov byte [ebp - 0x140], 0xb0
mov byte [ebp - 0x13f], 0xbf
mov byte [ebp - 0x13e], 0xda
mov byte [ebp - 0x13d], 0xbf
mov byte [ebp - 0x13c], 0xed
mov byte [ebp - 0x13b], 0xb6
mov byte [ebp - 0x13a], 0xc8
mov byte [ebp - 0x139], 0
lea eax, [ebp - 0x150]
push eax
mov ecx, dword [ebp + 8]
push ecx
call fcn.1003f300
add esp, 8
jmp 0x10045d3f
mov byte [ebp - 0x168], 0xd7
mov byte [ebp - 0x167], 0xf8
mov byte [ebp - 0x166], 0xb1
mov byte [ebp - 0x165], 0xea
mov byte [ebp - 0x164], 0xd4
mov byte [ebp - 0x163], 0xbd
mov byte [ebp - 0x162], 0xbd
mov byte [ebp - 0x161], 0xe7
mov byte [ebp - 0x160], 0x20
mov byte [ebp - 0x15f], 0x78
mov byte [ebp - 0x15e], 0x31
mov byte [ebp - 0x15d], 0xb4
mov byte [ebp - 0x15c], 0xf3
mov byte [ebp - 0x15b], 0xd3
mov byte [ebp - 0x15a], 0xda
mov byte [ebp - 0x159], 0xc6
mov byte [ebp - 0x158], 0xc1
mov byte [ebp - 0x157], 0xc4
mov byte [ebp - 0x156], 0xbb
mov byte [ebp - 0x155], 0xbf
mov byte [ebp - 0x154], 0xed
mov byte [ebp - 0x153], 0xb6
mov byte [ebp - 0x152], 0xc8
mov byte [ebp - 0x151], 0
lea edx, [ebp - 0x168]
push edx
mov eax, dword [ebp + 8]
push eax
call fcn.1003f300
add esp, 8
xor eax, eax
jmp 0x10046d6f
mov ecx, dword [ebp + 0x10]
cmp ecx, dword [ebp - 0x10]
jl 0x10045ede
cmp dword [ebp - 0x24], 0
je 0x10045e1c
mov byte [ebp - 0x180], 0xd7
mov byte [ebp - 0x17f], 0xf8
mov byte [ebp - 0x17e], 0xb1
mov byte [ebp - 0x17d], 0xea
mov byte [ebp - 0x17c], 0xd4
mov byte [ebp - 0x17b], 0xbd
mov byte [ebp - 0x17a], 0xbd
mov byte [ebp - 0x179], 0xe7
mov byte [ebp - 0x178], 0x20
mov byte [ebp - 0x177], 0x79
mov byte [ebp - 0x176], 0x31
mov byte [ebp - 0x175], 0xb4
mov byte [ebp - 0x174], 0xf3
mov byte [ebp - 0x173], 0xd3
mov byte [ebp - 0x172], 0xda
mov byte [ebp - 0x171], 0xb4
mov byte [ebp - 0x170], 0xb0
mov byte [ebp - 0x16f], 0xbf
mov byte [ebp - 0x16e], 0xda
mov byte [ebp - 0x16d], 0xb8
mov byte [ebp - 0x16c], 0xdf
mov byte [ebp - 0x16b], 0xb6
mov byte [ebp - 0x16a], 0xc8
mov byte [ebp - 0x169], 0
lea edx, [ebp - 0x180]
push edx
mov eax, dword [ebp + 8]
push eax
call fcn.1003f300
add esp, 8
jmp 0x10045ed7
mov byte [ebp - 0x198], 0xd7
mov byte [ebp - 0x197], 0xf8
mov byte [ebp - 0x196], 0xb1
mov byte [ebp - 0x195], 0xea
mov byte [ebp - 0x194], 0xd4
mov byte [ebp - 0x193], 0xbd
mov byte [ebp - 0x192], 0xbd
mov byte [ebp - 0x191], 0xe7
mov byte [ebp - 0x190], 0x20
mov byte [ebp - 0x18f], 0x79
mov byte [ebp - 0x18e], 0x31
mov byte [ebp - 0x18d], 0xb4
mov byte [ebp - 0x18c], 0xf3
mov byte [ebp - 0x18b], 0xd3
mov byte [ebp - 0x18a], 0xda
mov byte [ebp - 0x189], 0xc6
mov byte [ebp - 0x188], 0xc1
mov byte [ebp - 0x187], 0xc4
mov byte [ebp - 0x186], 0xbb
mov byte [ebp - 0x185], 0xb8
mov byte [ebp - 0x184], 0xdf
mov byte [ebp - 0x183], 0xb6
mov byte [ebp - 0x182], 0xc8
mov byte [ebp - 0x181], 0
lea ecx, [ebp - 0x198]
push ecx
mov edx, dword [ebp + 8]
push edx
call fcn.1003f300
add esp, 8
xor eax, eax
jmp 0x10046d6f
mov eax, dword [ebp + 0x14]
cmp eax, dword [ebp - 4]
jge 0x10045f7b
mov byte [ebp - 0x1ac], 0xd7
mov byte [ebp - 0x1ab], 0xf8
mov byte [ebp - 0x1aa], 0xb1
mov byte [ebp - 0x1a9], 0xea
mov byte [ebp - 0x1a8], 0xd4
mov byte [ebp - 0x1a7], 0xbd
mov byte [ebp - 0x1a6], 0xbd
mov byte [ebp - 0x1a5], 0xe7
mov byte [ebp - 0x1a4], 0x20
mov byte [ebp - 0x1a3], 0x78
mov byte [ebp - 0x1a2], 0x32
mov byte [ebp - 0x1a1], 0xd0
mov byte [ebp - 0x1a0], 0xa1
mov byte [ebp - 0x19f], 0xd3
mov byte [ebp - 0x19e], 0xda
mov byte [ebp - 0x19d], 0x30
mov byte [ebp - 0x19c], 0
lea ecx, [ebp - 0x1ac]
push ecx
mov edx, dword [ebp + 8]
push edx
call fcn.1003f300
add esp, 8
xor eax, eax
jmp 0x10046d6f
mov eax, dword [ebp + 0x18]
cmp eax, dword [ebp - 0x20]
jge 0x10046018
mov byte [ebp - 0x1c0], 0xd7
mov byte [ebp - 0x1bf], 0xf8
mov byte [ebp - 0x1be], 0xb1
mov byte [ebp - 0x1bd], 0xea
mov byte [ebp - 0x1bc], 0xd4
mov byte [ebp - 0x1bb], 0xbd
mov byte [ebp - 0x1ba], 0xbd
mov byte [ebp - 0x1b9], 0xe7
mov byte [ebp - 0x1b8], 0x20
mov byte [ebp - 0x1b7], 0x79
mov byte [ebp - 0x1b6], 0x32
mov byte [ebp - 0x1b5], 0xd0
mov byte [ebp - 0x1b4], 0xa1
mov byte [ebp - 0x1b3], 0xd3
mov byte [ebp - 0x1b2], 0xda
mov byte [ebp - 0x1b1], 0x30
mov byte [ebp - 0x1b0], 0
lea ecx, [ebp - 0x1c0]
push ecx
mov edx, dword [ebp + 8]
push edx
call fcn.1003f300
add esp, 8
xor eax, eax
jmp 0x10046d6f
mov eax, dword [ebp + 0xc]
cmp eax, dword [ebp - 4]
jge 0x10046026
mov ecx, dword [ebp - 4]
mov dword [ebp + 0xc], ecx
mov edx, dword [ebp + 0x10]
cmp edx, dword [ebp - 0x20]
jge 0x10046034
mov eax, dword [ebp - 0x20]
mov dword [ebp + 0x10], eax
mov ecx, dword [ebp + 0x14]
cmp ecx, dword [ebp - 0xc]
jle 0x10046042
mov edx, dword [ebp - 0xc]
mov dword [ebp + 0x14], edx
mov eax, dword [ebp + 0x18]
cmp eax, dword [ebp - 0x10]
jle 0x10046050
mov ecx, dword [ebp - 0x10]
mov dword [ebp + 0x18], ecx
mov edx, dword [ebp + 0x28]
mov eax, dword [ebp + 0xc]
mov dword [edx], eax
mov ecx, dword [ebp + 0x2c]
mov edx, dword [ebp + 0x10]
mov dword [ecx], edx
xor eax, eax
mov ecx, dword [ebp + 0x1c]
mov dword [ecx], eax
mov dword [ecx + 4], eax
mov dword [ecx + 8], eax
mov dword [ecx + 0xc], eax
mov dword [ecx + 0x10], eax
mov dword [ecx + 0x14], eax
mov dword [ecx + 0x18], eax
mov dword [ecx + 0x1c], eax
mov dword [ecx + 0x20], eax
mov dword [ecx + 0x24], eax
mov edx, dword [ebp + 0x1c]
mov dword [edx], 0x28
mov eax, dword [ebp + 0x14]
sub eax, dword [ebp + 0xc]
mov ecx, dword [ebp + 0x1c]
mov dword [ecx + 4], eax
mov edx, dword [ebp + 0x18]
sub edx, dword [ebp + 0x10]
mov eax, dword [ebp + 0x1c]
mov dword [eax + 8], edx
mov ecx, dword [ebp + 0x1c]
mov word [ecx + 0xc], 1
mov edx, dword [ebp + 0x1c]
mov word [edx + 0xe], 0x20
mov eax, dword [ebp + 0x1c]
mov dword [eax + 0x10], 0
mov ecx, dword [ebp + 0x1c]
mov edx, dword [ecx + 4]
lea eax, [edx*4 + 3]
and eax, 0xfffffffc
mov ecx, dword [ebp + 0x20]
mov dword [ecx], eax
mov edx, dword [ebp + 0x20]
mov eax, dword [ebp + 0x1c]
mov ecx, dword [edx]
imul ecx, dword [eax + 8]
push ecx
call fcn.100ffe35
add esp, 4
mov edx, dword [ebp + 0x24]
mov dword [edx], eax
mov eax, dword [ebp + 0x24]
cmp dword [eax], 0
jne 0x1004616b
mov byte [ebp - 0x1d0], 0xc4
mov byte [ebp - 0x1cf], 0xda
mov byte [ebp - 0x1ce], 0xb4
mov byte [ebp - 0x1cd], 0xe6
mov byte [ebp - 0x1cc], 0xb7
mov byte [ebp - 0x1cb], 0xd6
mov byte [ebp - 0x1ca], 0xc5
mov byte [ebp - 0x1c9], 0xe4
mov byte [ebp - 0x1c8], 0xca
mov byte [ebp - 0x1c7], 0xa7
mov byte [ebp - 0x1c6], 0xb0
mov byte [ebp - 0x1c5], 0xdc
mov byte [ebp - 0x1c4], 0
lea ecx, [ebp - 0x1d0]
push ecx
mov edx, dword [ebp + 8]
push edx
call fcn.1003f300
add esp, 8
xor eax, eax
jmp 0x10046d6f
mov edx, dword [ebp + 8]
cmp dword [edx + 0x38], 0
je 0x1004618a
mov eax, dword [ebp + 8]
cmp dword [eax + 0x38], 1
je 0x1004618a
mov ecx, dword [ebp + 8]
cmp dword [ecx + 0x38], 3
jne 0x100466c8
mov dword [ebp - 0x1d4], 0
mov edx, dword [ebp + 8]
cmp dword [edx + 0x38], 0
jne 0x10046202
mov dword [ebp - 0x1dc], 0
mov dword [ebp - 0x1d8], 0
cmp dword [ebp - 0x24], 0
je 0x100461c8
lea eax, [ebp - 0x1dc]
push eax
mov ecx, dword [ebp - 0x24]
push ecx
call dword [sym.imp.USER32.dll_ClientToScreen]
mov edx, dword [ebp + 0x18]
sub edx, dword [ebp + 0x10]
push edx
mov eax, dword [ebp + 0x14]
sub eax, dword [ebp + 0xc]
push eax
mov ecx, dword [ebp + 0x10]
add ecx, dword [ebp - 0x1d8]
push ecx
mov edx, dword [ebp + 0xc]
add edx, dword [ebp - 0x1dc]
push edx
mov eax, dword [ebp + 0x24]
mov ecx, dword [eax]
push ecx
mov edx, dword [ebp + 8]
push edx
call fcn.10012c40
add esp, 0x18
mov dword [ebp - 0x1d4], eax
cmp dword [ebp - 0x1d4], 0
jne 0x100466c3
mov eax, dword [ebp - 8]
push eax
call dword [sym.imp.USER32.dll_GetWindowDC]
mov dword [ebp - 0x204], eax
cmp dword [ebp - 0x204], 0
jne 0x10046344
mov ecx, dword [ebp + 0x24]
mov edx, dword [ecx]
push edx
call fcn.100ffef8
add esp, 4
mov eax, dword [ebp + 0x24]
mov dword [eax], 0
mov byte [ebp - 0x254], 0xbb
mov byte [ebp - 0x253], 0xf1
mov byte [ebp - 0x252], 0xc8
mov byte [ebp - 0x251], 0xa1
mov byte [ebp - 0x250], 0xc6
mov byte [ebp - 0x24f], 0xc1
mov byte [ebp - 0x24e], 0xc4
mov byte [ebp - 0x24d], 0xbb
mov byte [ebp - 0x24c], 0xb1
mov byte [ebp - 0x24b], 0xed
mov byte [ebp - 0x24a], 0xc3
mov byte [ebp - 0x249], 0xe6
mov byte [ebp - 0x248], 0xca
mov byte [ebp - 0x247], 0xa7
mov byte [ebp - 0x246], 0xb0
mov byte [ebp - 0x245], 0xdc
mov byte [ebp - 0x244], 0x2c
mov byte [ebp - 0x243], 0xb5
mov byte [ebp - 0x242], 0xb1
mov byte [ebp - 0x241], 0xc7
mov byte [ebp - 0x240], 0xb0
mov byte [ebp - 0x23f], 0xbe
mov byte [ebp - 0x23e], 0xe4
mov byte [ebp - 0x23d], 0xb1
mov byte [ebp - 0x23c], 0xfa
mov byte [ebp - 0x23b], 0xce
mov byte [ebp - 0x23a], 0xaa
mov byte [ebp - 0x239], 0x5b
mov byte [ebp - 0x238], 0x25
mov byte [ebp - 0x237], 0x64
mov byte [ebp - 0x236], 0x5d
mov byte [ebp - 0x235], 0
mov ecx, dword [ebp + 8]
mov edx, dword [ecx + 0x1c]
push edx
lea eax, [ebp - 0x254]
push eax
mov ecx, dword [ebp + 8]
push ecx
call fcn.1003f300
add esp, 0xc
xor eax, eax
jmp 0x10046d6f
mov edx, dword [ebp - 0x204]
push edx
call dword [sym.imp.GDI32.dll_CreateCompatibleDC]
mov dword [ebp - 0x200], eax
cmp dword [ebp - 0x200], 0
jne 0x1004646a
mov byte [ebp - 0x270], 0xcf
mov byte [ebp - 0x26f], 0xb5
mov byte [ebp - 0x26e], 0xcd
mov byte [ebp - 0x26d], 0xb3
mov byte [ebp - 0x26c], 0xd7
mov byte [ebp - 0x26b], 0xca
mov byte [ebp - 0x26a], 0xd4
mov byte [ebp - 0x269], 0xb4
mov byte [ebp - 0x268], 0xb2
mov byte [ebp - 0x267], 0xbb
mov byte [ebp - 0x266], 0xd7
mov byte [ebp - 0x265], 0xe3
mov byte [ebp - 0x264], 0x2e
mov byte [ebp - 0x263], 0xb4
mov byte [ebp - 0x262], 0xb4
mov byte [ebp - 0x261], 0xbd
mov byte [ebp - 0x260], 0xa8
mov byte [ebp - 0x25f], 0x68
mov byte [ebp - 0x25e], 0x4d
mov byte [ebp - 0x25d], 0x65
mov byte [ebp - 0x25c], 0x6d
mov byte [ebp - 0x25b], 0x44
mov byte [ebp - 0x25a], 0x43
mov byte [ebp - 0x259], 0xca
mov byte [ebp - 0x258], 0xa7
mov byte [ebp - 0x257], 0xb0
mov byte [ebp - 0x256], 0xdc
mov byte [ebp - 0x255], 0
lea eax, [ebp - 0x270]
push eax
mov ecx, dword [ebp + 8]
push ecx
call fcn.1003f300
add esp, 8
mov edx, dword [ebp - 0x204]
push edx
mov eax, dword [ebp - 8]
push eax
call dword [sym.imp.USER32.dll_ReleaseDC]
mov ecx, dword [ebp + 0x24]
mov edx, dword [ecx]
push edx
call fcn.100ffef8
add esp, 4
mov eax, dword [ebp + 0x24]
mov dword [eax], 0
xor eax, eax
jmp 0x10046d6f
mov ecx, dword [ebp + 0x18]
sub ecx, dword [ebp + 0x10]
push ecx
mov edx, dword [ebp + 0x14]
sub edx, dword [ebp + 0xc]
push edx
mov eax, dword [ebp - 0x204]
push eax
call dword [sym.imp.GDI32.dll_CreateCompatibleBitmap]
mov dword [ebp - 0x1fc], eax
cmp dword [ebp - 0x1fc], 0
jne 0x100464d0
mov ecx, dword [ebp - 0x204]
push ecx
mov edx, dword [ebp - 8]
push edx
call dword [sym.imp.USER32.dll_ReleaseDC]
mov eax, dword [ebp + 0x24]
mov ecx, dword [eax]
push ecx
call fcn.100ffef8
add esp, 4
mov edx, dword [ebp + 0x24]
mov dword [edx], 0
mov eax, dword [ebp - 0x200]
push eax
call dword [sym.imp.GDI32.dll_DeleteDC]
xor eax, eax
jmp 0x10046d6f
mov ecx, dword [ebp - 0x1fc]
push ecx
mov edx, dword [ebp - 0x200]
push edx
call dword [sym.imp.GDI32.dll_SelectObject]
mov dword [ebp - 0x20c], eax
mov dword [ebp - 0x1f8], 0
mov dword [ebp - 0x1f4], 0
mov dword [ebp - 0x1ec], 0
mov dword [ebp - 0x1e8], 0
mov dword [ebp - 0x1e4], 0
mov dword [ebp - 0x1e0], 0
cmp dword [ebp - 0x24], 0
je 0x1004654e
lea eax, [ebp - 0x1f8]
push eax
mov ecx, dword [ebp - 0x24]
push ecx
call dword [sym.imp.USER32.dll_ClientToScreen]
lea edx, [ebp - 0x1ec]
push edx
mov eax, dword [ebp - 0x24]
push eax
call dword [sym.imp.USER32.dll_GetWindowRect]
mov ecx, dword [ebp + 8]
cmp dword [ecx + 0x38], 0
jne 0x10046598
push 0x40cc0020
mov edx, dword [ebp + 0x10]
add edx, dword [ebp - 0x1f4]
push edx
mov eax, dword [ebp + 0xc]
add eax, dword [ebp - 0x1f8]
push eax
mov ecx, dword [ebp - 0x204]
push ecx
mov edx, dword [ebp + 0x18]
sub edx, dword [ebp + 0x10]
push edx
mov eax, dword [ebp + 0x14]
sub eax, dword [ebp + 0xc]
push eax
push 0
push 0
mov ecx, dword [ebp - 0x200]
push ecx
call dword [sym.imp.GDI32.dll_BitBlt]
jmp 0x100465e3
push 0xcc0020
mov edx, dword [ebp - 0x1f4]
sub edx, dword [ebp - 0x1e8]
add edx, dword [ebp + 0x10]
push edx
mov eax, dword [ebp - 0x1f8]
sub eax, dword [ebp - 0x1ec]
add eax, dword [ebp + 0xc]
push eax
mov ecx, dword [ebp - 0x204]
push ecx
mov edx, dword [ebp + 0x18]
sub edx, dword [ebp + 0x10]
push edx
mov eax, dword [ebp + 0x14]
sub eax, dword [ebp + 0xc]
push eax
push 0
push 0
mov ecx, dword [ebp - 0x200]
push ecx
call dword [sym.imp.GDI32.dll_BitBlt]
mov edx, dword [ebp - 0x20c]
push edx
mov eax, dword [ebp - 0x200]
push eax
call dword [sym.imp.GDI32.dll_SelectObject]
mov ecx, 0xa
mov esi, dword [ebp + 0x1c]
lea edi, [ebp - 0x234]
rep movsd dword es:[edi], dword [esi]
mov ecx, dword [ebp - 0x22c]
neg ecx
mov dword [ebp - 0x22c], ecx
push 0
lea edx, [ebp - 0x234]
push edx
mov eax, dword [ebp + 0x24]
mov ecx, dword [eax]
push ecx
mov edx, dword [ebp + 0x1c]
mov eax, dword [edx + 8]
push eax
push 0
mov ecx, dword [ebp - 0x1fc]
push ecx
mov edx, dword [ebp - 0x200]
push edx
call dword [sym.imp.GDI32.dll_GetDIBits]
mov dword [ebp - 0x1f0], eax
call dword [sym.imp.KERNEL32.DLL_GetLastError]
mov dword [ebp - 0x208], eax
mov eax, dword [ebp - 0x200]
push eax
call dword [sym.imp.GDI32.dll_DeleteDC]
mov ecx, dword [ebp - 0x1fc]
push ecx
call dword [sym.imp.GDI32.dll_DeleteObject]
cmp dword [ebp - 0x1f0], 0
jne 0x100466b2
mov edx, dword [ebp - 0x208]
push edx
call dword [sym.imp.KERNEL32.DLL_SetLastError]
mov eax, dword [ebp - 0x204]
push eax
mov ecx, dword [ebp - 8]
push ecx
call dword [sym.imp.USER32.dll_ReleaseDC]
mov edx, dword [ebp + 0x24]
mov eax, dword [edx]
push eax
call fcn.100ffef8
add esp, 4
mov ecx, dword [ebp + 0x24]
mov dword [ecx], 0
xor eax, eax
jmp 0x10046d6f
mov edx, dword [ebp - 0x204]
push edx
mov eax, dword [ebp - 8]
push eax
call dword [sym.imp.USER32.dll_ReleaseDC]
jmp 0x10046c9a
mov ecx, dword [ebp + 8]
cmp dword [ecx + 0x38], 2
je 0x100466de
mov edx, dword [ebp + 8]
cmp dword [edx + 0x38], 4
jne 0x10046c3b
mov eax, dword [ebp - 8]
push eax
call dword [sym.imp.USER32.dll_GetWindowDC]
mov dword [ebp - 0x2a0], eax
cmp dword [ebp - 0x2a0], 0
jne 0x10046813
mov ecx, dword [ebp + 0x24]
mov edx, dword [ecx]
push edx
call fcn.100ffef8
add esp, 4
mov eax, dword [ebp + 0x24]
mov dword [eax], 0
mov byte [ebp - 0x2f4], 0xbb
mov byte [ebp - 0x2f3], 0xf1
mov byte [ebp - 0x2f2], 0xc8
mov byte [ebp - 0x2f1], 0xa1
mov byte [ebp - 0x2f0], 0xc6
mov byte [ebp - 0x2ef], 0xc1
mov byte [ebp - 0x2ee], 0xc4
mov byte [ebp - 0x2ed], 0xbb
mov byte [ebp - 0x2ec], 0xb1
mov byte [ebp - 0x2eb], 0xed
mov byte [ebp - 0x2ea], 0xc3
mov byte [ebp - 0x2e9], 0xe6
mov byte [ebp - 0x2e8], 0xca
mov byte [ebp - 0x2e7], 0xa7
mov byte [ebp - 0x2e6], 0xb0
mov byte [ebp - 0x2e5], 0xdc
mov byte [ebp - 0x2e4], 0x2c
mov byte [ebp - 0x2e3], 0xb5
mov byte [ebp - 0x2e2], 0xb1
mov byte [ebp - 0x2e1], 0xc7
mov byte [ebp - 0x2e0], 0xb0
mov byte [ebp - 0x2df], 0xbe
mov byte [ebp - 0x2de], 0xe4
mov byte [ebp - 0x2dd], 0xb1
mov byte [ebp - 0x2dc], 0xfa
mov byte [ebp - 0x2db], 0xce
mov byte [ebp - 0x2da], 0xaa
mov byte [ebp - 0x2d9], 0x5b
mov byte [ebp - 0x2d8], 0x25
mov byte [ebp - 0x2d7], 0x64
mov byte [ebp - 0x2d6], 0x5d
mov byte [ebp - 0x2d5], 0
mov ecx, dword [ebp + 8]
mov edx, dword [ecx + 0x1c]
push edx
lea eax, [ebp - 0x2f4]
push eax
mov ecx, dword [ebp + 8]
push ecx
call fcn.1003f300
add esp, 0xc
xor eax, eax
jmp 0x10046d6f
mov edx, dword [ebp - 0x2a0]
push edx
call dword [sym.imp.GDI32.dll_CreateCompatibleDC]
mov dword [ebp - 0x29c], eax
cmp dword [ebp - 0x29c], 0
jne 0x100468de
mov byte [ebp - 0x304], 0xb4
mov byte [ebp - 0x303], 0xb4
mov byte [ebp - 0x302], 0xbd
mov byte [ebp - 0x301], 0xa8
mov byte [ebp - 0x300], 0x68
mov byte [ebp - 0x2ff], 0x4d
mov byte [ebp - 0x2fe], 0x65
mov byte [ebp - 0x2fd], 0x6d
mov byte [ebp - 0x2fc], 0x44
mov byte [ebp - 0x2fb], 0x43
mov byte [ebp - 0x2fa], 0xca
mov byte [ebp - 0x2f9], 0xa7
mov byte [ebp - 0x2f8], 0xb0
mov byte [ebp - 0x2f7], 0xdc
mov byte [ebp - 0x2f6], 0
lea eax, [ebp - 0x304]
push eax
mov ecx, dword [ebp + 8]
push ecx
call fcn.1003f300
add esp, 8
mov edx, dword [ebp - 0x2a0]
push edx
mov eax, dword [ebp - 8]
push eax
call dword [sym.imp.USER32.dll_ReleaseDC]
mov ecx, dword [ebp + 0x24]
mov edx, dword [ecx]
push edx
call fcn.100ffef8
add esp, 4
mov eax, dword [ebp + 0x24]
mov dword [eax], 0
xor eax, eax
jmp 0x10046d6f
mov ecx, dword [ebp + 0x18]
sub ecx, dword [ebp + 0x10]
push ecx
mov edx, dword [ebp + 0x14]
sub edx, dword [ebp + 0xc]
push edx
mov eax, dword [ebp - 0x2a0]
push eax
call dword [sym.imp.GDI32.dll_CreateCompatibleBitmap]
mov dword [ebp - 0x298], eax
cmp dword [ebp - 0x298], 0
jne 0x10046944
mov ecx, dword [ebp - 0x2a0]
push ecx
mov edx, dword [ebp - 8]
push edx
call dword [sym.imp.USER32.dll_ReleaseDC]
mov eax, dword [ebp + 0x24]
mov ecx, dword [eax]
push ecx
call fcn.100ffef8
add esp, 4
mov edx, dword [ebp + 0x24]
mov dword [edx], 0
mov eax, dword [ebp - 0x29c]
push eax
call dword [sym.imp.GDI32.dll_DeleteDC]
xor eax, eax
jmp 0x10046d6f
mov dword [ebp - 0x280], 0
mov dword [ebp - 0x27c], 0
mov dword [ebp - 0x278], 0
mov dword [ebp - 0x274], 0
lea ecx, [ebp - 0x280]
push ecx
mov edx, dword [ebp - 0x24]
push edx
call dword [sym.imp.USER32.dll_GetWindowRect]
mov eax, dword [ebp - 0x274]
sub eax, dword [ebp - 0x27c]
push eax
mov ecx, dword [ebp - 0x278]
sub ecx, dword [ebp - 0x280]
push ecx
mov edx, dword [ebp - 0x2a0]
push edx
call dword [sym.imp.GDI32.dll_CreateCompatibleBitmap]
mov dword [ebp - 0x2d4], eax
cmp dword [ebp - 0x2d4], 0
jne 0x100469fc
mov eax, dword [ebp - 0x2a0]
push eax
mov ecx, dword [ebp - 8]
push ecx
call dword [sym.imp.USER32.dll_ReleaseDC]
mov edx, dword [ebp + 0x24]
mov eax, dword [edx]
push eax
call fcn.100ffef8
add esp, 4
mov ecx, dword [ebp + 0x24]
mov dword [ecx], 0
mov edx, dword [ebp - 0x29c]
push edx
call dword [sym.imp.GDI32.dll_DeleteDC]
mov eax, dword [ebp - 0x298]
push eax
call dword [sym.imp.GDI32.dll_DeleteObject]
xor eax, eax
jmp 0x10046d6f
mov ecx, dword [ebp - 0x2a0]
push ecx
call dword [sym.imp.GDI32.dll_CreateCompatibleDC]
mov dword [ebp - 0x294], eax
cmp dword [ebp - 0x294], 0
jne 0x10046a6e
mov edx, dword [ebp - 0x2a0]
push edx
mov eax, dword [ebp - 8]
push eax
call dword [sym.imp.USER32.dll_ReleaseDC]
mov ecx, dword [ebp + 0x24]
mov edx, dword [ecx]
push edx
call fcn.100ffef8
add esp, 4
mov eax, dword [ebp + 0x24]
mov dword [eax], 0
mov ecx, dword [ebp - 0x29c]
push ecx
call dword [sym.imp.GDI32.dll_DeleteDC]
mov edx, dword [ebp - 0x298]
push edx
call dword [sym.imp.GDI32.dll_DeleteObject]
mov eax, dword [ebp - 0x2d4]
push eax
call dword [sym.imp.GDI32.dll_DeleteObject]
xor eax, eax
jmp 0x10046d6f
mov ecx, dword [ebp - 0x298]
push ecx
mov edx, dword [ebp - 0x29c]
push edx
call dword [sym.imp.GDI32.dll_SelectObject]
mov dword [ebp - 0x2a8], eax
mov eax, dword [ebp - 0x2d4]
push eax
mov ecx, dword [ebp - 0x294]
push ecx
call dword [sym.imp.GDI32.dll_SelectObject]
mov dword [ebp - 0x290], eax
push 0
mov edx, dword [ebp - 0x294]
push edx
mov eax, dword [ebp - 0x24]
push eax
mov ecx, dword [ebp + 8]
push ecx
call fcn.1004f010
add esp, 0x10
mov dword [ebp - 0x28c], 0
mov dword [ebp - 0x288], 0
lea edx, [ebp - 0x28c]
push edx
mov eax, dword [ebp - 0x24]
push eax
call dword [sym.imp.USER32.dll_ClientToScreen]
push 0xcc0020
mov ecx, dword [ebp - 0x288]
sub ecx, dword [ebp - 0x27c]
add ecx, dword [ebp + 0x10]
push ecx
mov edx, dword [ebp - 0x28c]
sub edx, dword [ebp - 0x280]
add edx, dword [ebp + 0xc]
push edx
mov eax, dword [ebp - 0x294]
push eax
mov ecx, dword [ebp + 0x18]
sub ecx, dword [ebp + 0x10]
push ecx
mov edx, dword [ebp + 0x14]
sub edx, dword [ebp + 0xc]
push edx
push 0
push 0
mov eax, dword [ebp - 0x29c]
push eax
call dword [sym.imp.GDI32.dll_BitBlt]
mov ecx, dword [ebp - 0x2a8]
push ecx
mov edx, dword [ebp - 0x29c]
push edx
call dword [sym.imp.GDI32.dll_SelectObject]
mov eax, dword [ebp - 0x290]
push eax
mov ecx, dword [ebp - 0x294]
push ecx
call dword [sym.imp.GDI32.dll_SelectObject]
mov ecx, 0xa
mov esi, dword [ebp + 0x1c]
lea edi, [ebp - 0x2d0]
rep movsd dword es:[edi], dword [esi]
mov edx, dword [ebp - 0x2c8]
neg edx
mov dword [ebp - 0x2c8], edx
push 0
lea eax, [ebp - 0x2d0]
push eax
mov ecx, dword [ebp + 0x24]
mov edx, dword [ecx]
push edx
mov eax, dword [ebp + 0x1c]
mov ecx, dword [eax + 8]
push ecx
push 0
mov edx, dword [ebp - 0x298]
push edx
mov eax, dword [ebp - 0x29c]
push eax
call dword [sym.imp.GDI32.dll_GetDIBits]
mov dword [ebp - 0x284], eax
call dword [sym.imp.KERNEL32.DLL_GetLastError]
mov dword [ebp - 0x2a4], eax
mov ecx, dword [ebp - 0x29c]
push ecx
call dword [sym.imp.GDI32.dll_DeleteDC]
mov edx, dword [ebp - 0x298]
push edx
call dword [sym.imp.GDI32.dll_DeleteObject]
mov eax, dword [ebp - 0x294]
push eax
call dword [sym.imp.GDI32.dll_DeleteDC]
mov ecx, dword [ebp - 0x2d4]
push ecx
call dword [sym.imp.GDI32.dll_DeleteObject]
cmp dword [ebp - 0x284], 0
jne 0x10046c28
mov edx, dword [ebp - 0x2a4]
push edx
call dword [sym.imp.KERNEL32.DLL_SetLastError]
mov eax, dword [ebp - 0x2a0]
push eax
mov ecx, dword [ebp - 8]
push ecx
call dword [sym.imp.USER32.dll_ReleaseDC]
mov edx, dword [ebp + 0x24]
mov eax, dword [edx]
push eax
call fcn.100ffef8
add esp, 4
mov ecx, dword [ebp + 0x24]
mov dword [ecx], 0
xor eax, eax
jmp 0x10046d6f
mov edx, dword [ebp - 0x2a0]
push edx
mov eax, dword [ebp - 8]
push eax
call dword [sym.imp.USER32.dll_ReleaseDC]
jmp 0x10046c9a
mov ecx, dword [ebp + 8]
cmp dword [ecx + 0x38], 5
jne 0x10046c9a
mov edx, dword [ebp + 0x18]
push edx
mov eax, dword [ebp + 0x14]
push eax
mov ecx, dword [ebp + 0x10]
push ecx
mov edx, dword [ebp + 0xc]
push edx
mov eax, dword [ebp + 0x24]
mov ecx, dword [eax]
push ecx
mov edx, dword [ebp + 8]
mov eax, dword [edx + 0x1c]
push eax
mov ecx, dword [ebp + 8]
push ecx
call fcn.100ba4d0
add esp, 0x1c
mov dword [ebp - 0x308], eax
cmp dword [ebp - 0x308], 0
jne 0x10046c9a
mov edx, dword [ebp + 0x24]
mov eax, dword [edx]
push eax
call fcn.100ffef8
add esp, 4
mov ecx, dword [ebp + 0x24]
mov dword [ecx], 0
xor eax, eax
jmp 0x10046d6f
mov edx, dword [ebp + 8]
cmp dword [edx + 0x3294], 0
je 0x10046d42
mov eax, dword [ebp + 8]
cmp dword [eax + 0x3298], 0
je 0x10046cd5
mov ecx, dword [ebp + 8]
mov edx, dword [ecx + 0x3298]
push edx
call fcn.100ffef8
add esp, 4
mov eax, dword [ebp + 8]
mov dword [eax + 0x3298], 0
mov ecx, dword [ebp + 0x20]
mov edx, dword [ebp + 0x1c]
mov eax, dword [ecx]
imul eax, dword [edx + 8]
push eax
call fcn.100ffe35
add esp, 4
mov ecx, dword [ebp + 8]
mov dword [ecx + 0x3298], eax
mov edx, dword [ebp + 8]
cmp dword [edx + 0x3298], 0
je 0x10046d42
mov eax, dword [ebp + 0x20]
mov ecx, dword [ebp + 0x1c]
mov edx, dword [eax]
imul edx, dword [ecx + 8]
push edx
mov eax, dword [ebp + 0x24]
mov ecx, dword [eax]
push ecx
mov edx, dword [ebp + 8]
mov eax, dword [edx + 0x3298]
push eax
call fcn.10102150
add esp, 0xc
mov ecx, dword [ebp + 8]
mov edx, dword [ebp + 0x1c]
mov eax, dword [edx + 4]
mov dword [ecx + 0x329c], eax
mov ecx, dword [ebp + 8]
mov edx, dword [ebp + 0x1c]
mov eax, dword [edx + 8]
mov dword [ecx + 0x32a0], eax
mov ecx, dword [ebp + 0x2c]
push ecx
mov edx, dword [ebp + 0x28]
push edx
lea eax, [ebp - 0x10]
push eax
lea ecx, [ebp - 0xc]
push ecx
mov edx, dword [ebp + 0x24]
push edx
mov eax, dword [ebp + 0x20]
push eax
mov ecx, dword [ebp + 0x1c]
push ecx
mov edx, dword [ebp + 8]
push edx
call fcn.10056060
add esp, 0x20
mov eax, 1
pop edi
pop esi
mov ecx, dword [ebp - 0x14]
xor ecx, ebp
call fcn.101003d3
mov esp, ebp
pop ebp
ret