Function at 0x5eb545
Capabilities:
Print debug messages

Disassembly:
mov edx, dword [esp + 4]
sub esp, 0xa0
test edx, edx
push ebx
push esi
push edi
je 0x5eb7c5
mov ecx, 8
xor eax, eax
lea edi, [esp + 0xc]
rep stosd dword es:[edi], eax
mov eax, dword [edx]
lea ecx, [esp + 0xc]
push ecx
push edx
mov dword [esp + 0x14], 0x20
call dword [eax + 0x54]
cmp dword [esp + 0x18], 8
je 0x5eb7c5
mov edx, dword [esp + 0x1c]
push ebp
push edx
call fcn.005eb81a
mov dword [0x7fc050], eax
mov eax, dword [esp + 0x28]
push eax
call fcn.005eb81a
mov ecx, dword [esp + 0x30]
mov dword [0x7fc054], eax
push ecx
call fcn.005eb81a
mov edx, dword [esp + 0x2c]
mov dword [0x7fc058], eax
push edx
call fcn.005eb837
mov dword [0x7fc044], eax
mov eax, dword [esp + 0x34]
push eax
call fcn.005eb837
mov ecx, dword [esp + 0x3c]
mov dword [0x7fc048], eax
push ecx
call fcn.005eb837
mov edx, dword [esp + 0x38]
mov esi, dword [esp + 0x3c]
mov edi, dword [esp + 0x40]
mov dword [0x7fc04c], eax
mov ebx, dword [0x7fc058]
mov ebp, dword [0x7fc054]
mov eax, edx
mov ecx, esi
not eax
mov dword [0x7fc064], eax
mov eax, edi
not ecx
not eax
mov dword [0x7fc06c], ecx
mov dword [0x7fc074], eax
mov eax, dword [0x7fc050]
lea ecx, [ebx + ebp]
add ecx, eax
mov dword [0x7fc060], edx
mov dword [0x7fc05c], ecx
mov ecx, edi
or ecx, esi
push ebx
mov eax, ecx
push ebp
or eax, edx
mov dword [0x7fc090], ecx
shl eax, 0x10
or eax, edi
mov dword [0x7fc068], esi
or eax, esi
mov dword [0x7fc070], edi
or eax, edx
mov edx, dword [0x7fc050]
mov dword [0x7fc078], eax
push edx
not eax
mov dword [0x7fc08c], eax
lea eax, [esp + 0x54]
not ecx
push 0x7cb210
push eax
mov dword [0x7fc094], ecx
call fcn.00674915
mov esi, dword [sym.imp.KERNEL32.dll_OutputDebugStringA]
add esp, 0x2c
lea ecx, [esp + 0x30]
push ecx
call esi
mov edx, dword [0x7fc04c]
mov eax, dword [0x7fc048]
mov ecx, dword [0x7fc044]
push edx
push eax
push ecx
push 0x7cb1f0
lea edx, [esp + 0x40]
push edx
call fcn.00674915
add esp, 0x14
lea eax, [esp + 0x30]
push eax
call esi
mov eax, dword [0x7fc070]
mov ecx, dword [0x7fc068]
mov esi, eax
mov edx, ecx
sar esi, 1
sar edx, 1
and esi, eax
and edx, ecx
or esi, edx
mov edx, dword [0x7fc060]
mov edi, edx
pop ebp
sar edi, 1
and edi, edx
or esi, edi
mov edi, ecx
mov dword [0x7fc07c], esi
mov esi, eax
sar esi, 2
sar edi, 2
and esi, eax
and edi, ecx
or esi, edi
mov edi, edx
sar edi, 2
and edi, edx
or esi, edi
mov edi, ecx
mov dword [0x7fc080], esi
mov esi, eax
sar esi, 3
sar edi, 3
and esi, eax
and edi, ecx
or esi, edi
mov edi, edx
sar edi, 3
and edi, edx
or esi, edi
mov dword [0x7fc084], esi
mov esi, eax
sar esi, 4
and esi, eax
mov eax, ecx
sar eax, 4
and eax, ecx
mov ecx, edx
sar ecx, 4
or esi, eax
mov eax, dword [0x7fc054]
and ecx, edx
or esi, ecx
mov ecx, 5
cmp eax, ecx
mov dword [0x7fc088], esi
jne 0x5eb788
mov eax, 0x20000008
mov dword [0x7fc1a8], 6
mov dword [0x7fc190], eax
mov dword [0x7fc194], eax
mov eax, 0xf800f8
mov dword [0x7fc198], eax
mov dword [0x7fc19c], eax
mov eax, 0xf800
mov dword [0x7fc1a0], eax
mov dword [0x7fc1a4], eax
jmp 0x5eb7bb
mov eax, 0x40000008
mov dword [0x7fc1a8], ecx
mov dword [0x7fc190], eax
mov dword [0x7fc194], eax
mov eax, 0xf800f8
mov dword [0x7fc198], eax
mov dword [0x7fc19c], eax
mov eax, 0xfc00
mov dword [0x7fc1a0], eax
mov dword [0x7fc1a4], eax
mov dword [0x7fc1ac], 0
mov dword [0x7fc008], 0xffff
call fcn.005eb84b
mov ecx, dword [0x77613c]
mov esi, dword [esp + 0xb4]
mov edi, dword [esp + 0xbc]
mov ebx, dword [esp + 0xb8]
inc ecx
test esi, esi
mov dword [0x77613c], ecx
je 0x5eb806
push edi
push ebx
call fcn.005eb8dc
add esp, 8
mov dword [esi], eax
push edi
push ebx
call fcn.005eb8a5
add esp, 8
pop edi
pop esi
pop ebx
add esp, 0xa0
ret