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

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x448
mov eax, dword [0x310e008]
xor eax, ebp
mov dword [ebp - 4], eax
push ebx
mov bl, byte [ebp + 0xc]
push esi
push edi
mov edi, dword [ebp + 8]
mov esi, ecx
mov ecx, dword [edi]
mov dword [ebp - 0x41c], edi
mov byte [ebp - 0x424], bl
cmp ecx, 0x1000
jb 0x30ffafe
test bl, bl
je 0x30ffaed
mov eax, dword [esi + 0x28]
jmp 0x30ffaf0
mov eax, dword [esi + 0x20]
cmp ecx, eax
jb 0x30ffb16
mov byte [esi + 0x35], 1
mov dword [edi], 0
pop edi
pop esi
mov eax, 1
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.0307c5f7
mov esp, ebp
pop ebp
ret 0x10
test bl, bl
je 0x30ffb1f
mov eax, dword [esi + 0x24]
jmp 0x30ffb22
mov eax, dword [esi + 0x1c]
mov edx, ecx
sub edx, eax
test bl, bl
je 0x30ffb2f
mov eax, dword [esi + 0x18]
jmp 0x30ffb32
mov eax, dword [esi + 0x14]
cmp dword [eax + edx*4], 0
lea eax, [eax + edx*4]
je 0x30ffb91
test bl, bl
je 0x30ffb44
mov eax, dword [esi + 0x24]
jmp 0x30ffb47
mov eax, dword [esi + 0x1c]
sub ecx, eax
test bl, bl
je 0x30ffb6f
mov eax, dword [esi + 0x18]
lea eax, [eax + ecx*4]
mov eax, dword [eax]
mov dword [edi], eax
pop edi
pop esi
mov eax, 1
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.0307c5f7
mov esp, ebp
pop ebp
ret 0x10
mov eax, dword [esi + 0x14]
lea eax, [eax + ecx*4]
mov eax, dword [eax]
mov dword [edi], eax
pop edi
pop esi
mov eax, 1
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.0307c5f7
mov esp, ebp
pop ebp
ret 0x10
test bl, bl
je 0x30ffb9a
mov edi, dword [esi + 0x7c]
jmp 0x30ffb9d
mov edi, dword [esi + 0x78]
lea edx, [ebp - 0x418]
push edx
push 0
mov dword [ebp - 0x410], fcn.03001528
mov dword [ebp - 0x408], 0
mov dword [ebp - 0x40c], 0
mov dword [ebp - 0x418], 0
mov eax, dword [edi]
push ecx
mov ecx, edi
call dword [eax + 0x3c]
test eax, eax
je 0x30ffd25
mov eax, dword [ebp - 0x418]
cmp eax, 0xfffffff8
ja 0x30ffd1d
push eax
mov eax, dword [ebp - 0x410]
lea ecx, [ebp - 0x410]
call dword [eax]
mov dword [ebp - 0x414], eax
test eax, eax
je 0x30ffd1d
mov edx, dword [edi]
lea ecx, [ebp - 0x418]
push ecx
push eax
mov eax, dword [ebp - 0x41c]
mov ecx, edi
push dword [eax]
call dword [edx + 0x3c]
test eax, eax
je 0x30ffd25
mov edi, dword [ebp - 0x414]
push edi
lea ecx, [ebp - 0x448]
call fcn.031070d0
lea ecx, [ebp - 0x448]
call fcn.03107540
test eax, eax
je 0x30ffcb2
mov edx, dword [ebp + 0x10]
inc edx
mov dword [ebp - 0x414], edx
mov eax, dword [ebp - 0x428]
cmp byte [eax + 0x1c], 0
jne 0x30ffc77
mov ecx, dword [eax + 0x18]
test ecx, ecx
je 0x30ffc73
mov eax, dword [ebp - 0x434]
cmp byte [ecx + eax], 0
jne 0x30ffc77
xor eax, eax
jmp 0x30ffc7c
mov eax, 1
test eax, eax
push 0
setne al
movzx eax, al
push edx
push eax
push dword [ebp - 0x42c]
mov ecx, esi
call fcn.030ffab0
test eax, eax
je 0x30ffd25
lea ecx, [ebp - 0x448]
call fcn.03107540
mov edx, dword [ebp - 0x414]
test eax, eax
jne 0x30ffc54
test bl, bl
jne 0x30ffccc
push edi
call fcn.030ef010
mov ecx, dword [esi + 0xc]
add esp, 4
test eax, eax
setne al
mov byte [esi + 0x34], al
jmp 0x30ffccf
mov ecx, dword [esi + 0x10]
mov eax, dword [ecx]
lea edx, [ebp - 0x420]
push edx
push edi
call dword [eax + 0x38]
test eax, eax
jne 0x30ffcf1
mov ecx, dword [esi + 4]
push 0
mov eax, dword [ecx]
push 0
call dword [eax + 0x4c]
cmp eax, 8
jne 0x30ffd25
push dword [ebp - 0x424]
mov ebx, dword [ebp - 0x41c]
mov ecx, esi
push dword [ebx]
call fcn.031000e0
mov ecx, dword [ebp - 0x420]
mov dword [eax], ecx
mov eax, dword [ebp - 0x420]
mov dword [ebx], eax
mov esi, 1
jmp 0x30ffd27
mov ecx, dword [esi + 4]
call fcn.030db9e0
xor esi, esi
lea ecx, [ebp - 0x410]
call fcn.03081b30
mov ecx, dword [ebp - 4]
pop edi
mov eax, esi
pop esi
xor ecx, ebp
pop ebx
call fcn.0307c5f7
mov esp, ebp
pop ebp
ret 0x10