Function at 0x5f5354
Capabilities:
Capture screenshot

Disassembly:
push ebp
mov ebp, esp
add esp, 0xffffff74
push ebx
push esi
push edi
xor edx, edx
mov dword [ebp - 4], edx
mov ebx, eax
xor eax, eax
push ebp
push 0x5f5eca
push dword fs:[eax]
mov dword fs:[eax], esp
cmp byte [ebx + 0x290], 1
je 0x5f54e1
cmp byte [ebx + 0x289], 0
jne 0x5f54e1
mov eax, dword [ebx + 0x2a8]
mov esi, dword [eax + 0x44]
test esi, esi
je 0x5f54e1
mov eax, esi
mov edx, dword [eax]
call dword [edx + 0x30]
cmp eax, dword [ebx + 0x48]
jne 0x5f54e1
mov eax, dword [ebx + 0x2a8]
mov eax, dword [eax + 0x44]
mov edx, dword [eax]
call dword [edx + 0x24]
cmp eax, dword [ebx + 0x4c]
jne 0x5f54e1
lea edx, [ebp - 0x20]
mov eax, ebx
call fcn.005f5008
cmp byte [ebx + 0x288], 0
jne 0x5f5408
lea edx, [ebp - 0x58]
mov eax, ebx
call fcn.005f4ed0
lea eax, [ebp - 0x58]
xor edx, edx
call fcn.005b681c
sub eax, 2
mov dword [ebp - 0x10], eax
mov eax, dword [ebp - 0x20]
add eax, 2
push eax
mov eax, dword [ebp - 0x10]
pop edx
mov ecx, edx
cdq
idiv ecx
mov esi, eax
jmp 0x5f5434
lea edx, [ebp - 0x58]
mov eax, ebx
call fcn.005f4ed0
lea eax, [ebp - 0x58]
xor edx, edx
call fcn.005b6830
sub eax, 2
mov dword [ebp - 0x14], eax
mov eax, dword [ebp - 0x1c]
add eax, 2
push eax
mov eax, dword [ebp - 0x14]
pop edx
mov ecx, edx
cdq
idiv ecx
mov esi, eax
cmp esi, 1
jle 0x5f54b0
mov eax, ebx
call fcn.0048a878
test eax, eax
je 0x5f54b0
mov eax, ebx
call fcn.0048a8b0
test eax, eax
je 0x5f54b0
mov eax, ebx
call fcn.0048a878
mov edi, eax
mov eax, ebx
call fcn.0048a840
sub edi, eax
je 0x5f54b0
mov eax, ebx
call fcn.0048a878
mov edi, eax
mov eax, ebx
call fcn.0048a840
sub edi, eax
mov dword [ebp - 0x5c], edi
fild dword [ebp - 0x5c]
mov dword [ebp - 0x60], esi
fild dword [ebp - 0x60]
call fcn.004048d0
fstp xword [ebp - 0x6c]
wait
mov eax, ebx
call fcn.0048a8b0
mov esi, eax
mov eax, ebx
call fcn.0048a840
sub esi, eax
mov dword [ebp - 0x70], esi
fild dword [ebp - 0x70]
fld xword [ebp - 0x6c]
fmulp st(1)
call fcn.0040474c
mov esi, eax
jmp 0x5f54b2
xor esi, esi
cmp esi, dword [ebx + 0x2a0]
jne 0x5f54db
mov eax, ebx
call fcn.0048a8b0
mov edi, eax
mov eax, ebx
call fcn.0048a840
sub edi, eax
mov eax, ebx
call fcn.0048a878
cmp edi, eax
jne 0x5f5eb4
mov dword [ebx + 0x2a0], esi
mov eax, dword [ebx + 0x2a8]
call fcn.00583b70
push 0
mov eax, dword [ebx + 0x4c]
push eax
lea eax, [ebp - 0x58]
push eax
mov ecx, dword [ebx + 0x48]
xor edx, edx
xor eax, eax
call fcn.0040b058
lea eax, [ebp - 0x58]
push eax
lea ecx, [ebp - 0x78]
mov edx, dword [ebx + 0x44]
mov eax, dword [ebx + 0x40]
call fcn.0040b088
lea eax, [ebp - 0x78]
push eax
mov eax, dword [ebx + 0x2a8]
mov eax, dword [eax + 0x44]
push eax
push 0
push 0
push 0
lea edx, [ebp - 0x8c]
mov esi, dword [ebx + 0x2a8]
mov eax, esi
call fcn.00583c80
lea edx, [ebp - 0x8c]
mov cl, 1
mov eax, esi
call fcn.0055bd10
mov eax, ebx
call fcn.0048a878
mov esi, eax
mov eax, ebx
call fcn.0048a840
cmp esi, eax
jle 0x5f5eb4
cmp dword [ebx + 0x2ac], 0
je 0x5f557b
lea eax, [ebp - 4]
mov edx, dword [ebx + 0x2ac]
call fcn.0040733c
jmp 0x5f55a0
cmp byte [ebx + 0x288], 1
jne 0x5f5593
lea eax, [ebp - 4]
mov edx, 0x5f5ee4
call fcn.0040733c
jmp 0x5f55a0
lea eax, [ebp - 4]
mov edx, 0x5f5f04
call fcn.0040733c
mov eax, dword [ebx + 0x2a8]
call fcn.005847c8
mov edx, dword [ebp - 4]
call fcn.0057e024
mov dword [ebp - 8], eax
lea eax, [ebp - 0x38]
push eax
mov eax, dword [ebx + 0x2a8]
mov eax, dword [eax + 0x44]
xor ecx, ecx
xor edx, edx
call fcn.005b6dc4
lea edx, [ebp - 0x48]
mov eax, ebx
call fcn.005f5f18
mov eax, dword [ebp - 0x40]
cmp eax, dword [ebp - 0x48]
jle 0x5f5eb4
mov eax, dword [ebp - 0x3c]
cmp eax, dword [ebp - 0x44]
jle 0x5f5eb4
lea edx, [ebp - 0x20]
mov eax, ebx
call fcn.005f5008
mov esi, dword [ebp - 0x20]
cmp esi, 2
jl 0x5f5eb4
cmp dword [ebp - 0x1c], 2
jl 0x5f5eb4
mov edx, dword [ebp - 0x1c]
mov eax, esi
call fcn.005621b8
mov dword [ebp - 0x18], eax
cmp byte [ebx + 0x290], 1
jne 0x5f57d0
mov dword [ebp - 0xc], 1
cmp byte [ebx + 0x288], 0
jne 0x5f5704
xor edi, edi
mov esi, dword [ebp - 0x20]
add esi, dword [ebp - 0xc]
imul esi, edi
add esi, dword [ebp - 0x48]
mov eax, dword [ebx + 0x48]
cmp esi, eax
jle 0x5f5653
sub esi, eax
push 1
push 0
mov eax, dword [ebp - 0x18]
mov edx, dword [eax]
call dword [edx + 0x24]
push eax
lea eax, [ebp - 0x58]
push eax
mov eax, dword [ebp - 0x18]
mov edx, dword [eax]
call dword [edx + 0x30]
mov ecx, eax
xor edx, edx
xor eax, eax
call fcn.0040b058
lea eax, [ebp - 0x58]
push eax
lea ecx, [ebp - 0x78]
mov edx, dword [ebp - 0x44]
mov eax, esi
call fcn.0040b088
lea eax, [ebp - 0x78]
push eax
mov eax, dword [ebp - 0x18]
push eax
mov eax, dword [ebx + 0x2a8]
call fcn.005847c8
push eax
push 0xffffffffffffffff
push 0xffffffffffffffff
lea ecx, [ebp - 0x38]
mov edx, dword [ebp - 4]
mov eax, dword [ebp - 8]
call fcn.0055b764
push 0xcc0020
push 0
push 0
mov eax, dword [ebp - 0x18]
call fcn.0045f2e4
call fcn.00459a4c
push eax
mov eax, dword [ebp - 0x18]
mov edx, dword [eax]
call dword [edx + 0x24]
push eax
mov eax, dword [ebp - 0x18]
mov edx, dword [eax]
call dword [edx + 0x30]
push eax
mov eax, dword [ebp - 0x44]
push eax
push esi
mov eax, dword [ebx + 0x2a8]
mov eax, dword [eax + 0x44]
call fcn.0045f2e4
call fcn.00459a4c
push eax
call sub.gdi32.dll_BitBlt
inc edi
cmp edi, 5
jne 0x5f563e
jmp 0x5f5eac
xor edi, edi
mov eax, dword [ebp - 0x1c]
mov edx, eax
add edx, dword [ebp - 0xc]
imul edx, edi
mov esi, dword [ebp - 0x3c]
sub esi, edx
sub esi, eax
test esi, esi
jge 0x5f571f
add esi, dword [ebx + 0x4c]
push 1
push 0
mov eax, dword [ebp - 0x18]
mov edx, dword [eax]
call dword [edx + 0x24]
push eax
lea eax, [ebp - 0x58]
push eax
mov eax, dword [ebp - 0x18]
mov edx, dword [eax]
call dword [edx + 0x30]
mov ecx, eax
xor edx, edx
xor eax, eax
call fcn.0040b058
lea eax, [ebp - 0x58]
push eax
lea ecx, [ebp - 0x78]
mov edx, esi
mov eax, dword [ebp - 0x48]
call fcn.0040b088
lea eax, [ebp - 0x78]
push eax
mov eax, dword [ebp - 0x18]
push eax
mov eax, dword [ebx + 0x2a8]
call fcn.005847c8
push eax
push 0xffffffffffffffff
push 0xffffffffffffffff
lea ecx, [ebp - 0x38]
mov edx, dword [ebp - 4]
mov eax, dword [ebp - 8]
call fcn.0055b764
push 0xcc0020
push 0
push 0
mov eax, dword [ebp - 0x18]
call fcn.0045f2e4
call fcn.00459a4c
push eax
mov eax, dword [ebp - 0x18]
mov edx, dword [eax]
call dword [edx + 0x24]
push eax
mov eax, dword [ebp - 0x18]
mov edx, dword [eax]
call dword [edx + 0x30]
push eax
push esi
mov eax, dword [ebp - 0x48]
push eax
mov eax, dword [ebx + 0x2a8]
mov eax, dword [eax + 0x44]
call fcn.0045f2e4
call fcn.00459a4c
push eax
call sub.gdi32.dll_BitBlt
inc edi
cmp edi, 5
jne 0x5f5706
jmp 0x5f5eac
cmp byte [ebx + 0x288], 0
jne 0x5f5b45
cmp byte [ebx + 0x289], 0
je 0x5f58a7
lea eax, [ebp - 0x48]
xor edx, edx
call fcn.005b681c
mov edx, eax
mov eax, dword [ebp - 0x18]
mov ecx, dword [eax]
call dword [ecx + 0x44]
push 1
push 0
mov eax, dword [ebp - 0x18]
mov edx, dword [eax]
call dword [edx + 0x24]
push eax
lea eax, [ebp - 0x58]
push eax
mov eax, dword [ebp - 0x18]
mov edx, dword [eax]
call dword [edx + 0x30]
mov ecx, eax
xor edx, edx
xor eax, eax
call fcn.0040b058
lea eax, [ebp - 0x58]
push eax
lea ecx, [ebp - 0x78]
mov edi, dword [ebp - 0x44]
mov edx, edi
mov esi, dword [ebp - 0x48]
mov eax, esi
call fcn.0040b088
lea eax, [ebp - 0x78]
push eax
mov eax, dword [ebp - 0x18]
push eax
mov eax, dword [ebx + 0x2a8]
call fcn.005847c8
push eax
push 0xffffffffffffffff
push 0xffffffffffffffff
lea ecx, [ebp - 0x38]
mov edx, dword [ebp - 4]
mov eax, dword [ebp - 8]
call fcn.0055b764
push 0xcc0020
push 0
push 0
mov eax, dword [ebp - 0x18]
call fcn.0045f2e4
call fcn.00459a4c
push eax
mov eax, dword [ebp - 0x18]
mov edx, dword [eax]
call dword [edx + 0x24]
push eax
mov eax, dword [ebp - 0x18]
mov edx, dword [eax]
call dword [edx + 0x30]
push eax
push edi
push esi
mov eax, dword [ebx + 0x2a8]
mov eax, dword [eax + 0x44]
call fcn.0045f2e4
call fcn.00459a4c
push eax
call sub.gdi32.dll_BitBlt
jmp 0x5f5eac
mov eax, ebx
call fcn.0048a878
test eax, eax
je 0x5f5eac
mov eax, ebx
call fcn.0048a8b0
test eax, eax
je 0x5f5eac
lea edx, [ebp - 0x58]
mov eax, ebx
call fcn.005f4ed0
lea eax, [ebp - 0x58]
xor edx, edx
call fcn.005b681c
sub eax, 2
mov dword [ebp - 0x10], eax
mov ecx, dword [ebp - 0x20]
mov eax, ecx
add eax, 2
push eax
mov eax, dword [ebp - 0x10]
pop edx
mov esi, edx
cdq
idiv esi
mov esi, eax
cmp esi, 1
jle 0x5f5eac
mov eax, esi
imul ecx
push eax
mov eax, dword [ebp - 0x10]
pop edx
sub eax, edx
mov edx, esi
dec edx
mov ecx, edx
cdq
idiv ecx
mov dword [ebp - 0xc], eax
mov eax, ebx
call fcn.0048a878
mov edi, eax
mov eax, ebx
call fcn.0048a840
sub edi, eax
mov dword [ebp - 0x5c], edi
fild dword [ebp - 0x5c]
mov dword [ebp - 0x60], esi
fild dword [ebp - 0x60]
call fcn.004048d0
fstp xword [ebp - 0x6c]
wait
mov eax, ebx
call fcn.0048a8b0
mov esi, eax
mov eax, ebx
call fcn.0048a840
sub esi, eax
mov dword [ebp - 0x70], esi
fild dword [ebp - 0x70]
fld xword [ebp - 0x6c]
fmulp st(1)
call fcn.0040474c
mov esi, eax
mov eax, esi
dec eax
test eax, eax
jl 0x5f5a2e
inc eax
mov dword [ebp - 0x24], eax
xor edi, edi
push 1
push 0
mov eax, dword [ebp - 0x18]
mov edx, dword [eax]
call dword [edx + 0x24]
push eax
lea eax, [ebp - 0x58]
push eax
mov eax, dword [ebp - 0x18]
mov edx, dword [eax]
call dword [edx + 0x30]
mov ecx, eax
xor edx, edx
xor eax, eax
call fcn.0040b058
lea eax, [ebp - 0x58]
push eax
lea ecx, [ebp - 0x78]
mov eax, dword [ebp - 0x20]
add eax, dword [ebp - 0xc]
imul edi
add eax, dword [ebp - 0x48]
mov edx, dword [ebp - 0x44]
call fcn.0040b088
lea eax, [ebp - 0x78]
push eax
mov eax, dword [ebp - 0x18]
push eax
mov eax, dword [ebx + 0x2a8]
call fcn.005847c8
push eax
push 0xffffffffffffffff
push 0xffffffffffffffff
lea ecx, [ebp - 0x38]
mov edx, dword [ebp - 4]
mov eax, dword [ebp - 8]
call fcn.0055b764
push 0xcc0020
push 0
push 0
mov eax, dword [ebp - 0x18]
call fcn.0045f2e4
call fcn.00459a4c
push eax
mov eax, dword [ebp - 0x18]
mov edx, dword [eax]
call dword [edx + 0x24]
push eax
mov eax, dword [ebp - 0x18]
mov edx, dword [eax]
call dword [edx + 0x30]
push eax
mov eax, dword [ebp - 0x44]
push eax
mov eax, dword [ebp - 0x20]
add eax, dword [ebp - 0xc]
imul edi
add eax, dword [ebp - 0x48]
push eax
mov eax, dword [ebx + 0x2a8]
mov eax, dword [eax + 0x44]
call fcn.0045f2e4
call fcn.00459a4c
push eax
call sub.gdi32.dll_BitBlt
inc edi
dec dword [ebp - 0x24]
jne 0x5f596e
test esi, esi
jle 0x5f5eac
mov eax, ebx
call fcn.0048a8b0
push eax
mov eax, ebx
call fcn.0048a878
pop edx
cmp edx, eax
jne 0x5f5eac
mov eax, esi
dec eax
mov edi, dword [ebp - 0x20]
mov edx, edi
add edx, dword [ebp - 0xc]
imul edx
mov edx, dword [ebp - 0x10]
sub edx, eax
sub edx, edi
cmp edx, 3
jle 0x5f5eac
mov edx, esi
dec edx
mov eax, dword [ebp - 0x20]
mov ecx, eax
add ecx, dword [ebp - 0xc]
imul edx, ecx
push edx
mov edx, dword [ebp - 0x10]
pop ecx
sub edx, ecx
sub edx, eax
mov eax, dword [ebp - 0x18]
mov ecx, dword [eax]
call dword [ecx + 0x44]
push 1
push 0
mov eax, dword [ebp - 0x18]
mov edx, dword [eax]
call dword [edx + 0x24]
push eax
lea eax, [ebp - 0x58]
push eax
mov eax, dword [ebp - 0x18]
mov edx, dword [eax]
call dword [edx + 0x30]
mov ecx, eax
xor edx, edx
xor eax, eax
call fcn.0040b058
lea eax, [ebp - 0x58]
push eax
lea ecx, [ebp - 0x78]
mov eax, dword [ebp - 0x20]
add eax, dword [ebp - 0xc]
imul esi
add eax, dword [ebp - 0x48]
mov edx, dword [ebp - 0x44]
call fcn.0040b088
lea eax, [ebp - 0x78]
push eax
mov eax, dword [ebp - 0x18]
push eax
mov eax, dword [ebx + 0x2a8]
call fcn.005847c8
push eax
push 0xffffffffffffffff
push 0xffffffffffffffff
lea ecx, [ebp - 0x38]
mov edx, dword [ebp - 4]
mov eax, dword [ebp - 8]
call fcn.0055b764
push 0xcc0020
push 0
push 0
mov eax, dword [ebp - 0x18]
call fcn.0045f2e4
call fcn.00459a4c
push eax
mov eax, dword [ebp - 0x18]
mov edx, dword [eax]
call dword [edx + 0x24]
push eax
mov eax, dword [ebp - 0x18]
mov edx, dword [eax]
call dword [edx + 0x30]
push eax
mov eax, dword [ebp - 0x44]
push eax
mov eax, dword [ebp - 0x20]
add eax, dword [ebp - 0xc]
imul esi
add eax, dword [ebp - 0x48]
push eax
mov eax, dword [ebx + 0x2a8]
mov eax, dword [eax + 0x44]
call fcn.0045f2e4
call fcn.00459a4c
push eax
call sub.gdi32.dll_BitBlt
jmp 0x5f5eac
cmp byte [ebx + 0x289], 0
je 0x5f5c0f
lea eax, [ebp - 0x48]
xor edx, edx
call fcn.005b6830
mov edx, eax
mov eax, dword [ebp - 0x18]
mov ecx, dword [eax]
call dword [ecx + 0x38]
push 1
push 0
mov eax, dword [ebp - 0x18]
mov edx, dword [eax]
call dword [edx + 0x24]
push eax
lea eax, [ebp - 0x58]
push eax
mov eax, dword [ebp - 0x18]
mov edx, dword [eax]
call dword [edx + 0x30]
mov ecx, eax
xor edx, edx
xor eax, eax
call fcn.0040b058
lea eax, [ebp - 0x58]
push eax
lea ecx, [ebp - 0x78]
mov edi, dword [ebp - 0x44]
mov edx, edi
mov esi, dword [ebp - 0x48]
mov eax, esi
call fcn.0040b088
lea eax, [ebp - 0x78]
push eax
mov eax, dword [ebp - 0x18]
push eax
mov eax, dword [ebx + 0x2a8]
call fcn.005847c8
push eax
push 0xffffffffffffffff
push 0xffffffffffffffff
lea ecx, [ebp - 0x38]
mov edx, dword [ebp - 4]
mov eax, dword [ebp - 8]
call fcn.0055b764
push 0xcc0020
push 0
push 0
mov eax, dword [ebp - 0x18]
call fcn.0045f2e4
call fcn.00459a4c
push eax
mov eax, dword [ebp - 0x18]
mov edx, dword [eax]
call dword [edx + 0x24]
push eax
mov eax, dword [ebp - 0x18]
mov edx, dword [eax]
call dword [edx + 0x30]
push eax
push edi
push esi
mov eax, dword [ebx + 0x2a8]
mov eax, dword [eax + 0x44]
call fcn.0045f2e4
call fcn.00459a4c
push eax
call sub.gdi32.dll_BitBlt
jmp 0x5f5eac
mov eax, ebx
call fcn.0048a878
test eax, eax
je 0x5f5eac
mov eax, ebx
call fcn.0048a8b0
test eax, eax
je 0x5f5eac
lea edx, [ebp - 0x58]
mov eax, ebx
call fcn.005f4ed0
lea eax, [ebp - 0x58]
xor edx, edx
call fcn.005b6830
sub eax, 2
mov dword [ebp - 0x14], eax
mov ecx, dword [ebp - 0x1c]
mov eax, ecx
add eax, 2
push eax
mov eax, dword [ebp - 0x14]
pop edx
mov esi, edx
cdq
idiv esi
mov esi, eax
cmp esi, 1
jle 0x5f5eac
mov eax, esi
imul ecx
push eax
mov eax, dword [ebp - 0x14]
pop edx
sub eax, edx
mov edx, esi
dec edx
mov ecx, edx
cdq
idiv ecx
mov dword [ebp - 0xc], eax
mov eax, ebx
call fcn.0048a878
mov edi, eax
mov eax, ebx
call fcn.0048a840
sub edi, eax
mov dword [ebp - 0x5c], edi
fild dword [ebp - 0x5c]
mov dword [ebp - 0x60], esi
fild dword [ebp - 0x60]
call fcn.004048d0
fstp xword [ebp - 0x6c]
wait
mov eax, ebx
call fcn.0048a8b0
mov esi, eax
mov eax, ebx
call fcn.0048a840
sub esi, eax
mov dword [ebp - 0x70], esi
fild dword [ebp - 0x70]
fld xword [ebp - 0x6c]
fmulp st(1)
call fcn.0040474c
mov esi, eax
mov eax, esi
dec eax
test eax, eax
jl 0x5f5da0
inc eax
mov dword [ebp - 0x24], eax
xor edi, edi
push 1
push 0
mov eax, dword [ebp - 0x18]
mov edx, dword [eax]
call dword [edx + 0x24]
push eax
lea eax, [ebp - 0x58]
push eax
mov eax, dword [ebp - 0x18]
mov edx, dword [eax]
call dword [edx + 0x30]
mov ecx, eax
xor edx, edx
xor eax, eax
call fcn.0040b058
lea eax, [ebp - 0x58]
push eax
mov eax, dword [ebp - 0x1c]
add eax, dword [ebp - 0xc]
imul edi
mov edx, dword [ebp - 0x3c]
sub edx, eax
sub edx, dword [ebp - 0x1c]
lea ecx, [ebp - 0x78]
mov eax, dword [ebp - 0x48]
call fcn.0040b088
lea eax, [ebp - 0x78]
push eax
mov eax, dword [ebp - 0x18]
push eax
mov eax, dword [ebx + 0x2a8]
call fcn.005847c8
push eax
push 0xffffffffffffffff
push 0xffffffffffffffff
lea ecx, [ebp - 0x38]
mov edx, dword [ebp - 4]
mov eax, dword [ebp - 8]
call fcn.0055b764
push 0xcc0020
push 0
push 0
mov eax, dword [ebp - 0x18]
call fcn.0045f2e4
call fcn.00459a4c
push eax
mov eax, dword [ebp - 0x18]
mov edx, dword [eax]
call dword [edx + 0x24]
push eax
mov eax, dword [ebp - 0x18]
mov edx, dword [eax]
call dword [edx + 0x30]
push eax
mov eax, dword [ebp - 0x1c]
add eax, dword [ebp - 0xc]
imul edi
mov edx, dword [ebp - 0x3c]
sub edx, eax
sub edx, dword [ebp - 0x1c]
push edx
mov eax, dword [ebp - 0x48]
push eax
mov eax, dword [ebx + 0x2a8]
mov eax, dword [eax + 0x44]
call fcn.0045f2e4
call fcn.00459a4c
push eax
call sub.gdi32.dll_BitBlt
inc edi
dec dword [ebp - 0x24]
jne 0x5f5cd6
test esi, esi
jle 0x5f5eac
mov eax, ebx
call fcn.0048a8b0
push eax
mov eax, ebx
call fcn.0048a878
pop edx
cmp edx, eax
jne 0x5f5eac
mov eax, esi
dec eax
mov edi, dword [ebp - 0x1c]
mov edx, edi
add edx, dword [ebp - 0xc]
imul edx
mov edx, dword [ebp - 0x14]
sub edx, eax
sub edx, edi
cmp edx, 3
jle 0x5f5eac
lea edx, [ebp - 0x58]
mov eax, ebx
call fcn.005f4ed0
lea eax, [ebp - 0x58]
xor edx, edx
call fcn.005b6830
mov edx, eax
mov eax, dword [ebp - 0x1c]
add eax, dword [ebp - 0xc]
imul eax, esi
sub edx, eax
mov eax, dword [ebp - 0x18]
mov ecx, dword [eax]
call dword [ecx + 0x38]
push 1
push 0
mov eax, dword [ebp - 0x18]
mov edx, dword [eax]
call dword [edx + 0x24]
push eax
lea eax, [ebp - 0x58]
push eax
mov eax, dword [ebp - 0x18]
mov edx, dword [eax]
call dword [edx + 0x30]
mov ecx, eax
xor edx, edx
xor eax, eax
call fcn.0040b058
lea eax, [ebp - 0x58]
push eax
lea ecx, [ebp - 0x78]
mov edx, dword [ebp - 0x44]
mov eax, dword [ebp - 0x48]
call fcn.0040b088
lea eax, [ebp - 0x78]
push eax
mov eax, dword [ebp - 0x18]
push eax
mov eax, dword [ebx + 0x2a8]
call fcn.005847c8
push eax
push 0xffffffffffffffff
push 0xffffffffffffffff
lea ecx, [ebp - 0x38]
mov edx, dword [ebp - 4]
mov eax, dword [ebp - 8]
call fcn.0055b764
push 0xcc0020
push 0
push 0
mov eax, dword [ebp - 0x18]
call fcn.0045f2e4
call fcn.00459a4c
push eax
mov eax, dword [ebp - 0x18]
mov edx, dword [eax]
call dword [edx + 0x24]
push eax
mov eax, dword [ebp - 0x18]
mov edx, dword [eax]
call dword [edx + 0x30]
push eax
mov eax, dword [ebp - 0x44]
push eax
mov eax, dword [ebp - 0x48]
push eax
mov eax, dword [ebx + 0x2a8]
mov eax, dword [eax + 0x44]
call fcn.0045f2e4
call fcn.00459a4c
push eax
call sub.gdi32.dll_BitBlt
lea eax, [ebp - 0x18]
call fcn.0041caa8
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
push 0x5f5ed1
lea eax, [ebp - 4]
call fcn.004072d8
ret