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

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
sub esp, 0x7c
mov eax, dword [0x70e00c]
xor eax, esp
mov dword [esp + 0x78], eax
xor eax, eax
cmp dword [0x717020], 8
push ebx
push esi
mov esi, ecx
sete al
push edi
lea ecx, [esp + 0x5c]
mov dword [esp + 0x44], eax
call fcn.00434260
test eax, eax
js 0x428098
xor ebx, ebx
mov dword [esp + 0x28], 0
xor ecx, ecx
mov dword [esp + 0x30], ebx
lea eax, [esi + 6]
mov dword [esp + 0x2c], ecx
mov dword [esp + 0x34], eax
cmp dword [esp + 0x44], 0
xorps xmm0, xmm0
mov edi, dword [esp + 0x64]
mov esi, dword [esp + 0x68]
movlpd qword [esp + 0x18], xmm0
movlpd qword [esp + 0x50], xmm0
push 0
jne 0x427fc9
push 8
lea eax, [esp + 0x40]
push eax
mov eax, ecx
cdq
add eax, edi
adc edx, esi
push edx
push eax
push 0
push 0
call dword [0x7171e8]
add esp, 0x1c
cmp eax, 8
jne 0x428093
mov ebx, dword [esp + 0x3c]
mov eax, ebx
mov edx, dword [esp + 0x38]
mov ecx, ebx
shrd edx, eax, 0x10
and ecx, 0x8000
mov dword [esp + 0x14], 1
shr eax, 0x10
movzx eax, dx
mov dword [esp + 0x10], eax
mov eax, ebx
shr eax, 8
and eax, 3
mov dword [esp + 0xc], eax
xor eax, eax
or eax, ecx
jne 0x427ef1
mov dword [esp + 0x14], 0
push 0
lea eax, [esp + 0x4c]
shr ebx, 0xd
push 8
push eax
and ebx, 3
movzx eax, dx
test byte [esp + 0x1c], 4
mov dword [esp + 0x30], ebx
cdq
je 0x427f19
add eax, dword [esp + 0x78]
adc edx, dword [esp + 0x7c]
jmp 0x427f21
add eax, dword [esp + 0x68]
adc edx, dword [esp + 0x6c]
push edx
and eax, 0xfffffff8
push eax
push 0
push 0
call dword [0x7171e8]
add esp, 0x1c
cmp eax, 8
jne 0x428093
mov ecx, dword [esp + 0x48]
mov edi, ecx
mov eax, dword [esp + 0x4c]
mov esi, eax
shrd edi, esi, 0x10
shr esi, 0x10
xor edi, ecx
xor esi, eax
and edi, 0xffff0000
shrd ecx, eax, 0x10
and esi, 0xff
shr eax, 0x10
xor edi, ecx
xor esi, eax
shrd edi, esi, 0x10
shr esi, 0x10
cmp dword [esp + 0xc], 1
mov dword [esp + 0x18], edi
mov dword [esp + 0x1c], esi
jne 0x427fb1
push 0
push 8
add edi, 0x20
lea eax, [esp + 0x20]
push eax
adc esi, 0
push esi
push edi
push 0
push 0
call dword [0x7171e8]
add esp, 0x1c
cmp eax, 8
jne 0x428093
mov eax, dword [esp + 0x54]
mov ecx, dword [esp + 0x50]
jmp 0x42802e
mov ecx, dword [esp + 0x3c]
movzx eax, word [esp + 0x38]
and ecx, 0xffff0000
cdq
or ecx, eax
xor eax, eax
or eax, edx
jmp 0x428036
push 0x10
lea eax, [esp + 0x7c]
push eax
mov eax, ebx
cdq
add eax, edi
adc edx, esi
push edx
push eax
push 0
push 0
call dword [0x7171e8]
add esp, 0x1c
cmp eax, 0x10
jne 0x428093
movzx eax, word [esp + 0x76]
mov ecx, dword [esp + 0x78]
mov dword [esp + 0x10], eax
movzx ebx, ch
and ecx, 0xffff0000
mov eax, ebx
and eax, 3
mov dword [esp + 0xc], eax
mov eax, ebx
shr eax, 7
mov dword [esp + 0x14], eax
movzx eax, word [esp + 0x74]
shr ebx, 5
or ecx, eax
and ebx, 3
xor eax, eax
or eax, dword [esp + 0x7c]
mov dword [esp + 0x24], ebx
mov edi, dword [esp + 0x18]
mov esi, dword [esp + 0x1c]
mov edx, dword [esp + 0x34]
add ecx, edi
mov ebx, dword [esp + 0xc]
adc eax, esi
mov dword [edx - 6], ebx
mov ebx, dword [esp + 0x10]
mov word [edx - 2], bx
mov ebx, dword [esp + 0x14]
mov dword [edx], ebx
mov ebx, dword [esp + 0x24]
mov dword [edx + 8], ecx
mov ecx, dword [esp + 0x2c]
mov dword [edx + 4], ebx
add ecx, 8
mov ebx, dword [esp + 0x30]
mov dword [edx + 0xc], eax
add ebx, 0x10
mov eax, dword [esp + 0x28]
add edx, 0x16
inc eax
mov dword [esp + 0x2c], ecx
mov dword [esp + 0x28], eax
mov dword [esp + 0x30], ebx
mov dword [esp + 0x34], edx
cmp ecx, 0x800
jge 0x428098
jmp 0x427e65
mov eax, 0xfffffff3
mov ecx, dword [esp + 0x84]
pop edi
pop esi
pop ebx
xor ecx, esp
call fcn.004aa758
mov esp, ebp
pop ebp
ret