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

Disassembly:
sub esp, 0x34
push ebx
mov ebx, dword [esp + 0x3c]
push ebp
push esi
push edi
mov edi, dword [esp + 0x5c]
test edi, edi
mov dword [esp + 0x10], 0
jne 0x47694d
push 0
lea eax, [esp + 0x18]
push 0x10000
push eax
push ebx
call fcn.00476ba0
add esp, 0x10
cmp eax, 0xffffff80
jne 0x476932
cmp edx, 0xffffffff
jne 0x476932
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x34
ret
test edx, edx
jg 0x476949
jl 0x47693c
test eax, eax
jae 0x476949
pop edi
pop esi
pop ebp
mov eax, 0xffffff7c
pop ebx
add esp, 0x34
ret
lea edi, [esp + 0x14]
mov ecx, dword [esp + 0x4c]
push ecx
call fcn.004784e0
mov edx, dword [esp + 0x54]
push edx
call fcn.00478450
push edi
mov dword [ebx + 0x58], 2
call fcn.004881e0
add esp, 0xc
test eax, eax
je 0x476ac5
mov ebp, dword [esp + 0x54]
test ebp, ebp
je 0x4769a8
mov esi, dword [esp + 0x58]
mov ecx, dword [ebp]
mov eax, dword [esi]
push eax
push ecx
push edi
call fcn.00476d40
add esp, 0xc
test eax, eax
jne 0x476a67
push esi
push ebp
push edi
call fcn.00476ce0
add esp, 0xc
cmp dword [ebx + 0x58], 3
jge 0x476a0a
push edi
lea esi, [ebx + 0x78]
call fcn.004882e0
push eax
push esi
call fcn.00488c30
push edi
push esi
call fcn.00488870
lea edx, [esp + 0x38]
push edx
push esi
call fcn.00488c60
add esp, 0x1c
test eax, eax
jle 0x476a0a
lea eax, [esp + 0x24]
push eax
call fcn.00478680
add esp, 4
test eax, eax
je 0x476a0a
mov edx, dword [esp + 0x50]
mov eax, dword [esp + 0x4c]
lea ecx, [esp + 0x24]
mov dword [ebx + 0x58], 3
push ecx
push edx
push eax
call fcn.00478730
add esp, 0xc
test eax, eax
jne 0x476a84
push 0
push 0x10000
push edi
push ebx
call fcn.00476ba0
add esp, 0x10
cmp eax, 0xffffff80
jne 0x476a29
cmp edx, 0xffffffff
je 0x476ab1
test edx, edx
jl 0x476acb
jg 0x476a3b
test eax, eax
jb 0x476acb
cmp dword [ebx + 0x58], 3
jne 0x476a54
push edi
call fcn.004882e0
mov ecx, dword [ebx + 0x1c8]
add esp, 4
cmp ecx, eax
je 0x476ab8
push edi
call fcn.004881e0
add esp, 4
test eax, eax
jne 0x47697d
jmp 0x476ac5
mov eax, dword [ebp]
test eax, eax
je 0x476a77
push eax
call fcn.0045abea
add esp, 4
mov dword [ebp], 0
mov dword [esi], 0
mov esi, 0xffffff7b
mov eax, dword [esp + 0x4c]
push eax
call fcn.00478510
mov ecx, dword [esp + 0x54]
push ecx
call fcn.00478470
add esp, 8
mov eax, esi
mov dword [ebx + 0x58], 2
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x34
ret
mov esi, 0xffffff80
jmp 0x476a89
lea ecx, [ebx + 0x78]
push edi
push ecx
call fcn.00488870
add esp, 8
cmp dword [ebx + 0x58], 3
je 0x476ad2
mov esi, 0xffffff7c
jmp 0x476a89
xor ebp, ebp
cmp ebp, 2
jge 0x476b8f
lea edx, [esp + 0x24]
lea eax, [ebx + 0x78]
push edx
push eax
call fcn.00488c60
add esp, 8
test eax, eax
je 0x476b20
cmp eax, 0xffffffff
je 0x476a84
mov ecx, dword [esp + 0x50]
mov edx, dword [esp + 0x4c]
lea eax, [esp + 0x24]
push eax
push ecx
push edx
call fcn.00478730
mov esi, eax
add esp, 0xc
test esi, esi
jne 0x476a89
inc ebp
cmp ebp, 2
jge 0x476b8f
jmp 0x476add
cmp ebp, 2
jge 0x476b8f
push 0
push 0x10000
push edi
push ebx
call fcn.00476ba0
add esp, 0x10
test edx, edx
jl 0x476a84
jg 0x476b48
test eax, eax
jb 0x476a84
push edi
call fcn.004882e0
mov ecx, dword [ebx + 0x1c8]
add esp, 4
cmp ecx, eax
push edi
je 0x476b7e
call fcn.004881e0
add esp, 4
test eax, eax
je 0x476b25
mov eax, dword [esp + 0x10]
test eax, eax
jne 0x476a84
mov dword [esp + 0x10], 1
jmp 0x476b25
lea eax, [ebx + 0x78]
push eax
call fcn.00488870
add esp, 8
jmp 0x476ad4
pop edi
pop esi
pop ebp
xor eax, eax
pop ebx
add esp, 0x34
ret