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

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
and esp, 0xffffffe0
sub esp, 0xe0
mov eax, dword [0x606180]
xor eax, ebp
mov dword [esp + 0xc8], eax
mov eax, 0xbfe88bf1
mov ecx, 0xc032aa4
mov dword [esp + 0x18], ecx
mov dword [esp + 0x24], eax
mov eax, 0x8ebc519f
mov ecx, 0xf14200bb
mov dword [esp + 0x3c], ecx
mov dword [esp + 0x20], eax
mov eax, 0x57fad6a7
mov ecx, 0x5376a73f
mov dword [esp + 0x34], ecx
mov dword [esp + 0x38], eax
mov eax, 0xa1c09264
mov ecx, 0xa21dbc4a
mov dword [esp + 0x2c], ecx
mov dword [esp + 0x30], eax
mov eax, 0xd29aeea5
mov ebx, 0x786244cd
mov dword [esp + 0x1c], eax
mov esi, 0xe1ce01fa
mov edx, 0x823165d8
lea edi, [esp + 0xa0]
xor eax, eax
mov dword [esp + 0x28], edi
mov ecx, dword [0x607a9c]
lea eax, [ecx + 1]
imul eax, ecx
mov ecx, eax
xor ecx, 0xfffffffe
test ecx, eax
mov eax, dword [esp + 0x18]
mov dword [esp + 0x84], eax
mov eax, dword [esp + 0x24]
mov dword [esp + 0x80], eax
mov eax, dword [esp + 0x3c]
mov dword [esp + 0x8c], eax
mov eax, dword [esp + 0x20]
mov dword [esp + 0x88], eax
mov eax, dword [esp + 0x34]
mov dword [esp + 0x94], eax
mov dword [esp + 0x18], ebx
mov dword [esp + 0xa4], ebx
mov ecx, dword [esp + 0x1c]
mov dword [esp + 0xa0], ecx
mov dword [esp + 0x20], edx
mov dword [esp + 0xac], edx
mov dword [esp + 0x24], esi
mov dword [esp + 0xa8], esi
mov dword [esp + 0xb4], eax
mov eax, dword [esp + 0x38]
mov dword [esp + 0x90], eax
mov dword [esp + 0xb0], eax
mov eax, dword [esp + 0x2c]
mov dword [esp + 0x9c], eax
mov dword [esp + 0xbc], eax
mov eax, dword [esp + 0x30]
mov dword [esp + 0x98], eax
mov dword [esp + 0xb8], eax
vmovaps ymm1, ymmword [edi]
sete byte [esp + 0x16]
mov ecx, 0xe88d9417
mov eax, 0x20c9b67e
cmove eax, ecx
sete dl
mov esi, dword [0x607aa0]
cmp esi, 0xa
mov esi, 0x20c9b67e
cmovge eax, esi
setl byte [esp + 0x70]
setl dh
xor dh, dl
cmovne eax, ecx
vmovaps ymm0, ymmword [esp + 0x80]
vbroadcastsd ymm2, qword [0x5f0410]
vandnps ymm3, ymm0, ymm2
vandnps ymm4, ymm1, ymm2
vandnps ymm5, ymm2, ymm0
vorps ymm3, ymm3, ymm5
vandnps ymm1, ymm2, ymm1
vorps ymm1, ymm4, ymm1
vxorps ymm1, ymm3, ymm1
mov edx, 0x297e90c0
mov ecx, 0x6e9fc724
nop dword [eax]
cmp edx, 0x297e90bf
jg 0x421af0
cmp edx, 0xe88d9417
je 0x421b28
cmp edx, 0x20c9b67e
jne 0x421ad0
mov edx, 0x6e9fc724
jmp 0x421ad0
cmp edx, 0x6e9fc724
je 0x421b24
cmp edx, 0x297e90c0
jne 0x421ad0
movzx ebx, byte [esp + 0x16]
movzx edx, byte [esp + 0x70]
mov dh, bl
xor dh, dl
mov esi, 0x20c9b67e
cmovne esi, ecx
test dl, dl
mov edx, esi
cmovne edx, ecx
test bl, bl
cmove edx, esi
jmp 0x421ad0
mov edx, eax
jmp 0x421ad0
mov edx, dword [0x607aa4]
mov ecx, dword [0x607aa8]
lea eax, [edx + 1]
imul eax, edx
mov edx, eax
xor edx, 0xfffffffe
test edx, eax
sete bl
cmp ecx, 0xa
setl bh
xor bh, bl
mov edi, 0x20dbc0a3
mov esi, 0xe816c53b
cmovne esi, edi
test edx, eax
vmovaps ymmword [esp + 0x40], ymm1
vmovaps ymm1, ymmword [esp + 0x40]
sete byte [esp + 0x70]
mov eax, 0xe816c53b
cmovne edi, esi
cmp ecx, 0xa
setl byte [esp + 0x40]
cmovge edi, esi
mov edx, 0xfb028fad
mov ecx, 0x80f6ef93
nop dword [eax]
cmp edx, 0xfb028fac
jg 0x421bc0
cmp edx, 0x80f6ef93
je 0x421bf4
cmp edx, 0xe816c53b
jne 0x421b90
mov edx, 0x80f6ef93
vmovaps ymm0, ymm1
jmp 0x421b90
cmp edx, 0x20dbc0a3
je 0x421bfc
cmp edx, 0xfb028fad
jne 0x421b90
movzx ebx, byte [esp + 0x70]
movzx edx, byte [esp + 0x40]
mov bh, dl
xor bh, bl
test dl, dl
mov edx, 0xe816c53b
cmovne edx, ecx
test bl, bl
cmove edx, eax
test bh, bh
cmovne edx, ecx
jmp 0x421b90
vmovaps ymm0, ymm1
mov edx, edi
jmp 0x421b90
vmovaps ymmword [esp + 0x80], ymm0
mov eax, dword [0x606ed4]
mov ecx, dword [0x606ed8]
lea edx, [eax + 1]
imul edx, eax
mov eax, edx
xor eax, 0xfffffffe
test eax, edx
sete byte [esp + 0x16]
cmp ecx, 0xa
setl byte [esp + 0xa0]
mov eax, 0xa96cda76
mov esi, 0xc68c9537
mov ebx, 0xf2232325
mov edi, 0xabbb156b
nop word cs:[eax + eax]
cmp eax, 0xc68c9536
jg 0x421c70
cmp eax, 0xa96cda76
je 0x421ca9
cmp eax, 0xabbb156b
jne 0x421c50
jmp 0x421d2f
cmp eax, 0xc68c9537
je 0x421cd0
cmp eax, 0xf2232325
jne 0x421c50
mov eax, 0xbce88bce
mov ecx, 0x4a5128a8
mov dword [esp + 0x74], ecx
mov dword [esp + 0x70], eax
mov eax, 0x8da265d4
mov ecx, 0x823165d8
mov dword [esp + 0x7c], ecx
mov dword [esp + 0x78], eax
mov eax, 0xc68c9537
jmp 0x421c50
movzx ecx, byte [esp + 0x16]
movzx eax, byte [esp + 0xa0]
mov edx, ecx
xor dl, al
test al, al
mov eax, 0xf2232325
cmovne eax, esi
test cl, cl
cmove eax, ebx
test dl, dl
cmovne eax, esi
jmp 0x421c50
lea eax, [esp + 0x70]
mov dword [esp + 0x40], eax
mov eax, dword [esp + 0x40]
mov ecx, 0xbce88bce
mov edx, 0x4a5128a8
mov dword [eax + 4], edx
mov dword [eax], ecx
mov ecx, 0x8da265d4
mov edx, 0x823165d8
mov dword [eax + 0xc], edx
mov dword [eax + 8], ecx
mov eax, dword [0x606ed4]
lea ecx, [eax + 1]
imul ecx, eax
mov eax, ecx
xor eax, 0xfffffffe
test eax, ecx
sete cl
mov eax, 0xf2232325
cmove eax, edi
cmp dword [0x606ed8], 0xa
cmovge eax, ebx
setl dl
xor dl, cl
cmovne eax, edi
jmp 0x421c50
mov eax, dword [esp + 0x40]
mov eax, dword [esp + 0x18]
mov dword [esp + 0xa4], eax
mov eax, dword [esp + 0x1c]
mov dword [esp + 0xa0], eax
mov eax, dword [esp + 0x20]
mov dword [esp + 0xac], eax
xor eax, eax
mov ecx, dword [esp + 0x28]
mov dword [esp + 0x28], ecx
mov eax, dword [0x607aac]
lea edx, [eax + 1]
imul edx, eax
mov eax, edx
xor eax, 0xfffffffe
mov dword [esp + 0x18], eax
test eax, edx
sete byte [esp + 0x17]
mov eax, dword [esp + 0x24]
mov dword [esp + 0xa8], eax
mov edi, dword [0x607ab0]
mov eax, 0x6cdd9eea
mov ecx, 0xda19184b
cmove ecx, eax
sete bl
mov dword [esp + 0x1c], edi
cmp edi, 0xa
setl byte [esp + 0x16]
mov edi, 0xda19184b
cmovge ecx, edi
setl bh
xor bh, bl
cmovne ecx, eax
mov ebx, 0xd3b29296
mov esi, 0xbea82fff
cmp ebx, 0xda19184a
jle 0x421de0
cmp ebx, 0xda19184b
je 0x421e13
cmp ebx, 0x6cdd9eea
jne 0x421dc0
jmp 0x421e26
cmp ebx, 0xbea82fff
je 0x421e1a
cmp ebx, 0xd3b29296
jne 0x421dc0
movzx eax, byte [esp + 0x17]
mov ah, byte [esp + 0x16]
mov ebx, eax
xor bl, ah
mov edi, 0xda19184b
cmovne edi, esi
test ah, ah
mov ebx, edi
cmovne ebx, esi
test al, al
cmove ebx, edi
jmp 0x421dc0
mov ebx, 0xbea82fff
jmp 0x421dc0
mov eax, dword [esp + 0x28]
vmovaps xmm0, xmmword [eax]
mov ebx, ecx
jmp 0x421dc0
test dword [esp + 0x18], edx
vmovaps xmmword [esp + 0x40], xmm0
vmovaps xmm0, xmmword [esp + 0x40]
sete byte [esp + 0x17]
cmp dword [esp + 0x1c], 0xa
setl byte [esp + 0x16]
mov edx, 0xd3b29296
vmovaps xmm1, xmmword [esp + 0x70]
mov eax, 0xbea82fff
nop word cs:[eax + eax]
cmp edx, 0xda19184a
jle 0x421e80
cmp edx, 0xda19184b
je 0x421eb4
cmp edx, 0x6cdd9eea
jne 0x421e60
jmp 0x421ebf
cmp edx, 0xbea82fff
je 0x421ebb
cmp edx, 0xd3b29296
jne 0x421e60
movzx ebx, byte [esp + 0x17]
movzx edx, byte [esp + 0x16]
mov dh, bl
xor dh, dl
mov esi, 0xda19184b
cmovne esi, eax
test dl, dl
mov edx, esi
cmovne edx, eax
test bl, bl
cmove edx, esi
jmp 0x421e60
mov edx, 0xbea82fff
jmp 0x421e60
mov edx, ecx
jmp 0x421e60
vmovaps xmmword [esp + 0x40], xmm1
vmovaps xmm1, xmmword [esp + 0x40]
vmovddup xmm2, qword [0x5f0418]
vandnps xmm3, xmm1, xmm2
vandnps xmm4, xmm0, xmm2
vandnps xmm1, xmm2, xmm1
vorps xmm1, xmm3, xmm1
vandnps xmm0, xmm2, xmm0
vorps xmm0, xmm4, xmm0
vxorps xmm0, xmm1, xmm0
vmovaps xmmword [esp + 0x70], xmm0
lea eax, [esp + 0x70]
push eax
vzeroupper
call fcn.00402910
lea ecx, [esp + 0x80]
push ecx
push eax
call fcn.00415f30
add esp, 8
push dword [ebp + 0xc]
push dword [ebp + 8]
call eax
mov esi, eax
mov ecx, dword [esp + 0xc8]
xor ecx, ebp
call fcn.005ce735
mov eax, esi
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret