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

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
and esp, 0xfffffff0
sub esp, 0xc0
movdqu xmm0, xmmword [ecx]
mov eax, edx
mov dword [esp + 0x20], edx
mov edx, dword [edx + 4]
lea ebx, [esp + 0x40]
mov dword [esp + 0x1c], ecx
mov eax, dword [eax + 8]
mov ecx, ebx
pshufd xmm1, xmm0, 0x44
pshufd xmm2, xmm0, 0xee
pxor xmm1, xmmword [str.uespemosarenegylmodnarodsetybdetuespemosarenegylmodnarodsetybdetuespemosarenegylmodnarodsetybdet]
pxor xmm2, xmmword [0x573550]
movdqu xmmword [esp + 0x40], xmm1
movdqu xmmword [esp + 0x50], xmm2
movdqu xmmword [esp + 0x60], xmm0
mov dword [esp + 0x74], 0
mov dword [esp + 0x70], 0
mov dword [esp + 0x7c], 0
mov dword [esp + 0x78], 0
push eax
call fcn.0045dad0
add esp, 4
lea edx, [esp + 0x13]
mov byte [esp + 0x13], 0xff
mov ecx, ebx
push 1
call fcn.0045dad0
add esp, 4
mov eax, dword [esp + 0x78]
mov ecx, dword [esp + 0x70]
mov edx, dword [esp + 0x58]
mov esi, dword [esp + 0x5c]
movdqu xmm0, xmmword [esp + 0x48]
movdqu xmm3, xmmword [esp + 0x40]
shl eax, 0x18
xor edx, ecx
movdqa xmm5, xmm0
or eax, dword [esp + 0x74]
movd xmm4, edx
movd xmm2, edx
psrlq xmm5, 0x33
xor esi, eax
movd xmm1, esi
punpckldq xmm2, xmm1
punpcklqdq xmm1, xmm4
punpcklqdq xmm2, xmm3
shufps xmm1, xmm0, 0xe2
movaps xmm4, xmm1
paddq xmm2, xmm0
psllq xmm1, 0x10
psllq xmm0, 0xd
pshufd xmm3, xmm2, 0xff
psrlq xmm4, 0x30
movsd xmm0, xmm1
movdqa xmm1, xmm2
movd edx, xmm3
movsd xmm5, xmm4
orpd xmm0, xmm5
movd xmm3, edx
shufps xmm1, xmm3, 0x4e
xorpd xmm0, xmm2
shufps xmm1, xmm2, 0x42
movapd xmm2, xmm0
movapd xmm3, xmm0
psrlq xmm2, 0x2b
psrlq xmm3, 0x2f
paddq xmm1, xmm0
movsd xmm3, xmm2
movdqa xmm2, xmm0
psllq xmm0, 0x11
movd esi, xmm1
psllq xmm2, 0x15
xor esi, ecx
movsd xmm0, xmm2
pshufd xmm2, xmm1, 0xff
movd edx, xmm2
pshufd xmm2, xmm1, 0x55
orpd xmm0, xmm3
movd xmm3, esi
movd edi, xmm2
xor edx, 0xff
xorpd xmm0, xmm1
xor edi, eax
movd xmm2, edx
movd xmm4, edi
shufpd xmm1, xmm2, 1
punpcklqdq xmm4, xmm3
movapd xmm3, xmm0
shufps xmm1, xmm0, 0xe2
shufps xmm3, xmm4, 0x24
movaps xmm4, xmm0
paddq xmm1, xmm3
psrlq xmm4, 0x33
pshufd xmm2, xmm1, 0xff
movd eax, xmm2
movaps xmm2, xmm0
psrlq xmm2, 0x30
movd xmm3, eax
movsd xmm4, xmm2
movaps xmm2, xmm0
psllq xmm0, 0xd
psllq xmm2, 0x10
movsd xmm0, xmm2
movdqa xmm2, xmm1
orpd xmm0, xmm4
shufps xmm2, xmm3, 0x4e
xorpd xmm0, xmm1
shufps xmm2, xmm1, 0x42
movapd xmm1, xmm0
movapd xmm3, xmm0
paddq xmm2, xmm0
psrlq xmm1, 0x2b
psrlq xmm3, 0x2f
movsd xmm3, xmm1
movdqa xmm1, xmm0
psllq xmm0, 0x11
psllq xmm1, 0x15
movsd xmm0, xmm1
pshufd xmm1, xmm2, 0xff
movd eax, xmm1
orpd xmm0, xmm3
movdqa xmm1, xmm2
movd xmm3, eax
xorpd xmm0, xmm2
shufps xmm1, xmm3, 0x4e
movapd xmm4, xmm0
shufps xmm1, xmm2, 0x42
psrlq xmm4, 0x33
paddq xmm1, xmm0
pshufd xmm2, xmm1, 0xff
movd eax, xmm2
movdqa xmm2, xmm0
psrlq xmm2, 0x30
movd xmm3, eax
movsd xmm4, xmm2
movdqa xmm2, xmm0
psllq xmm0, 0xd
psllq xmm2, 0x10
movsd xmm0, xmm2
movdqa xmm2, xmm1
orpd xmm0, xmm4
shufps xmm2, xmm3, 0x4e
xorpd xmm0, xmm1
shufps xmm2, xmm1, 0x42
movapd xmm1, xmm0
movapd xmm3, xmm0
paddq xmm2, xmm0
psrlq xmm1, 0x2b
psrlq xmm3, 0x2f
movsd xmm3, xmm1
movdqa xmm1, xmm0
psllq xmm0, 0x11
psllq xmm1, 0x15
movsd xmm0, xmm1
pshufd xmm1, xmm2, 0xff
movd eax, xmm1
orpd xmm0, xmm3
movdqa xmm1, xmm2
movd xmm3, eax
xorpd xmm0, xmm2
shufps xmm1, xmm3, 0x4e
movapd xmm3, xmm0
shufps xmm1, xmm2, 0x42
movapd xmm2, xmm0
psrlq xmm3, 0x33
psrlq xmm2, 0x30
paddq xmm1, xmm0
movsd xmm3, xmm2
movdqa xmm2, xmm0
psllq xmm0, 0xd
psllq xmm2, 0x10
movsd xmm0, xmm2
orpd xmm0, xmm3
xorpd xmm0, xmm1
movapd xmm2, xmm0
movapd xmm3, xmm0
movapd xmm4, xmm0
psrlq xmm2, 0x2b
psrlq xmm3, 0x2f
psllq xmm4, 0x11
movsd xmm3, xmm2
movapd xmm2, xmm0
psllq xmm2, 0x15
movsd xmm4, xmm2
orpd xmm4, xmm3
pcmpeqd xmm3, xmm3
movapd xmm2, xmm4
shufpd xmm2, xmm1, 1
xorpd xmm4, xmm2
paddq xmm2, xmm0
pshufd xmm0, xmm2, 0xee
movd edx, xmm4
movd eax, xmm0
pshufd xmm0, xmm2, 0xff
movd ecx, xmm0
xor edx, ecx
mov ecx, dword [esp + 0x1c]
xor edx, eax
mov esi, edx
mov dword [esp + 0x30], edx
shr esi, 0x19
mov ebx, dword [ecx + 0x20]
mov eax, dword [ecx + 0x1c]
movd xmm0, esi
mov dword [esp + 0x3c], esi
xor esi, esi
punpcklbw xmm0, xmm0
pshuflw xmm0, xmm0, 0
pshufd xmm2, xmm0, 0
mov dword [esp + 0xc], ebx
and ebx, edx
mov edx, eax
movdqa xmm0, xmm2
movdqa xmmword [esp + 0x90], xmm2
movdqu xmm1, xmmword [eax + ebx]
lea eax, [ecx + 0x10]
mov dword [esp + 0x2c], ebx
mov dword [esp + 0x14], edx
mov dword [esp + 0x28], eax
mov eax, dword [ecx + 0x14]
pcmpeqb xmm0, xmm1
movdqa xmmword [esp + 0x80], xmm1
mov dword [esp + 0x24], eax
mov eax, dword [ecx + 0x18]
pmovmskb edi, xmm0
mov dword [esp + 0x18], eax
mov eax, dword [esp + 0x20]
mov ecx, dword [eax + 4]
mov eax, dword [eax + 8]
mov dword [esp + 0x34], ecx
mov dword [esp + 0x38], eax
test di, di
je 0x462260
mov ecx, dword [esp + 0xc]
jmp 0x46229e
mov ecx, dword [esp + 0xc]
nop word cs:[eax + eax]
nop
pcmpeqb xmm1, xmm3
pmovmskb eax, xmm1
test eax, eax
jne 0x46233f
lea ebx, [esi + ebx + 0x10]
movdqa xmm0, xmm2
add esi, 0x10
and ebx, ecx
movdqu xmm1, xmmword [edx + ebx]
pcmpeqb xmm0, xmm1
pmovmskb edi, xmm0
test edi, edi
je 0x462270
tzcnt eax, edi
add eax, ebx
and eax, ecx
mov ecx, edx
shl eax, 2
sub ecx, eax
mov ecx, dword [ecx - 4]
cmp dword [esp + 0x18], ecx
jbe 0x4624d9
lea eax, [edi - 1]
mov edx, dword [esp + 0x38]
shl ecx, 4
and eax, edi
mov edi, eax
mov eax, dword [esp + 0x24]
cmp edx, dword [eax + ecx + 8]
mov edx, dword [esp + 0x14]
jne 0x46224c
add ecx, dword [esp + 0x24]
push dword [esp + 0x38]
push dword [ecx + 4]
push dword [esp + 0x3c]
movdqa xmmword [esp + 0xac], xmm1
call sub.msvcrt.dll_memcmp
movdqa xmm1, xmmword [esp + 0xac]
movdqa xmm2, xmmword [esp + 0x9c]
mov edx, dword [esp + 0x20]
pcmpeqd xmm3, xmm3
add esp, 0xc
test eax, eax
jne 0x46224c
mov eax, dword [esp + 0x20]
cmp dword [eax], 0
je 0x462445
push dword [esp + 0x34]
push 0
push dword [0x5970d8]
call sub.KERNEL32.dll_HeapFree
jmp 0x462445
movdqa xmm0, xmmword [esp + 0x80]
pmovmskb eax, xmm0
test eax, eax
je 0x46235a
mov edi, dword [esp + 0x1c]
mov ebx, dword [esp + 0x2c]
jmp 0x462384
mov edi, dword [esp + 0x1c]
mov esi, dword [esp + 0xc]
mov ebx, dword [esp + 0x2c]
mov ecx, 0x10
nop dword [eax + eax]
add ebx, ecx
add ecx, 0x10
and ebx, esi
movdqu xmm0, xmmword [edx + ebx]
pmovmskb eax, xmm0
test eax, eax
je 0x462370
tzcnt ecx, eax
add ecx, ebx
and ecx, dword [esp + 0xc]
movzx ebx, byte [edx + ecx]
test bl, bl
js 0x4623ae
movdqa xmm0, xmmword [edx]
pmovmskb eax, xmm0
or eax, 0x10000
tzcnt eax, eax
movzx ecx, ax
movzx ebx, byte [edx + ecx]
and bl, 1
je 0x4623bd
cmp dword [edi + 0x24], 0
je 0x46244d
mov esi, dword [edi + 0x24]
movzx eax, bl
mov ebx, dword [esp + 0x3c]
sub esi, eax
lea eax, [ecx - 0x10]
and eax, dword [esp + 0xc]
mov dword [edi + 0x24], esi
mov byte [edx + ecx], bl
shl ecx, 2
neg ecx
mov byte [eax + edx + 0x10], bl
mov ebx, dword [esp + 0x18]
mov eax, dword [edi + 0x28]
inc eax
mov dword [edi + 0x28], eax
mov dword [edx + ecx - 4], ebx
mov ecx, dword [edi + 0x10]
mov edx, dword [edi + 0x18]
cmp ebx, ecx
jne 0x46240d
mov ecx, dword [esp + 0x28]
add eax, esi
sub eax, edx
mov edx, eax
call fcn.0042acf0
mov ecx, dword [edi + 0x10]
mov edx, dword [edi + 0x18]
cmp edx, ecx
jne 0x46241d
mov ecx, dword [esp + 0x28]
call fcn.004373d0
mov edx, dword [edi + 0x18]
mov ebx, dword [esp + 0x20]
mov ecx, dword [edi + 0x14]
mov eax, edx
inc edx
shl eax, 4
mov esi, dword [ebx + 8]
mov dword [ecx + eax + 8], esi
mov esi, dword [esp + 0x30]
movsd xmm0, qword [ebx]
movsd qword [ecx + eax], xmm0
mov dword [ecx + eax + 0xc], esi
mov dword [edi + 0x18], edx
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret
lea ecx, [edi + 0x1c]
mov edx, 1
push dword [esp + 0x18]
push dword [esp + 0x28]
call fcn.00461770
add esp, 8
mov eax, dword [edi + 0x20]
mov edx, dword [edi + 0x1c]
mov dword [esp + 0xc], eax
and eax, dword [esp + 0x30]
movdqu xmm0, xmmword [edx + eax]
pmovmskb ecx, xmm0
test ecx, ecx
jne 0x4624ac
mov esi, dword [esp + 0xc]
mov dword [esp + 0x14], edx
mov edx, 0x10
nop dword [eax]
mov ecx, dword [esp + 0x14]
add eax, edx
add edx, 0x10
and eax, esi
movdqu xmm0, xmmword [ecx + eax]
pmovmskb ecx, xmm0
test ecx, ecx
je 0x462490
mov edx, dword [esp + 0x14]
tzcnt ecx, ecx
add ecx, eax
and ecx, dword [esp + 0xc]
cmp byte [edx + ecx], 0
js 0x4623bd
movdqa xmm0, xmmword [edx]
pmovmskb eax, xmm0
or eax, 0x10000
tzcnt eax, eax
movzx ecx, ax
jmp 0x4623bd
mov edx, dword [esp + 0x18]
push 0x585d84
call fcn.00469a50
nop word [eax + eax]