Function at 0x41ab00
Capabilities:
Print debug messages

Disassembly:
sub esp, 0x10c
mov eax, dword [0x4382c4]
xor eax, esp
mov dword [esp + 0x108], eax
push ebx
mov ebx, dword [sym.imp.KERNEL32.dll_GlobalAlloc]
push esi
push edi
push 0x44
push 0x40
mov esi, ecx
call ebx
xor edi, edi
cmp eax, edi
mov dword [esi + 0xcc], eax
jne 0x41ab38
xor al, al
jmp 0x41ad1e
push ebp
mov ebp, dword [sym.imp.KERNEL32.dll_GlobalLock]
push eax
call ebp
cmp eax, edi
mov dword [esi + 0xbc], eax
jne 0x41ab60
mov eax, dword [esi + 0xcc]
push eax
call dword [sym.imp.KERNEL32.dll_GlobalFree]
xor al, al
jmp 0x41ad1d
push 0x2c
push 0x40
call ebx
cmp eax, edi
mov dword [esi + 0xc8], eax
jne 0x41ab91
mov ecx, dword [esi + 0xcc]
push ecx
call dword [sym.imp.KERNEL32.dll_GlobalUnlock]
mov edx, dword [esi + 0xcc]
push edx
call dword [sym.imp.KERNEL32.dll_GlobalFree]
xor al, al
jmp 0x41ad1d
push eax
call ebp
cmp eax, edi
mov dword [esi + 0xb8], eax
jne 0x41abca
mov eax, dword [esi + 0xcc]
push eax
call dword [sym.imp.KERNEL32.dll_GlobalUnlock]
mov ecx, dword [esi + 0xcc]
mov edi, dword [sym.imp.KERNEL32.dll_GlobalFree]
push ecx
call edi
mov edx, dword [esi + 0xc8]
push edx
call edi
xor al, al
jmp 0x41ad1d
mov dword [eax + 0xc], 0x41adb0
mov eax, dword [esi + 0xb8]
mov dword [eax], 0x41adc0
mov ecx, dword [esi + 0xb8]
mov dword [ecx + 4], edi
mov edx, dword [esi + 0xb8]
mov dword [edx + 8], method.CWindowIterator.virtual_4
mov eax, dword [esi + 0xb8]
lea ecx, [esp + 0x10]
push ecx
lea edx, [esp + 0x18]
push edx
push 0x104
push edi
push str.UnZip32.dll
push edi
mov dword [eax + 0x10], 0x41ada0
call dword [sym.imp.KERNEL32.dll_SearchPathA]
test eax, eax
jne 0x41ac37
push str.Load_UnZip32.dll_failed
call dword [sym.imp.KERNEL32.dll_OutputDebugStringA]
call fcn.0041ad60
xor al, al
jmp 0x41ad1d
cmp dword [esi + 0xc0], edi
jne 0x41ac6a
push str.UnZip32.dll
call dword [sym.imp.KERNEL32.dll_LoadLibraryA]
cmp eax, edi
mov dword [esi + 0xc0], eax
je 0x41ad38
push 0x434e88
push eax
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [esi + 0xb0], eax
mov eax, dword [esi + 0xbc]
mov dword [eax + 0x10], edi
mov ecx, dword [esi + 0xbc]
mov dword [ecx + 0xc], 2
mov edx, dword [esi + 0xbc]
mov dword [edx + 0x14], edi
mov eax, dword [esi + 0xbc]
mov dword [eax + 0x18], edi
mov ecx, dword [esi + 0xbc]
mov dword [ecx + 0x20], edi
mov edx, dword [esi + 0xbc]
mov eax, 1
mov dword [edx + 0x24], eax
mov ecx, dword [esi + 0xbc]
mov dword [ecx + 0x2c], edi
mov edx, dword [esi + 0xbc]
mov dword [edx + 0x1c], edi
mov ecx, dword [esi + 0xbc]
mov dword [ecx + 0x28], eax
mov edx, dword [esi + 0xbc]
mov dword [edx], edi
mov eax, dword [esi + 0xbc]
mov edx, dword [esp + 0x124]
mov dword [eax + 8], edi
mov ecx, dword [esi + 0xbc]
mov dword [ecx + 0x3c], edx
mov eax, dword [esi + 0xbc]
mov ecx, dword [esp + 0x120]
mov dword [eax + 0x40], ecx
mov edx, dword [esi + 0xb8]
mov eax, dword [esi + 0xbc]
mov ecx, dword [esi + 0xb0]
push edx
push eax
push edi
push edi
push edi
push edi
call ecx
mov ebx, eax
call fcn.0041ad60
xor eax, eax
cmp ebx, edi
sete al
pop ebp
mov ecx, dword [esp + 0x114]
pop edi
pop esi
pop ebx
xor ecx, esp
call fcn.0041aec3
add esp, 0x10c
ret 8
push str.call_UnZip32::Wiz_SingleEntryUnzip_failed
call dword [sym.imp.KERNEL32.dll_OutputDebugStringA]
call fcn.0041ad60
xor al, al
jmp 0x41ad1d