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

Disassembly:
pushal
push dword [esp + 8]
pushal
lea esp, [esp + 0x44]
jbe 0x645e8e
mov si, di
inc di
add si, sp
mov edi, dword [edx + 0x24]
bsr si, di
adc si, bp
add edi, eax
cmp ax, cx
rcr si, 4
shrd si, ax, cl
mov esi, dword [edx + 0x20]
pushal
add esi, eax
stc
sub ecx, ecx
pushal
cmc
cmp ecx, dword [edx + 0x18]
push dword [esp]
call fcn.0064ce2f
add byte [eax], al
inc edi
je 0x645c7e
outsb dx, byte gs:[esi]
jne 0x645c7e
je 0x645c9c
insd dword es:[edi], dx
inc ebx
outsd dx, dword [esi]
jne 0x645caa
je 0x645c3e
add byte [eax], al
dec ecx
outsb dx, byte [esi]
je 0x645ca9
jb 0x645cb2
outsd dx, dword [esi]
arpl word [ebx + 0x65], bp
inc ebp
js 0x645cb1
push 0x65676e61
add byte [eax], al
add byte [edi + 0x65], al
je 0x645cad
jns 0x645ccf
je 0x645cc3
insd dword es:[edi], dx
inc esp
imul esi, dword [edx + 0x65], 0x726f7463
jns 0x645caa
add byte [eax], al
add byte [ecx + 0x64], al
push 0x75
jae 0x645ce6
push edi
imul ebp, dword [esi + 0x64], 0x6552776f
arpl word [ebp + eax*2 + 0x78], si
add byte [ebx], cl
or byte [ebp - 0x1effa07a], dh
pop edi
add cl, ah
sahf
loop 0x645c83
mov ch, ch
lodsd eax, dword [esi]
dec esp
stc
mov dl, 0x63
and byte [0xf7b20ad9], 0x10
push esp
cmp ah, byte [ebp - 0x4fdda3c]
call 0x2b8a2c44
pop edi
invalid
and eax, 0xa0e8fb02
iretd
sal dword [0x910eaf33], 1
xor eax, 0x910eaf33
push cs
xchg ecx, eax
xchg edi, eax
push ecx
lds ebx, [esp + ebx + 0x65a5d867]
invalid
pushfd
sbb al, 0x67
fsub dword [ebp - 0x38f1389b]
pop ebp
pop ebx
cdq
invalid
inc edx
leave
test byte [ebx], ah
mov ebx, 0x5863af1
sar byte [esi + 0x64], 1
movsb byte es:[edi], byte [esi]
movsb byte es:[edi], byte fs:[esi]
inc esp
and eax, dword [ecx]
mov cl, ah
mov dh, byte [edx - 0x2073b510]
push edi
int 0xa4
xchg ebp, eax
sbb byte [edx], 0x31
loop 0x645cbc
sbb eax, 0x5938d851
push ecx
fdivr dword [eax]
pop ecx
ficom word [ecx + 0x3af1ba30]
or byte [ecx + 0x6464b6c1], dh
movsb byte es:[edi], byte [esi]
inc esp
test al, 0x2d
or dword [ebp + edx*2 - 0x620f34ea], ecx
pop ecx
fidiv word [ebx + 0x3a]
iretd
pushal
pushfd
lea esp, [esp + 0x24]
je 0x64b724
bsf dx, di
cmp ah, 0x6d
btr dx, 0xd
mov esi, dword [eax + 0x3c]
btr dx, si
add esi, eax
mov dh, bl
clc
mov edx, dword [esi + 0x78]
cmc
jmp 0x66156f
inc cl
clc
mov ecx, dword [esi + 0x7c]
jmp 0x64cb3c
jmp 0x646000
neg ax
mov dword [esp], esi
and eax, 0xe1a7c7fb
bt edi, 0x10
cmp cx, 0x84eb
push edi
xadd eax, ebp
daa
push ebx
push ebp
sbb ebp, esp
clc
bts ax, dx
mov dword [esp], edx
cmp bh, dh
movsx eax, cl
push edx
shrd bp, di, cl
lea eax, [eax*2 - 0x6d0b3afb]
lea ebp, [esp + 0x1c]
sub ax, cx
bsr eax, eax
mov eax, dword [ebp]
pushal
test eax, eax
pushfd
pushfd
push dword [esp]
lea esp, [esp + 0x2c]
jns 0x646238
je 0x64b724
movsx si, bl
mov esi, dword [eax + 0x3c]
sar dh, cl
xor edx, eax
sal dl, cl
rcl dx, 7
add esi, eax
shld dx, bp, 4
btr edx, 0x19
btr dx, cx
bswap dx
mov edx, dword [esi + 0x78]
bt edx, 0x1e
stc
test edx, edx
push ecx
pushal
mov word [esp], 0xc669
lea esp, [esp + 0x24]
je 0x64b724
lea ecx, [esi + 0x42ae95d7]
bsf cx, ax
movzx cx, cl
add edx, eax
jmp 0x64602d
stc
stc
add ecx, edx
push 0xdf0f1c1f
stc
bt di, 8
mov dword [esp + 4], ecx
bt dx, 4
rcr cx, cl
mov ecx, dword [ebp + 4]
cmc
cmp ecx, 0xffff
lea esp, [esp + 4]
jg 0x645be5
call fcn.0064ce27