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

Disassembly:
push ebp
mov ebp, esp
sub esp, 8
mov eax, dword [0x44f584]
xor eax, ebp
mov dword [ebp - 4], eax
mov eax, dword [ebp + 8]
push ebx
push esi
xor ebx, ebx
mov esi, ecx
mov dword [ebp - 8], ebx
test byte [esi + 0x84], 1
push edi
je 0x3ff8c5
mov ecx, dword [esi + 8]
push eax
push ecx
push 1
call fcn.00358cc0
add esp, 0xc
mov ecx, dword [esi + 0x84]
shr ecx, 1
test cl, 1
je 0x3ff8e1
mov ecx, dword [esi + 0xc]
push eax
push ecx
push 2
call fcn.00358cc0
add esp, 0xc
cmp dword [esi + 0x14], ebx
jle 0x3ff929
mov edx, dword [esi + 0x10]
mov edi, dword [edx + ebx*4]
mov byte [eax], 0x1a
lea ecx, [eax + 1]
mov eax, dword [edi + 0x10]
cmp eax, 0x80
jae 0x3ff903
mov byte [ecx], al
lea eax, [ecx + 1]
jmp 0x3ff90d
push ecx
push eax
call fcn.003ef610
add esp, 8
cmp dword [edi + 0x14], 0x10
mov ecx, dword [edi + 0x10]
jb 0x3ff918
mov edi, dword [edi]
push eax
push ecx
push edi
call fcn.003ef560
inc ebx
add esp, 0xc
cmp ebx, dword [esi + 0x14]
jl 0x3ff8e6
xor ebx, ebx
cmp dword [esi + 0x3c], ebx
jle 0x3ff965
mov ecx, dword [esi + 0x38]
mov edi, dword [ecx + ebx*4]
mov byte [eax], 0x22
lea ecx, [eax + 1]
mov eax, dword [edi + 0x60]
cmp eax, 0x80
jae 0x3ff94d
mov byte [ecx], al
lea eax, [ecx + 1]
jmp 0x3ff957
push ecx
push eax
call fcn.003ef610
add esp, 8
push eax
mov ecx, edi
call fcn.003fde50
inc ebx
cmp ebx, dword [esi + 0x3c]
jl 0x3ff930
xor ebx, ebx
cmp dword [esi + 0x4c], ebx
jle 0x3ff9a5
lea esp, [esp]
mov edx, dword [esi + 0x48]
mov edi, dword [edx + ebx*4]
mov byte [eax], 0x2a
lea ecx, [eax + 1]
mov eax, dword [edi + 0x20]
cmp eax, 0x80
jae 0x3ff98d
mov byte [ecx], al
lea eax, [ecx + 1]
jmp 0x3ff997
push ecx
push eax
call fcn.003ef610
add esp, 8
push eax
mov ecx, edi
call fcn.003fb440
inc ebx
cmp ebx, dword [esi + 0x4c]
jl 0x3ff970
xor ebx, ebx
cmp dword [esi + 0x5c], ebx
jle 0x3ff9e5
lea esp, [esp]
mov ecx, dword [esi + 0x58]
mov edi, dword [ecx + ebx*4]
mov byte [eax], 0x32
lea ecx, [eax + 1]
mov eax, dword [edi + 0x20]
cmp eax, 0x80
jae 0x3ff9cd
mov byte [ecx], al
lea eax, [ecx + 1]
jmp 0x3ff9d7
push ecx
push eax
call fcn.003ef610
add esp, 8
push eax
mov ecx, edi
call fcn.003fb620
inc ebx
cmp ebx, dword [esi + 0x5c]
jl 0x3ff9b0
xor ebx, ebx
cmp dword [esi + 0x6c], ebx
jle 0x3ffa25
lea esp, [esp]
mov edx, dword [esi + 0x68]
mov edi, dword [edx + ebx*4]
mov byte [eax], 0x3a
lea ecx, [eax + 1]
mov eax, dword [edi + 0x28]
cmp eax, 0x80
jae 0x3ffa0d
mov byte [ecx], al
lea eax, [ecx + 1]
jmp 0x3ffa17
push ecx
push eax
call fcn.003ef610
add esp, 8
push eax
mov ecx, edi
call fcn.003fa4a0
inc ebx
cmp ebx, dword [esi + 0x6c]
jl 0x3ff9f0
mov ecx, dword [esi + 0x84]
shr ecx, 9
test cl, 1
je 0x3ffa69
mov edi, dword [esi + 0x78]
test edi, edi
jne 0x3ffa43
mov edx, dword [0x4570d4]
mov edi, dword [edx + 0x78]
mov byte [eax], 0x42
mov ecx, dword [edi + 0x40]
inc eax
cmp ecx, 0x80
jae 0x3ffa57
mov byte [eax], cl
inc eax
jmp 0x3ffa61
push eax
push ecx
call fcn.003ef610
add esp, 8
push eax
mov ecx, edi
call fcn.003f8bc0
mov ecx, dword [esi + 0x84]
shr ecx, 0xa
test cl, 1
je 0x3ffaad
mov edi, dword [esi + 0x7c]
test edi, edi
jne 0x3ffa87
mov edx, dword [0x4570d4]
mov edi, dword [edx + 0x7c]
mov byte [eax], 0x4a
mov ecx, dword [edi + 0x18]
inc eax
cmp ecx, 0x80
jae 0x3ffa9b
mov byte [eax], cl
inc eax
jmp 0x3ffaa5
push eax
push ecx
call fcn.003ef610
add esp, 8
push eax
mov ecx, edi
call fcn.003f7a70
xor edi, edi
cmp dword [esi + 0x24], edi
jle 0x3ffaef
mov ecx, dword [esi + 0x20]
mov ecx, dword [ecx + edi*4]
mov byte [eax], 0x50
inc eax
test ecx, ecx
jns 0x3ffad2
push eax
mov eax, ecx
cdq
push edx
push eax
call fcn.003ef750
add esp, 0xc
jmp 0x3ffae9
cmp ecx, 0x80
jae 0x3ffadf
mov byte [eax], cl
inc eax
jmp 0x3ffae9
push eax
push ecx
call fcn.003ef610
add esp, 8
inc edi
cmp edi, dword [esi + 0x24]
jl 0x3ffab4
xor edi, edi
cmp dword [esi + 0x30], edi
jle 0x3ffb31
mov edx, dword [esi + 0x2c]
mov ecx, dword [edx + edi*4]
mov byte [eax], 0x58
inc eax
test ecx, ecx
jns 0x3ffb14
push eax
mov eax, ecx
cdq
push edx
push eax
call fcn.003ef750
add esp, 0xc
jmp 0x3ffb2b
cmp ecx, 0x80
jae 0x3ffb21
mov byte [eax], cl
inc eax
jmp 0x3ffb2b
push eax
push ecx
call fcn.003ef610
add esp, 8
inc edi
cmp edi, dword [esi + 0x30]
jl 0x3ffaf6
mov ecx, dword [esi + 4]
add esi, 4
test ecx, ecx
je 0x3ffb4c
mov edx, dword [ecx]
cmp edx, dword [ecx + 4]
je 0x3ffb4c
push eax
push esi
call fcn.003eb840
add esp, 8
mov ecx, dword [ebp - 4]
pop edi
pop esi
xor ecx, ebp
pop ebx
call fcn.003b2239
mov esp, ebp
pop ebp
ret 4