Function at 0x10056ca0
Capabilities:
Capture screenshot
Contain obfuscated stackstrings

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x308
mov eax, dword [0x101cf40c]
xor eax, ebp
mov dword [ebp - 0x14], eax
push esi
push edi
push eax
pop eax
mov dword [ebp - 0x28], 0
mov cl, cl
mov eax, dword [ebp + 0x24]
mov dword [eax], 0
mov ebp, ebp
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 eax, eax
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
mov bl, bl
push 4
lea ecx, [ebp - 0x1c]
push ecx
mov edx, dword [ebp + 8]
mov ecx, dword [edx + 0x2650]
call fcn.10003c10
push eax
call fcn.1011a694
add esp, 0xc
test eax, eax
je 0x10056d3d
push 4
lea eax, [ebp - 0x30]
push eax
mov ecx, dword [ebp + 8]
mov ecx, dword [ecx + 0x2650]
call fcn.10003c10
push eax
call fcn.1011a694
add esp, 0xc
test eax, eax
jne 0x100574fd
mov cl, cl
mov dword [ebp - 0x6c], 0
mov ebp, ebp
mov dl, dl
mov edx, dword [ebp + 8]
mov ecx, dword [edx + 0x2650]
call fcn.10003c10
add eax, 4
mov dword [ebp - 0x64], eax
mov bl, bl
mov dword [ebp - 0x34], 0
mov eax, eax
push 4
lea eax, [ebp - 0x30]
push eax
mov ecx, dword [ebp + 8]
mov ecx, dword [ecx + 0x2650]
call fcn.10003c10
push eax
call fcn.1011a694
add esp, 0xc
test eax, eax
jne 0x10056d92
mov dword [ebp - 0x34], 1
nop
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.100780b0
add esp, 0x1c
test eax, eax
jne 0x10056dbf
xor eax, eax
jmp 0x10058a5f
mov edx, dword [ebp - 0x5c]
mov dword [ebp - 0xc], edx
mov eax, eax
mov eax, dword [ebp - 0x58]
mov dword [ebp - 0x10], eax
mov bh, bh
mov ecx, dword [ebp + 0x14]
cmp ecx, dword [ebp + 0xc]
jg 0x10056e65
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
mov ebp, ebp
lea edx, [ebp - 0x80]
push edx
mov eax, dword [ebp + 8]
push eax
call fcn.10050420
add esp, 8
mov bh, bh
cmp dword [ebp - 0x34], 0
jne 0x10056e49
mov ecx, dword [ebp + 8]
cmp dword [ecx + 0x32fc], 0
jne 0x10056e5e
mov edx, dword [ebp - 0x6c]
push edx
call fcn.101174df
add esp, 4
mov dword [ebp - 0x6c], 0
mov dl, dl
xor eax, eax
jmp 0x10058a5f
mov eax, dword [ebp + 0x18]
cmp eax, dword [ebp + 0x10]
jg 0x10056f34
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
mov al, al
lea ecx, [ebp - 0x94]
push ecx
mov edx, dword [ebp + 8]
push edx
call fcn.10050420
add esp, 8
mov ch, ch
cmp dword [ebp - 0x34], 0
jne 0x10056f18
mov eax, dword [ebp + 8]
cmp dword [eax + 0x32fc], 0
jne 0x10056f2d
mov ecx, dword [ebp - 0x6c]
push ecx
call fcn.101174df
add esp, 4
mov dword [ebp - 0x6c], 0
mov ah, ah
xor eax, eax
jmp 0x10058a5f
mov edx, dword [ebp + 0xc]
cmp edx, dword [ebp - 0xc]
jl 0x1005702d
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
push eax
pop eax
lea eax, [ebp - 0xac]
push eax
mov ecx, dword [ebp + 8]
push ecx
call fcn.10050420
add esp, 8
mov ebp, ebp
cmp dword [ebp - 0x34], 0
jne 0x10057011
mov edx, dword [ebp + 8]
cmp dword [edx + 0x32fc], 0
jne 0x10057026
mov eax, dword [ebp - 0x6c]
push eax
call fcn.101174df
add esp, 4
mov dword [ebp - 0x6c], 0
push ebx
pop ebx
xor eax, eax
jmp 0x10058a5f
mov ecx, dword [ebp + 0x10]
cmp ecx, dword [ebp - 0x10]
jl 0x10057126
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
mov ebp, ebp
lea edx, [ebp - 0xc4]
push edx
mov eax, dword [ebp + 8]
push eax
call fcn.10050420
add esp, 8
xchg ebx, eax
xchg ebx, eax
cmp dword [ebp - 0x34], 0
jne 0x1005710a
mov ecx, dword [ebp + 8]
cmp dword [ecx + 0x32fc], 0
jne 0x1005711f
mov edx, dword [ebp - 0x6c]
push edx
call fcn.101174df
add esp, 4
mov dword [ebp - 0x6c], 0
mov ecx, ecx
xor eax, eax
jmp 0x10058a5f
cmp dword [ebp + 0x14], 0
jge 0x100571ec
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
mov dh, dh
lea eax, [ebp - 0xd8]
push eax
mov ecx, dword [ebp + 8]
push ecx
call fcn.10050420
add esp, 8
mov eax, eax
cmp dword [ebp - 0x34], 0
jne 0x100571d0
mov edx, dword [ebp + 8]
cmp dword [edx + 0x32fc], 0
jne 0x100571e5
mov eax, dword [ebp - 0x6c]
push eax
call fcn.101174df
add esp, 4
mov dword [ebp - 0x6c], 0
mov esi, esi
xor eax, eax
jmp 0x10058a5f
cmp dword [ebp + 0x18], 0
jge 0x100572b2
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
mov eax, eax
lea ecx, [ebp - 0xec]
push ecx
mov edx, dword [ebp + 8]
push edx
call fcn.10050420
add esp, 8
xchg ebx, eax
xchg ebx, eax
cmp dword [ebp - 0x34], 0
jne 0x10057296
mov eax, dword [ebp + 8]
cmp dword [eax + 0x32fc], 0
jne 0x100572ab
mov ecx, dword [ebp - 0x6c]
push ecx
call fcn.101174df
add esp, 4
mov dword [ebp - 0x6c], 0
mov ecx, ecx
xor eax, eax
jmp 0x10058a5f
cmp dword [ebp + 0xc], 0
jge 0x100572c1
mov dword [ebp + 0xc], 0
mov ah, ah
cmp dword [ebp + 0x10], 0
jge 0x100572d0
mov dword [ebp + 0x10], 0
mov dl, dl
mov edx, dword [ebp + 0x14]
cmp edx, dword [ebp - 0xc]
jle 0x100572e0
mov eax, dword [ebp - 0xc]
mov dword [ebp + 0x14], eax
mov esi, esi
mov ecx, dword [ebp + 0x18]
cmp ecx, dword [ebp - 0x10]
jle 0x100572f0
mov edx, dword [ebp - 0x10]
mov dword [ebp + 0x18], edx
mov cl, cl
mov eax, dword [ebp + 0x28]
mov ecx, dword [ebp + 0xc]
mov dword [eax], ecx
push eax
pop eax
mov edx, dword [ebp + 0x2c]
mov eax, dword [ebp + 0x10]
mov dword [edx], eax
mov dl, dl
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
push ecx
pop ecx
mov eax, dword [ebp + 0x1c]
mov dword [eax], 0x28
mov eax, eax
mov ecx, dword [ebp + 0x14]
sub ecx, dword [ebp + 0xc]
mov edx, dword [ebp + 0x1c]
mov dword [edx + 4], ecx
push ecx
pop ecx
mov eax, dword [ebp + 0x18]
sub eax, dword [ebp + 0x10]
mov ecx, dword [ebp + 0x1c]
mov dword [ecx + 8], eax
mov ecx, ecx
mov edx, dword [ebp + 0x1c]
mov word [edx + 0xc], 1
mov dl, dl
mov eax, dword [ebp + 0x1c]
mov word [eax + 0xe], 0x20
mov dl, dl
mov ecx, dword [ebp + 0x1c]
mov dword [ecx + 0x10], 0
push ebx
pop ebx
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.1011741c
add esp, 4
mov ecx, dword [ebp + 0x24]
mov dword [ecx], eax
push ecx
pop ecx
mov edx, dword [ebp + 0x24]
cmp dword [edx], 0
jne 0x1005744e
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
mov cl, cl
lea eax, [ebp - 0xfc]
push eax
mov ecx, dword [ebp + 8]
push ecx
call fcn.10050420
add esp, 8
mov ah, ah
cmp dword [ebp - 0x34], 0
jne 0x10057432
mov edx, dword [ebp + 8]
cmp dword [edx + 0x32fc], 0
jne 0x10057447
mov eax, dword [ebp - 0x6c]
push eax
call fcn.101174df
add esp, 4
mov dword [ebp - 0x6c], 0
mov ah, ah
xor eax, eax
jmp 0x10058a5f
mov edi, edi
mov dword [ebp - 0x38], 0
jmp 0x10057462
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 0x100574a2
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.10119900
add esp, 0xc
mov edi, edi
jmp 0x10057459
cmp dword [ebp - 0x34], 0
jne 0x100574b4
mov eax, dword [ebp + 8]
cmp dword [eax + 0x32fc], 0
jne 0x100574c9
mov ecx, dword [ebp - 0x6c]
push ecx
call fcn.101174df
add esp, 4
mov dword [ebp - 0x6c], 0
mov ebp, ebp
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.1006d060
add esp, 0x20
mov dh, dh
mov eax, 1
jmp 0x10058a5f
mov ecx, dword [ebp + 8]
push ecx
call fcn.100610e0
add esp, 4
mov ecx, ecx
mov edx, dword [ebp + 8]
mov eax, dword [edx + 0x1c]
mov dword [ebp - 0x24], eax
mov al, al
mov ecx, dword [ebp - 0x24]
mov dword [ebp - 8], ecx
mov dl, dl
mov edx, dword [ebp + 8]
cmp dword [edx + 0x38], 0
jne 0x10057532
call dword [sym.imp.USER32.dll_GetDesktopWindow]
mov dword [ebp - 8], eax
mov edi, edi
call fcn.100506a0
mov dword [ebp - 0x28], eax
mov bl, bl
cmp dword [ebp - 0x28], 0x20
je 0x1005754f
cmp dword [ebp - 0x28], 0x10
je 0x1005754f
xor eax, eax
jmp 0x10058a5f
mov ebp, ebp
mov dword [ebp - 4], 0
push eax
pop eax
mov dword [ebp - 0x20], 0
push ecx
pop ecx
cmp dword [ebp - 0x24], 0
jne 0x100575b7
push 0x4e
call dword [sym.imp.USER32.dll_GetSystemMetrics]
mov dword [ebp - 0xc], eax
mov dh, dh
push 0x4f
call dword [sym.imp.USER32.dll_GetSystemMetrics]
mov dword [ebp - 0x10], eax
nop
push 0x4c
call dword [sym.imp.USER32.dll_GetSystemMetrics]
mov dword [ebp - 4], eax
mov ch, ch
push 0x4d
call dword [sym.imp.USER32.dll_GetSystemMetrics]
mov dword [ebp - 0x20], eax
mov eax, eax
mov eax, dword [ebp - 0xc]
add eax, dword [ebp - 4]
mov dword [ebp - 0xc], eax
mov edi, edi
mov ecx, dword [ebp - 0x10]
add ecx, dword [ebp - 0x20]
mov dword [ebp - 0x10], ecx
mov eax, eax
jmp 0x1005764a
mov ch, ch
lea edx, [ebp - 0x10c]
push edx
mov eax, dword [ebp - 0x24]
push eax
call dword [sym.imp.USER32.dll_GetClientRect]
push edx
pop edx
mov ecx, dword [ebp - 0x24]
push ecx
call fcn.100508d0
add esp, 4
mov dword [ebp - 0x110], eax
mov eax, eax
mov edx, dword [ebp + 8]
cmp dword [edx + 0x38], 5
jne 0x10057612
mov eax, dword [ebp - 0x110]
push eax
call dword [sym.imp.USER32.dll_IsIconic]
test eax, eax
je 0x10057612
mov ecx, dword [ebp + 8]
mov edx, dword [ecx + 0x30]
mov dword [ebp - 0xc], edx
mov ebp, ebp
mov eax, dword [ebp + 8]
mov ecx, dword [eax + 0x34]
mov dword [ebp - 0x10], ecx
mov bh, bh
jmp 0x1005764a
mov edx, dword [ebp - 0x104]
sub edx, dword [ebp - 0x10c]
mov dword [ebp - 0xc], edx
mov cl, cl
mov eax, dword [ebp - 0x100]
sub eax, dword [ebp - 0x108]
mov dword [ebp - 0x10], eax
mov edi, edi
mov ecx, dword [ebp + 8]
mov edx, dword [ebp - 0xc]
mov dword [ecx + 0x30], edx
mov edi, edi
mov eax, dword [ebp + 8]
mov ecx, dword [ebp - 0x10]
mov dword [eax + 0x34], ecx
mov ecx, ecx
mov edx, dword [ebp + 0x14]
cmp edx, dword [ebp + 0xc]
jg 0x100576f2
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
mov bl, bl
lea eax, [ebp - 0x124]
push eax
mov ecx, dword [ebp + 8]
push ecx
call fcn.10050420
add esp, 8
mov edi, edi
xor eax, eax
jmp 0x10058a5f
mov edx, dword [ebp + 0x18]
cmp edx, dword [ebp + 0x10]
jg 0x1005779a
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
xchg ebx, eax
xchg ebx, eax
lea eax, [ebp - 0x138]
push eax
mov ecx, dword [ebp + 8]
push ecx
call fcn.10050420
add esp, 8
mov edi, edi
xor eax, eax
jmp 0x10058a5f
mov edx, dword [ebp + 0xc]
cmp edx, dword [ebp - 0xc]
jl 0x1005793a
cmp dword [ebp - 0x24], 0
je 0x10057874
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
mov dl, dl
lea eax, [ebp - 0x150]
push eax
mov ecx, dword [ebp + 8]
push ecx
call fcn.10050420
add esp, 8
xchg ebx, eax
xchg ebx, eax
jmp 0x10057933
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
mov eax, eax
lea edx, [ebp - 0x168]
push edx
mov eax, dword [ebp + 8]
push eax
call fcn.10050420
add esp, 8
mov ah, ah
xor eax, eax
jmp 0x10058a5f
mov ecx, dword [ebp + 0x10]
cmp ecx, dword [ebp - 0x10]
jl 0x10057ada
cmp dword [ebp - 0x24], 0
je 0x10057a14
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
mov bl, bl
lea edx, [ebp - 0x180]
push edx
mov eax, dword [ebp + 8]
push eax
call fcn.10050420
add esp, 8
push ecx
pop ecx
jmp 0x10057ad3
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
mov al, al
lea ecx, [ebp - 0x198]
push ecx
mov edx, dword [ebp + 8]
push edx
call fcn.10050420
add esp, 8
mov ah, ah
xor eax, eax
jmp 0x10058a5f
mov eax, dword [ebp + 0x14]
cmp eax, dword [ebp - 4]
jge 0x10057b7b
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
mov ebx, ebx
lea ecx, [ebp - 0x1ac]
push ecx
mov edx, dword [ebp + 8]
push edx
call fcn.10050420
add esp, 8
push edx
pop edx
xor eax, eax
jmp 0x10058a5f
mov eax, dword [ebp + 0x18]
cmp eax, dword [ebp - 0x20]
jge 0x10057c1c
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
mov edx, edx
lea ecx, [ebp - 0x1c0]
push ecx
mov edx, dword [ebp + 8]
push edx
call fcn.10050420
add esp, 8
mov esi, esi
xor eax, eax
jmp 0x10058a5f
mov eax, dword [ebp + 0xc]
cmp eax, dword [ebp - 4]
jge 0x10057c2c
mov ecx, dword [ebp - 4]
mov dword [ebp + 0xc], ecx
mov bh, bh
mov edx, dword [ebp + 0x10]
cmp edx, dword [ebp - 0x20]
jge 0x10057c3c
mov eax, dword [ebp - 0x20]
mov dword [ebp + 0x10], eax
mov ebx, ebx
mov ecx, dword [ebp + 0x14]
cmp ecx, dword [ebp - 0xc]
jle 0x10057c4c
mov edx, dword [ebp - 0xc]
mov dword [ebp + 0x14], edx
mov dh, dh
mov eax, dword [ebp + 0x18]
cmp eax, dword [ebp - 0x10]
jle 0x10057c5c
mov ecx, dword [ebp - 0x10]
mov dword [ebp + 0x18], ecx
mov edi, edi
mov edx, dword [ebp + 0x28]
mov eax, dword [ebp + 0xc]
mov dword [edx], eax
mov edx, edx
mov ecx, dword [ebp + 0x2c]
mov edx, dword [ebp + 0x10]
mov dword [ecx], edx
mov edx, 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 ebx, ebx
mov edx, dword [ebp + 0x1c]
mov dword [edx], 0x28
mov bh, bh
mov eax, dword [ebp + 0x14]
sub eax, dword [ebp + 0xc]
mov ecx, dword [ebp + 0x1c]
mov dword [ecx + 4], eax
push ecx
pop ecx
mov edx, dword [ebp + 0x18]
sub edx, dword [ebp + 0x10]
mov eax, dword [ebp + 0x1c]
mov dword [eax + 8], edx
mov edi, edi
mov ecx, dword [ebp + 0x1c]
mov word [ecx + 0xc], 1
mov bl, bl
mov edx, dword [ebp + 0x1c]
mov word [edx + 0xe], 0x20
mov ah, ah
mov eax, dword [ebp + 0x1c]
mov dword [eax + 0x10], 0
mov ebp, ebp
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.1011741c
add esp, 4
mov edx, dword [ebp + 0x24]
mov dword [edx], eax
push ebx
pop ebx
mov eax, dword [ebp + 0x24]
cmp dword [eax], 0
jne 0x10057d8f
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
push eax
pop eax
lea ecx, [ebp - 0x1d0]
push ecx
mov edx, dword [ebp + 8]
push edx
call fcn.10050420
add esp, 8
mov eax, eax
xor eax, eax
jmp 0x10058a5f
mov eax, dword [ebp + 0x14]
sub eax, dword [ebp + 0xc]
cmp eax, 0x64
jge 0x10057da7
mov ecx, dword [ebp + 8]
cmp dword [ecx + 0x3378], 0
jne 0x10057da7
nop
mov edx, dword [ebp + 8]
cmp dword [edx + 0x38], 0
je 0x10057dc6
mov eax, dword [ebp + 8]
cmp dword [eax + 0x38], 1
je 0x10057dc6
mov ecx, dword [ebp + 8]
cmp dword [ecx + 0x38], 3
jne 0x1005834c
mov dword [ebp - 0x1d4], 0
mov ebp, ebp
mov edx, dword [ebp + 8]
cmp dword [edx + 0x38], 0
jne 0x10057e46
mov dword [ebp - 0x1dc], 0
mov dword [ebp - 0x1d8], 0
mov ecx, ecx
cmp dword [ebp - 0x24], 0
je 0x10057e0a
lea eax, [ebp - 0x1dc]
push eax
mov ecx, dword [ebp - 0x24]
push ecx
call dword [sym.imp.USER32.dll_ClientToScreen]
mov dl, dl
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.100128e0
add esp, 0x18
mov dword [ebp - 0x1d4], eax
mov dh, dh
cmp dword [ebp - 0x1d4], 0
jne 0x10058347
mov eax, dword [ebp - 8]
push eax
call dword [sym.imp.USER32.dll_GetWindowDC]
mov dword [ebp - 0x204], eax
mov eax, eax
cmp dword [ebp - 0x204], 0
jne 0x10057f90
mov ecx, dword [ebp + 0x24]
mov edx, dword [ecx]
push edx
call fcn.101174df
add esp, 4
mov eax, dword [ebp + 0x24]
mov dword [eax], 0
push ecx
pop ecx
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 bh, bh
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.10050420
add esp, 0xc
mov ecx, ecx
xor eax, eax
jmp 0x10058a5f
mov edx, dword [ebp - 0x204]
push edx
call dword [sym.imp.GDI32.dll_CreateCompatibleDC]
mov dword [ebp - 0x200], eax
push edx
pop edx
cmp dword [ebp - 0x200], 0
jne 0x100580c0
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
mov edx, edx
lea eax, [ebp - 0x270]
push eax
mov ecx, dword [ebp + 8]
push ecx
call fcn.10050420
add esp, 8
mov cl, cl
mov edx, dword [ebp - 0x204]
push edx
mov eax, dword [ebp - 8]
push eax
call dword [sym.imp.USER32.dll_ReleaseDC]
mov edi, edi
mov ecx, dword [ebp + 0x24]
mov edx, dword [ecx]
push edx
call fcn.101174df
add esp, 4
mov eax, dword [ebp + 0x24]
mov dword [eax], 0
mov ebx, ebx
xor eax, eax
jmp 0x10058a5f
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
mov cl, cl
cmp dword [ebp - 0x1fc], 0
jne 0x1005812e
mov ecx, dword [ebp - 0x204]
push ecx
mov edx, dword [ebp - 8]
push edx
call dword [sym.imp.USER32.dll_ReleaseDC]
xchg ebx, eax
xchg ebx, eax
mov eax, dword [ebp + 0x24]
mov ecx, dword [eax]
push ecx
call fcn.101174df
add esp, 4
mov edx, dword [ebp + 0x24]
mov dword [edx], 0
mov edx, edx
mov eax, dword [ebp - 0x200]
push eax
call dword [sym.imp.GDI32.dll_DeleteDC]
mov ah, ah
xor eax, eax
jmp 0x10058a5f
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
push eax
pop eax
mov dword [ebp - 0x1f8], 0
mov dword [ebp - 0x1f4], 0
mov dl, dl
mov dword [ebp - 0x1ec], 0
mov dword [ebp - 0x1e8], 0
mov dword [ebp - 0x1e4], 0
mov dword [ebp - 0x1e0], 0
mov bl, bl
cmp dword [ebp - 0x24], 0
je 0x100581b6
lea eax, [ebp - 0x1f8]
push eax
mov ecx, dword [ebp - 0x24]
push ecx
call dword [sym.imp.USER32.dll_ClientToScreen]
mov bh, bh
lea edx, [ebp - 0x1ec]
push edx
mov eax, dword [ebp - 0x24]
push eax
call dword [sym.imp.USER32.dll_GetWindowRect]
push ecx
pop ecx
mov ecx, dword [ebp + 8]
cmp dword [ecx + 0x38], 0
jne 0x10058202
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]
push eax
pop eax
jmp 0x1005824f
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 ecx, ecx
mov edx, dword [ebp - 0x20c]
push edx
mov eax, dword [ebp - 0x200]
push eax
call dword [sym.imp.GDI32.dll_SelectObject]
mov edi, edi
mov bh, bh
mov ecx, 0xa
mov esi, dword [ebp + 0x1c]
lea edi, [ebp - 0x234]
rep movsd dword es:[edi], dword [esi]
mov ebx, ebx
mov ecx, dword [ebp - 0x22c]
neg ecx
mov dword [ebp - 0x22c], ecx
mov dh, dh
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
mov eax, eax
call dword [sym.imp.KERNEL32.DLL_GetLastError]
mov dword [ebp - 0x208], eax
mov ebp, ebp
mov eax, dword [ebp - 0x200]
push eax
call dword [sym.imp.GDI32.dll_DeleteDC]
mov ecx, ecx
mov ecx, dword [ebp - 0x1fc]
push ecx
call dword [sym.imp.GDI32.dll_DeleteObject]
xchg ebx, eax
xchg ebx, eax
cmp dword [ebp - 0x1f0], 0
jne 0x10058334
mov edx, dword [ebp - 0x208]
push edx
call dword [sym.imp.KERNEL32.DLL_SetLastError]
mov esi, esi
mov eax, dword [ebp - 0x204]
push eax
mov ecx, dword [ebp - 8]
push ecx
call dword [sym.imp.USER32.dll_ReleaseDC]
mov edx, edx
mov edx, dword [ebp + 0x24]
mov eax, dword [edx]
push eax
call fcn.101174df
add esp, 4
mov ecx, dword [ebp + 0x24]
mov dword [ecx], 0
xchg ebx, eax
xchg ebx, eax
xor eax, eax
jmp 0x10058a5f
mov edx, dword [ebp - 0x204]
push edx
mov eax, dword [ebp - 8]
push eax
call dword [sym.imp.USER32.dll_ReleaseDC]
mov al, al
jmp 0x1005897f
mov ecx, dword [ebp + 8]
cmp dword [ecx + 0x38], 2
je 0x10058362
mov edx, dword [ebp + 8]
cmp dword [edx + 0x38], 4
jne 0x1005891c
mov eax, dword [ebp - 8]
push eax
call dword [sym.imp.USER32.dll_GetWindowDC]
mov dword [ebp - 0x2a0], eax
mov dl, dl
cmp dword [ebp - 0x2a0], 0
jne 0x1005849f
mov ecx, dword [ebp + 0x24]
mov edx, dword [ecx]
push edx
call fcn.101174df
add esp, 4
mov eax, dword [ebp + 0x24]
mov dword [eax], 0
mov ebp, ebp
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 edx, edx
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.10050420
add esp, 0xc
mov ah, ah
xor eax, eax
jmp 0x10058a5f
mov edx, dword [ebp - 0x2a0]
push edx
call dword [sym.imp.GDI32.dll_CreateCompatibleDC]
mov dword [ebp - 0x29c], eax
mov dl, dl
cmp dword [ebp - 0x29c], 0
jne 0x10058574
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
mov ebp, ebp
lea eax, [ebp - 0x304]
push eax
mov ecx, dword [ebp + 8]
push ecx
call fcn.10050420
add esp, 8
mov ah, ah
mov edx, dword [ebp - 0x2a0]
push edx
mov eax, dword [ebp - 8]
push eax
call dword [sym.imp.USER32.dll_ReleaseDC]
push ecx
pop ecx
mov ecx, dword [ebp + 0x24]
mov edx, dword [ecx]
push edx
call fcn.101174df
add esp, 4
mov eax, dword [ebp + 0x24]
mov dword [eax], 0
push eax
pop eax
xor eax, eax
jmp 0x10058a5f
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
mov bl, bl
cmp dword [ebp - 0x298], 0
jne 0x100585e1
mov ecx, dword [ebp - 0x2a0]
push ecx
mov edx, dword [ebp - 8]
push edx
call dword [sym.imp.USER32.dll_ReleaseDC]
mov al, al
mov eax, dword [ebp + 0x24]
mov ecx, dword [eax]
push ecx
call fcn.101174df
add esp, 4
mov edx, dword [ebp + 0x24]
mov dword [edx], 0
nop
mov eax, dword [ebp - 0x29c]
push eax
call dword [sym.imp.GDI32.dll_DeleteDC]
push ecx
pop ecx
xor eax, eax
jmp 0x10058a5f
mov dword [ebp - 0x280], 0
mov dword [ebp - 0x27c], 0
mov dword [ebp - 0x278], 0
mov dword [ebp - 0x274], 0
mov ah, ah
lea ecx, [ebp - 0x280]
push ecx
mov edx, dword [ebp - 0x24]
push edx
call dword [sym.imp.USER32.dll_GetWindowRect]
mov ebp, ebp
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
push ecx
pop ecx
cmp dword [ebp - 0x2d4], 0
jne 0x100586a7
mov eax, dword [ebp - 0x2a0]
push eax
mov ecx, dword [ebp - 8]
push ecx
call dword [sym.imp.USER32.dll_ReleaseDC]
mov edx, edx
mov edx, dword [ebp + 0x24]
mov eax, dword [edx]
push eax
call fcn.101174df
add esp, 4
mov ecx, dword [ebp + 0x24]
mov dword [ecx], 0
mov dl, dl
mov edx, dword [ebp - 0x29c]
push edx
call dword [sym.imp.GDI32.dll_DeleteDC]
push edx
pop edx
mov eax, dword [ebp - 0x298]
push eax
call dword [sym.imp.GDI32.dll_DeleteObject]
mov ah, ah
xor eax, eax
jmp 0x10058a5f
mov ecx, dword [ebp - 0x2a0]
push ecx
call dword [sym.imp.GDI32.dll_CreateCompatibleDC]
mov dword [ebp - 0x294], eax
mov dl, dl
cmp dword [ebp - 0x294], 0
jne 0x10058725
mov edx, dword [ebp - 0x2a0]
push edx
mov eax, dword [ebp - 8]
push eax
call dword [sym.imp.USER32.dll_ReleaseDC]
mov bh, bh
mov ecx, dword [ebp + 0x24]
mov edx, dword [ecx]
push edx
call fcn.101174df
add esp, 4
mov eax, dword [ebp + 0x24]
mov dword [eax], 0
push eax
pop eax
mov ecx, dword [ebp - 0x29c]
push ecx
call dword [sym.imp.GDI32.dll_DeleteDC]
xchg ebx, eax
xchg ebx, eax
mov edx, dword [ebp - 0x298]
push edx
call dword [sym.imp.GDI32.dll_DeleteObject]
mov esi, esi
mov eax, dword [ebp - 0x2d4]
push eax
call dword [sym.imp.GDI32.dll_DeleteObject]
mov eax, eax
xor eax, eax
jmp 0x10058a5f
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 dh, dh
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
mov bl, bl
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.10061160
add esp, 0x10
mov ebp, ebp
mov dword [ebp - 0x28c], 0
mov dword [ebp - 0x288], 0
mov ecx, ecx
lea edx, [ebp - 0x28c]
push edx
mov eax, dword [ebp - 0x24]
push eax
call dword [sym.imp.USER32.dll_ClientToScreen]
mov dh, dh
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 al, al
mov ecx, dword [ebp - 0x2a8]
push ecx
mov edx, dword [ebp - 0x29c]
push edx
call dword [sym.imp.GDI32.dll_SelectObject]
mov ebp, ebp
mov eax, dword [ebp - 0x290]
push eax
mov ecx, dword [ebp - 0x294]
push ecx
call dword [sym.imp.GDI32.dll_SelectObject]
xchg ebx, eax
xchg ebx, eax
mov dh, dh
mov ecx, 0xa
mov esi, dword [ebp + 0x1c]
lea edi, [ebp - 0x2d0]
rep movsd dword es:[edi], dword [esi]
mov edi, edi
mov edx, dword [ebp - 0x2c8]
neg edx
mov dword [ebp - 0x2c8], edx
mov dl, dl
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
mov bl, bl
call dword [sym.imp.KERNEL32.DLL_GetLastError]
mov dword [ebp - 0x2a4], eax
push edx
pop edx
mov ecx, dword [ebp - 0x29c]
push ecx
call dword [sym.imp.GDI32.dll_DeleteDC]
mov bl, bl
mov edx, dword [ebp - 0x298]
push edx
call dword [sym.imp.GDI32.dll_DeleteObject]
mov ebx, ebx
mov eax, dword [ebp - 0x294]
push eax
call dword [sym.imp.GDI32.dll_DeleteDC]
mov eax, eax
mov ecx, dword [ebp - 0x2d4]
push ecx
call dword [sym.imp.GDI32.dll_DeleteObject]
push eax
pop eax
cmp dword [ebp - 0x284], 0
jne 0x10058907
mov edx, dword [ebp - 0x2a4]
push edx
call dword [sym.imp.KERNEL32.DLL_SetLastError]
mov edx, edx
mov eax, dword [ebp - 0x2a0]
push eax
mov ecx, dword [ebp - 8]
push ecx
call dword [sym.imp.USER32.dll_ReleaseDC]
mov dl, dl
mov edx, dword [ebp + 0x24]
mov eax, dword [edx]
push eax
call fcn.101174df
add esp, 4
mov ecx, dword [ebp + 0x24]
mov dword [ecx], 0
mov eax, eax
xor eax, eax
jmp 0x10058a5f
mov edx, dword [ebp - 0x2a0]
push edx
mov eax, dword [ebp - 8]
push eax
call dword [sym.imp.USER32.dll_ReleaseDC]
mov cl, cl
jmp 0x1005897f
mov ecx, dword [ebp + 8]
cmp dword [ecx + 0x38], 5
jne 0x1005897f
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.100cbf20
add esp, 0x1c
mov dword [ebp - 0x308], eax
push eax
pop eax
cmp dword [ebp - 0x308], 0
jne 0x1005897f
mov edx, dword [ebp + 0x24]
mov eax, dword [edx]
push eax
call fcn.101174df
add esp, 4
mov ecx, dword [ebp + 0x24]
mov dword [ecx], 0
push edx
pop edx
xor eax, eax
jmp 0x10058a5f
mov edx, dword [ebp + 8]
cmp dword [edx + 0x3294], 0
je 0x10058a30
mov eax, dword [ebp + 8]
cmp dword [eax + 0x3298], 0
je 0x100589bc
mov ecx, dword [ebp + 8]
mov edx, dword [ecx + 0x3298]
push edx
call fcn.101174df
add esp, 4
mov eax, dword [ebp + 8]
mov dword [eax + 0x3298], 0
mov dh, dh
mov ecx, dword [ebp + 0x20]
mov edx, dword [ebp + 0x1c]
mov eax, dword [ecx]
imul eax, dword [edx + 8]
push eax
call fcn.1011741c
add esp, 4
mov ecx, dword [ebp + 8]
mov dword [ecx + 0x3298], eax
push eax
pop eax
mov edx, dword [ebp + 8]
cmp dword [edx + 0x3298], 0
je 0x10058a30
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.10119900
add esp, 0xc
mov esi, esi
mov ecx, dword [ebp + 8]
mov edx, dword [ebp + 0x1c]
mov eax, dword [edx + 4]
mov dword [ecx + 0x329c], eax
xchg ebx, eax
xchg ebx, eax
mov ecx, dword [ebp + 8]
mov edx, dword [ebp + 0x1c]
mov eax, dword [edx + 8]
mov dword [ecx + 0x32a0], eax
nop
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.1006d060
add esp, 0x20
mov eax, eax
mov eax, 1
pop edi
pop esi
mov ecx, dword [ebp - 0x14]
xor ecx, ebp
call fcn.101179ba
mov esp, ebp
pop ebp
ret