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

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
and esp, 0xfffffff8
sub esp, 0x50
mov dword [esp + 0x14], ecx
mov ecx, dword [ebp + 8]
movdqa xmm0, xmmword [0x7d4800]
mov dword [esp + 0x10], edx
mov edi, dword [ecx + 0x7c]
mov esi, dword [ecx + 0x78]
mov ecx, 0xffffffff
mov eax, edi
mov edx, esi
shl eax, 4
nop word cs:[eax + eax]
nop dword [eax + eax]
test eax, eax
je 0x456ce8
movdqa xmm1, xmmword [edx]
add edx, 0x10
inc ecx
add eax, 0xfffffff0
pcmpeqb xmm1, xmm0
pmovmskb ebx, xmm1
cmp ebx, 0xffff
jne 0x456c40
mov eax, dword [ebp + 8]
mov edx, dword [eax + 0x88]
cmp ecx, edx
jae 0x456ede
mov eax, dword [eax + 0x84]
mov edx, dword [eax + ecx*8 + 4]
push dword [eax + ecx*8]
call dword [edx + 0x20]
add esp, 4
mov ebx, eax
lea eax, [esp + 0x38]
push ebx
push eax
call dword [edx + 0xc]
add esp, 8
test ebx, ebx
mov dword [esp + 4], ebx
je 0x456e7f
mov eax, dword [esp + 0x44]
mov ecx, dword [esp + 0x40]
mov edx, dword [esp + 0x38]
mov ebx, dword [esp + 0x3c]
xor edx, 0x182915e6
xor ecx, 0x5b47973f
xor ebx, 0xccd19370
xor eax, 0xf2e546fc
or ecx, edx
or eax, ebx
or eax, ecx
jne 0x456e7f
mov eax, dword [esp + 4]
xor ecx, ecx
mov eax, dword [eax]
cmp eax, 1
sbb ecx, ecx
or ecx, eax
jmp 0x456dc6
movdqa xmm0, xmmword [0x7d4810]
mov edx, edi
mov ecx, 0xffffffff
mov eax, esi
mov dword [esp + 8], edi
shl edx, 4
mov ebx, edx
test edx, edx
je 0x456dac
movdqa xmm1, xmmword [eax]
mov edi, esi
add eax, 0x10
inc ecx
lea edx, [ebx - 0x10]
pcmpeqb xmm1, xmm0
pmovmskb esi, xmm1
cmp esi, 0xffff
mov esi, edi
mov edi, dword [esp + 8]
jne 0x456d00
mov eax, dword [ebp + 8]
mov dword [esp + 4], ebx
mov edx, dword [eax + 0x88]
cmp ecx, edx
jae 0x456ede
mov eax, dword [eax + 0x84]
mov edx, dword [eax + ecx*8 + 4]
push dword [eax + ecx*8]
call dword [edx + 0x20]
add esp, 4
mov ebx, eax
lea eax, [esp + 0x28]
push ebx
push eax
call dword [edx + 0xc]
add esp, 8
test ebx, ebx
mov dword [esp + 0xc], ebx
je 0x456e7f
mov eax, dword [esp + 0x34]
mov ecx, dword [esp + 0x30]
mov edx, dword [esp + 0x28]
mov ebx, dword [esp + 0x2c]
xor edx, 0xd69329a
xor ecx, 0x6b09274b
xor ebx, 0x83d2cd54
xor eax, 0xc0ef4586
or ecx, edx
or eax, ebx
or eax, ecx
jne 0x456e7f
mov eax, dword [esp + 0xc]
mov ebx, dword [esp + 4]
mov edx, dword [eax]
cmp edx, 0x64
mov ecx, 0x64
mov eax, 0x64
cmovb ecx, edx
test edx, edx
cmove ecx, eax
test ebx, ebx
cmove ecx, eax
mov eax, dword [ebp + 8]
movdqa xmm0, xmmword [0x7d4730]
mov dword [esp + 4], ecx
shl edi, 4
mov ecx, 0xffffffff
mov edx, dword [eax + 0x144]
mov ebx, dword [eax + 0x148]
nop dword [eax]
test edi, edi
je 0x456e89
movdqa xmm1, xmmword [esi]
add esi, 0x10
inc ecx
add edi, 0xfffffff0
pcmpeqb xmm1, xmm0
pmovmskb eax, xmm1
cmp eax, 0xffff
jne 0x456df0
mov eax, dword [ebp + 8]
mov dword [esp + 8], edx
mov edx, dword [eax + 0x88]
cmp ecx, edx
jae 0x456ede
mov eax, dword [eax + 0x84]
mov edx, dword [eax + ecx*8 + 4]
push dword [eax + ecx*8]
call dword [edx + 0x20]
add esp, 4
mov esi, eax
lea eax, [esp + 0x18]
push esi
push eax
call dword [edx + 0xc]
add esp, 8
test esi, esi
je 0x456e7f
mov ecx, dword [esp + 0x20]
mov edx, dword [esp + 0x18]
mov eax, dword [esp + 0x24]
mov edi, dword [esp + 0x1c]
xor edx, 0xbd8d9362
xor ecx, 0x548bf31
xor edi, 0x8bb8d775
xor eax, 0x5c5df57b
or ecx, edx
mov edx, dword [esp + 8]
or eax, edi
or eax, ecx
je 0x456e8b
mov ecx, 0x8a86f4
call fcn.007c1fe0
xor esi, esi
shr ebx, 0x11
mov eax, 1
and bl, 1
test edx, 0x20000
mov edx, dword [esp + 0x14]
movzx ecx, bl
cmove eax, ecx
test esi, esi
mov ecx, 0x8a84f4
cmovne ecx, esi
mov esi, dword [esp + 0x10]
mov dword [edx + 4], esi
mov esi, dword [ebp + 8]
mov dword [edx + 8], esi
mov dword [edx + 0xc], ecx
mov ecx, dword [ebp + 0xc]
mov esi, dword [esp + 4]
mov dword [edx + 0x10], ecx
movzx ecx, byte [ebp + 0x10]
mov byte [edx + 0x14], al
mov dword [edx], esi
mov byte [edx + 0x15], cl
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret
push 0x8a8474
call fcn.007c1be0
int3