Function at 0x532550
Capabilities:
Print debug messages

Disassembly:
push ebp
mov ebp, esp
add esp, 0xffffffa4
push ebx
push esi
push edi
xor ebx, ebx
mov dword [ebp - 0x50], ebx
mov dword [ebp - 0x44], ebx
mov dword [ebp - 0x10], ebx
mov dword [ebp - 0xc], ebx
mov dword [ebp - 8], ebx
mov dword [ebp - 4], ebx
mov dword [ebp - 0x3c], ebx
mov dword [ebp - 0x40], ebx
mov ebx, edx
mov dword [ebp - 0x14], eax
xor eax, eax
push ebp
push 0x532891
push dword fs:[eax]
mov dword fs:[eax], esp
lea eax, [ebp - 0x44]
push eax
mov eax, dword [ebp - 0x14]
mov dword [ebp - 0x4c], eax
mov byte [ebp - 0x48], 0
lea edx, [ebp - 0x4c]
xor ecx, ecx
mov eax, 0x5328a8
call fcn.0040d608
mov eax, dword [ebp - 0x44]
call fcn.00405194
push eax
call sub.kernel32.dll_OutputDebugStringA
cmp ebx, 0x4b
jne 0x532610
lea eax, [ebp - 0x50]
push eax
mov edx, 0x73a
mov eax, dword [ebp - 0x14]
call fcn.005322ac
mov dword [ebp - 0x4c], eax
mov byte [ebp - 0x48], 0
lea edx, [ebp - 0x4c]
xor ecx, ecx
mov eax, 0x5328d4
call fcn.0040d608
mov eax, dword [ebp - 0x50]
call fcn.005aea34
mov eax, dword [ebp - 0x14]
cmp word [eax + 0xba], 0
je 0x532604
mov ebx, dword [ebp - 0x14]
mov edx, dword [ebp - 0x14]
mov eax, dword [ebx + 0xbc]
call dword [ebx + 0xb8]
mov eax, dword [ebp - 0x14]
mov byte [eax + 4], 0
jmp 0x53284f
cmp ebx, 0x4c
jne 0x5326da
xor eax, eax
push ebp
push 0x532650
push dword fs:[eax]
mov dword fs:[eax], esp
mov eax, dword [ebp - 0x14]
cmp word [eax + 0xd2], 0
je 0x532646
mov ebx, dword [ebp - 0x14]
mov edx, dword [ebp - 0x14]
mov eax, dword [ebx + 0xd4]
call dword [ebx + 0xd0]
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x53265a
lea eax, [ebp - 0x54]
push eax
mov eax, dword [ebp - 0x14]
mov eax, dword [eax + 0x64]
push eax
mov eax, dword [eax]
call dword [eax + 0x1c]
call fcn.00406d30
cmp dword [ebp - 0x54], 0
jle 0x53284f
lea eax, [ebp - 0x5c]
push eax
push 0x7a2
push 0
mov eax, dword [ebp - 0x14]
mov eax, dword [eax + 0x64]
push eax
mov eax, dword [eax]
call dword [eax + 0x24]
call fcn.00406d30
lea eax, [ebp - 0x5c]
mov dword [ebp - 0x4c], eax
mov byte [ebp - 0x48], 0x10
lea edx, [ebp - 0x4c]
xor ecx, ecx
mov eax, 0x5328e0
call fcn.005aea90
xor ecx, ecx
mov edx, 0x7a0
mov eax, dword [0x5ce7ac]
call fcn.00531d7c
mov dword [ebp - 0x4c], eax
mov byte [ebp - 0x48], 0
lea edx, [ebp - 0x4c]
xor ecx, ecx
mov eax, 0x532908
call fcn.005aea90
jmp 0x53284f
cmp ebx, 0x64
je 0x5326fc
cmp ebx, 0x65
je 0x5326fc
cmp ebx, 0x66
je 0x5326fc
cmp ebx, 0x67
je 0x5326fc
cmp ebx, 0x68
je 0x5326fc
cmp ebx, 0x6c
jne 0x53284f
mov eax, 0x53292c
call fcn.005aea34
mov eax, dword [ebp - 0x14]
cmp dword [eax + 0x10], 0
je 0x53284f
lea eax, [ebp - 0x10]
call fcn.00413d60
push eax
push ebx
mov eax, dword [ebp - 0x14]
mov eax, dword [eax + 0x10]
push eax
mov eax, dword [eax]
call dword [eax + 0x48]
call fcn.00406d30
mov eax, dword [ebp - 8]
mov dword [ebp - 0x18], eax
lea eax, [ebp - 0x1c]
push eax
push 1
mov eax, dword [ebp - 0x18]
push eax
call sub.oleaut32.dll_SafeArrayGetLBound_1
lea eax, [ebp - 0x20]
push eax
push 1
mov eax, dword [ebp - 0x18]
push eax
call sub.oleaut32.dll_SafeArrayGetUBound_1
lea eax, [ebp - 0x24]
push eax
push 2
mov eax, dword [ebp - 0x18]
push eax
call sub.oleaut32.dll_SafeArrayGetLBound_1
lea eax, [ebp - 0x28]
push eax
push 2
mov eax, dword [ebp - 0x18]
push eax
call sub.oleaut32.dll_SafeArrayGetUBound_1
mov eax, dword [ebp - 0x20]
cmp eax, dword [ebp - 0x1c]
jle 0x532814
mov eax, dword [ebp - 0x20]
sub eax, dword [ebp - 0x1c]
inc eax
push eax
lea eax, [ebp - 0x3c]
mov ecx, 1
mov edx, dword [0x5324f0]
call fcn.004063b4
add esp, 4
mov eax, dword [ebp - 0x20]
sub eax, dword [ebp - 0x1c]
inc eax
push eax
lea eax, [ebp - 0x40]
mov ecx, 1
mov edx, dword [0x532520]
call fcn.004063b4
add esp, 4
mov esi, dword [ebp - 0x1c]
mov edi, dword [ebp - 0x20]
sub edi, esi
jl 0x532814
inc edi
mov dword [ebp - 0x30], esi
xor eax, eax
mov dword [ebp - 0x2c], eax
lea eax, [ebp - 0x38]
push eax
lea eax, [ebp - 0x30]
push eax
mov eax, dword [ebp - 0x18]
push eax
call sub.oleaut32.dll_SafeArrayGetElement
mov eax, dword [ebp - 0x3c]
mov edx, dword [ebp - 0x38]
mov dword [eax + esi*4], edx
mov dword [ebp - 0x30], esi
mov dword [ebp - 0x2c], 1
lea eax, [ebp - 0x38]
push eax
lea eax, [ebp - 0x30]
push eax
mov eax, dword [ebp - 0x18]
push eax
call sub.oleaut32.dll_SafeArrayGetElement
mov eax, dword [ebp - 0x40]
mov edx, dword [ebp - 0x38]
mov dword [eax + esi*8], edx
mov edx, dword [ebp - 0x34]
mov dword [eax + esi*8 + 4], edx
inc esi
dec edi
jne 0x5327c3
mov eax, dword [ebp - 0x14]
cmp word [eax + 0xda], 0
je 0x53284f
mov eax, dword [ebp - 0x3c]
push eax
mov eax, dword [ebp - 0x3c]
call fcn.004061e0
push eax
mov eax, dword [ebp - 0x40]
push eax
mov eax, dword [ebp - 0x40]
call fcn.004061e0
push eax
mov esi, dword [ebp - 0x14]
mov ecx, ebx
mov edx, dword [ebp - 0x14]
mov eax, dword [esi + 0xdc]
call dword [esi + 0xd8]
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
push 0x532898
lea eax, [ebp - 0x50]
call fcn.00404cd4
lea eax, [ebp - 0x44]
call fcn.00404cd4
lea eax, [ebp - 0x40]
mov edx, dword [0x532520]
call fcn.004064c0
lea eax, [ebp - 0x3c]
mov edx, dword [0x5324f0]
call fcn.004064c0
lea eax, [ebp - 0x10]
call fcn.00413d60
ret