Function at 0x10003290
Capabilities:
Print debug messages

Disassembly:
sub esp, 0xc
mov al, byte [0x1000f520]
mov ecx, dword [0x1000f514]
push ebx
push ebp
mov byte [esp + 8], al
mov eax, dword [0x1000f1a4]
xor ebp, ebp
push esi
cmp eax, ebp
push edi
mov dword [esp + 0x14], ebp
mov dword [esp + 0x18], ecx
jne 0x100033e5
mov eax, dword [0x1000f148]
xor ebx, ebx
cmp eax, ebp
mov dword [0x1000f1a4], ebp
jne 0x100033a8
mov esi, dword [0x1000f154]
cmp esi, ebp
je 0x100033dd
cmp byte [esi], 0
je 0x100033dd
cmp dword [0x1000f14c], ebp
jne 0x100033dd
cmp esi, ebp
jne 0x10003365
je 0x10003351
cmp byte [esi], 0
je 0x10003351
push esi
call dword [sym.imp.KERNEL32.dll_lstrlenA]
lea ebp, [eax + 2]
push ebp
call fcn.10003fd9
mov edi, eax
add esp, 4
test edi, edi
mov dword [0x1000f154], edi
je 0x10003342
mov ecx, ebp
xor eax, eax
mov edx, ecx
push esi
shr ecx, 2
rep stosd dword es:[edi], eax
mov ecx, edx
and ecx, 3
rep stosb byte es:[edi], al
mov eax, dword [0x1000f154]
push eax
call dword [sym.imp.KERNEL32.dll_lstrcpyA]
xor ebp, ebp
jmp 0x1000335c
push str.CLateLoadBase::dll_LoadLibrary___Unable_to_allocate_memory_for_a_string_
call dword [sym.imp.KERNEL32.dll_OutputDebugStringA]
xor ebp, ebp
jmp 0x1000335c
push str.CLateLoadBase::dll_LoadLibrary___We_need_a_valid_pszLibrary_string
call dword [sym.imp.KERNEL32.dll_OutputDebugStringA]
mov eax, dword [0x1000f148]
cmp eax, ebp
jne 0x100033a8
push esi
mov dword [0x1000f14c], ebp
call dword [sym.imp.KERNEL32.dll_LoadLibraryA]
cmp eax, ebp
mov dword [0x1000f148], eax
jne 0x100033a8
call dword [sym.imp.KERNEL32.dll_GetLastError]
cmp eax, ebp
mov dword [0x1000f14c], eax
jne 0x1000339f
push str.Wow__that_should_NOT_have_happened___Could_you_tell_JED_how_you_did_it_
call dword [sym.imp.KERNEL32.dll_OutputDebugStringA]
mov dword [0x1000f14c], 0x20000000
mov eax, dword [0x1000f148]
cmp eax, ebp
je 0x100033d7
push 0x1000c3f8
push eax
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov ebx, eax
mov esi, dword [0x1000f154]
mov eax, dword [0x1000f148]
xor ecx, ecx
cmp ebx, ebp
mov dword [0x1000f1a0], ebx
setne cl
inc ecx
mov dword [0x1000f1a4], ecx
jmp 0x100033f0
mov esi, dword [0x1000f154]
mov dword [0x1000f1a0], ebx
jmp 0x100033f0
mov esi, dword [0x1000f154]
mov eax, dword [0x1000f148]
cmp dword [0x1000f1a4], 2
jne 0x10003419
mov edx, dword [esp + 0x10]
mov ecx, dword [esp + 0x18]
lea eax, [esp + 0x14]
push edx
push eax
push ecx
call dword [0x1000f1a0]
mov esi, dword [0x1000f154]
mov eax, dword [0x1000f148]
mov ecx, dword [0x1000f1e4]
mov dl, byte [0x1000f520]
mov ebx, dword [0x1000f514]
cmp ecx, ebp
mov byte [esp + 0x18], dl
jne 0x10003487
xor edi, edi
cmp eax, ebp
mov dword [0x1000f1e4], ebp
jne 0x10003466
cmp esi, ebp
je 0x10003481
cmp byte [esi], 0
je 0x10003481
cmp dword [0x1000f14c], ebp
jne 0x10003481
push 1
push esi
mov ecx, 0x1000f148
call fcn.10002730
mov eax, dword [0x1000f148]
cmp eax, ebp
je 0x10003481
push 0x1000c3e4
push eax
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov edi, eax
xor eax, eax
cmp edi, ebp
setne al
inc eax
mov dword [0x1000f1e4], eax
mov dword [0x1000f1e0], edi
cmp dword [0x1000f1e4], 2
je 0x1000349a
pop edi
pop esi
pop ebp
xor eax, eax
pop ebx
add esp, 0xc
ret
mov ecx, dword [esp + 0x18]
mov edx, dword [esp + 0x28]
mov eax, dword [esp + 0x24]
push ecx
mov ecx, dword [esp + 0x24]
push edx
push eax
push ecx
push ebx
call dword [0x1000f1e0]
pop edi
pop esi
pop ebp
pop ebx
add esp, 0xc
ret