Function at 0x1005d5f1
Capabilities:
Resolve function by parsing pe exports

Disassembly:
mov edi, edi
push ebp
mov ebp, esp
and esp, 0xfffffff8
sub esp, 0xcc
mov eax, dword [0x1008a418]
xor eax, esp
mov dword [esp + 0xc8], eax
mov eax, dword [ebp + 8]
push ebx
mov dword [esp + 0x2c], ecx
xor ecx, ecx
push esi
mov ebx, ecx
mov dword [esp + 0x3c], edx
mov esi, ecx
mov dword [esp + 0x14], ecx
push edi
mov edi, dword [eax]
mov dword [esp + 0x3c], esi
mov dword [esp + 0x44], ecx
mov dword [esp + 0x14], ecx
mov dword [esp + 0x20], ebx
mov dword [esp + 0x1c], ebx
mov dword [esp + 0x24], ecx
mov dword [esp + 0x4c], ecx
mov dword [esp + 0x28], ecx
mov dword [esp + 0x2c], ecx
call fcn.1005d52d
mov dword [esp + 0x48], eax
mov eax, dword [0x1008b494]
mov dword [esp + 0x30], eax
test eax, eax
jne 0x1005d669
mov dword [esp + 0x30], 0x3a09001f
mov ecx, dword [0x1008b490]
mov dword [esp + 0x38], ecx
test ecx, ecx
jne 0x1005d680
mov ecx, 0x3a08001f
mov dword [esp + 0x38], ecx
xor eax, eax
mov edx, eax
mov eax, dword [esp + 0x34]
mov dword [esp + 0x10], edx
test eax, eax
je 0x1005d846
mov esi, dword [esp + 0x40]
add esi, 8
mov eax, dword [esi - 8]
cmp eax, dword [esp + 0x30]
jne 0x1005d6ca
movzx eax, ax
cmp eax, 0x1f
jne 0x1005d6bd
lea ecx, [edi + 0x88]
mov edx, dword [esi]
push 0x20
call fcn.10063459
jmp 0x1005d6f3
cmp eax, 0x40
jne 0x1005d6f7
lea ecx, [edi + 0x88]
jmp 0x1005d6e9
cmp eax, ecx
jne 0x1005d6f7
movzx eax, ax
cmp eax, 0x1f
jne 0x1005d6de
lea ecx, [edi + 0xc8]
jmp 0x1005d6b2
cmp eax, 0x40
jne 0x1005d6f7
lea ecx, [edi + 0xc8]
push dword [esi + 4]
push dword [esi]
call fcn.1005d562
mov edx, dword [esp + 0x10]
mov eax, dword [esi - 8]
mov ecx, 0x3a11001f
cmp eax, ecx
ja 0x1005d7a3
je 0x1005d794
cmp eax, 0xffe0003
je 0x1005d787
cmp eax, 0xfff0102
je 0x1005d75f
cmp eax, 0x3001001f
je 0x1005d754
cmp eax, 0x3003001f
je 0x1005d73f
cmp eax, 0x3a06001f
jne 0x1005d7bf
mov eax, dword [esi]
mov dword [esp + 0x14], eax
jmp 0x1005d82a
mov edx, dword [esi]
lea ecx, [edi + 0x48]
push 0x20
call fcn.10063459
mov edx, dword [esp + 0x10]
jmp 0x1005d82a
mov eax, dword [esi]
mov dword [esp + 0x3c], eax
jmp 0x1005d82a
mov eax, dword [esi]
push eax
push 0x40
mov dword [edi], eax
call dword [sym.imp.KERNEL32.dll_LocalAlloc]
mov dword [edi + 4], eax
test eax, eax
je 0x1005da6c
push dword [edi]
push dword [esi + 4]
push eax
call sub.msvcrt.dll_memcpy
add esp, 0xc
jmp 0x1005d74b
mov eax, dword [esi]
mov dword [edi + 0x18c], eax
jmp 0x1005d82a
mov ebx, dword [esi]
mov dword [esp + 0x20], ebx
mov dword [esp + 0x1c], ebx
jmp 0x1005d82a
cmp eax, 0x3a16001f
je 0x1005d824
cmp eax, 0x3a44001f
je 0x1005d81c
cmp eax, 0x3a4f001f
je 0x1005d814
cmp eax, 0x3a701102
je 0x1005d808
cmp eax, 0x66070003
jne 0x1005d7d2
mov dword [edi + 0x194], 1
jmp 0x1005d82a
cmp eax, dword [0x1008b3dc]
jne 0x1005d7ed
mov eax, dword [esi]
test eax, eax
je 0x1005d82a
xor ecx, ecx
cmp word [eax], cx
je 0x1005d82a
mov dword [esp + 0x4c], eax
jmp 0x1005d82a
cmp eax, dword [0x1008b3d8]
jne 0x1005d82a
mov eax, dword [esi]
test eax, eax
je 0x1005d82a
xor ecx, ecx
cmp word [eax], cx
je 0x1005d82a
mov dword [esp + 0x28], eax
jmp 0x1005d82a
mov dword [edi + 0x190], 1
jmp 0x1005d82a
mov eax, dword [esi]
mov dword [esp + 0x18], eax
jmp 0x1005d82a
mov eax, dword [esi]
mov dword [esp + 0x24], eax
jmp 0x1005d82a
mov eax, dword [esi]
mov dword [esp + 0x44], eax
mov eax, dword [esp + 0x34]
inc edx
mov ecx, dword [esp + 0x38]
add esi, 0x10
mov dword [esp + 0x10], edx
cmp edx, eax
jb 0x1005d69b
mov esi, dword [esp + 0x3c]
lea ecx, [edi + 0x48]
xor edx, edx
cmp word [ecx], dx
jne 0x1005d873
cmp eax, 7
jbe 0x1005d873
mov eax, dword [esp + 0x40]
cmp dword [eax + 0x70], 0x3a56101f
jne 0x1005d873
cmp dword [eax + 0x78], edx
je 0x1005d873
mov edx, dword [eax + 0x7c]
push 0x20
mov edx, dword [edx]
call fcn.10063459
test esi, esi
jne 0x1005d87c
mov esi, 0x10005b90
push 0x20
mov edx, esi
lea ecx, [esp + 0x94]
call fcn.10063459
xor eax, eax
mov word [esp + 0x50], ax
cmp dword [edi + 0x18c], 8
jne 0x1005d8ea
lea eax, [esp + 0x90]
push eax
push 0x20
pop edx
lea ecx, [esp + 0x54]
call fcn.1000b82d
xor esi, esi
lea ecx, [esp + 0x50]
lea edx, [ecx + 2]
mov ax, word [ecx]
add ecx, 2
cmp ax, si
jne 0x1005d8b9
sub ecx, edx
lea esi, [edi + 0x108]
sar ecx, 1
lea ebx, [edi + 0x148]
jne 0x1005d98e
lea eax, [esp + 0x90]
push eax
push 0x20
pop edx
jmp 0x1005d99f
mov ecx, dword [esp + 0x14]
test ecx, ecx
jne 0x1005d954
cmp dword [esp + 0x24], eax
jne 0x1005d954
test ebx, ebx
jne 0x1005d954
mov eax, dword [esp + 0x44]
test eax, eax
je 0x1005d910
push eax
push esi
call dword [sym.imp.KERNEL32.dll_lstrcmpW]
test eax, eax
je 0x1005d8b0
mov eax, dword [esp + 0x18]
test eax, eax
je 0x1005d924
push eax
push esi
call dword [sym.imp.KERNEL32.dll_lstrcmpW]
test eax, eax
je 0x1005d8b0
lea eax, [esp + 0x2c]
mov ecx, esi
push eax
xor eax, eax
lea edx, [esp + 0x18]
push eax
lea eax, [esp + 0x24]
push eax
call fcn.100317cd
mov ecx, dword [esp + 0x14]
mov ebx, dword [esp + 0x1c]
mov dword [esp + 0x20], ebx
test ecx, ecx
jne 0x1005d954
test ebx, ebx
je 0x1005d8b0
mov edx, dword [esp + 0x48]
lea eax, [esp + 0x50]
xor esi, esi
mov dword [esp + 0x18], eax
xor eax, eax
cmp dword [0x1008b464], eax
push esi
push esi
sete al
neg edx
push eax
push 0x20
lea eax, [esp + 0x28]
sbb edx, edx
push eax
push esi
push esi
not edx
and edx, dword [esp + 0x40]
push ebx
call fcn.1005fa11
jmp 0x1005d8b2
cmp dword [0x1008b464], 0
lea eax, [esp + 0x50]
push eax
push 0x20
pop edx
je 0x1005d9a8
mov ecx, ebx
call fcn.1000b82d
jmp 0x1005d9b1
mov ecx, esi
call fcn.1000b82d
mov esi, ebx
lea eax, [esp + 0x90]
mov ecx, esi
push eax
push 0x20
pop edx
call fcn.1000b82d
lea eax, [esp + 0x90]
push eax
push 0x20
lea ecx, [edi + 8]
pop edx
call fcn.1000b82d
cmp dword [esp + 0x48], 0
je 0x1005da48
mov ebx, dword [esp + 0x4c]
mov esi, dword [esp + 0x28]
test ebx, ebx
je 0x1005da17
test esi, esi
je 0x1005d9f1
mov ecx, esi
jmp 0x1005d9fe
mov ecx, dword [esp + 0x20]
test ecx, ecx
jne 0x1005d9fe
mov ecx, 0x10005b90
lea eax, [edi + 0x19c]
xor edx, edx
push eax
xor eax, eax
push eax
push eax
push eax
push eax
push eax
push eax
push ecx
mov ecx, ebx
call fcn.1005fa11
test esi, esi
je 0x1005da48
test ebx, ebx
jne 0x1005da2e
mov eax, dword [esp + 0x14]
mov ebx, eax
test eax, eax
jne 0x1005da2e
mov ebx, 0x10005b90
lea eax, [edi + 0x1a0]
xor edx, edx
push eax
xor eax, eax
mov ecx, ebx
push eax
push 1
push eax
push eax
push eax
push eax
push esi
call fcn.1005fa11
xor eax, eax
cmp dword [edi + 0x18c], eax
jne 0x1005da5c
mov dword [edi + 0x18c], 6
cmp dword [esp + 0x2c], eax
je 0x1005da6c
push dword [esp + 0x2c]
call dword [sym.imp.KERNEL32.dll_LocalFree]
mov ecx, dword [esp + 0xd4]
pop edi
pop esi
pop ebx
xor ecx, esp
call fcn.10087900
mov esp, ebp
pop ebp
ret 4