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

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
and esp, 0xfffffff0
sub esp, 0x150
mov ebx, dword [ebp + 8]
mov ecx, dword [ebx + 0x30]
cmp ecx, 4
jb 0x10005e31
mov edx, dword [ebx + 0x34]
cmp edx, 4
jb 0x10005e31
mov esi, edx
imul esi, ecx
lea eax, [esi + esi*2]
cmp eax, 0x4000000
jbe 0x10005e40
mov edi, 0x6b
mov eax, edi
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret
mov eax, dword [ebx + 0x38]
mov dword [esp + 0x10], esi
mov dword [esp + 0x18], edx
mov dword [esp + 0xc], ecx
test eax, eax
je 0x1000690e
mov ecx, dword [ebx + 0x3c]
cmp dword [ebx + 0x40], 0
mov dword [esp + 0x14], eax
mov dword [esp + 8], ecx
je 0x1000696d
mov ecx, dword [ebx + 0x20]
test ecx, ecx
je 0x100069cc
mov esi, dword [ebx + 0x24]
mov dword [esp + 0x20], ecx
mov ecx, dword [esp + 0xc]
xor edx, edx
mov edi, 0x69
mov eax, esi
div ecx
sub esi, edx
sub esi, ecx
mov dword [esp + 0x8c], esi
jb 0x10005e36
mov eax, dword [esp + 8]
mov edi, dword [esp + 0x10]
cmp edi, eax
ja 0x10006e90
mov ecx, dword [ebp + 8]
mov esi, dword [esp + 0xc]
mov eax, dword [ecx + 0x44]
cmp edi, eax
ja 0x10006e97
mov eax, edi
xor edx, edx
div esi
mov edx, dword [esp + 0x20]
cmp esi, edi
mov dword [esp + 0xa0], eax
ja 0x10006a2c
cmp dword [esp + 0x14], 0
je 0x10006a2c
mov eax, esi
mov edi, esi
mov dword [esp + 0x34], esi
shl eax, 4
mov dword [esp + 0x9c], eax
add eax, edx
mov dword [esp + 0x88], eax
mov eax, dword [ecx + 0x40]
xor ecx, ecx
mov dword [esp + 0x38], eax
lea eax, [esi - 1]
mov dword [esp + 0x50], eax
mov eax, esi
neg eax
mov dword [esp + 0x48], eax
mov eax, dword [esp + 0x14]
mov dword [esp + 0x3c], eax
mov eax, edx
jmp 0x10005f4d
mov ecx, dword [esp + 0xa4]
mov esi, dword [esp + 0xc]
mov edi, dword [esp + 0x1c]
mov edx, dword [esp + 0x24]
mov eax, dword [esp + 0x44]
inc ecx
add dword [esp + 0x38], esi
add dword [esp + 0x3c], esi
cmp ecx, dword [esp + 0xa0]
je 0x10006a2c
mov dword [esp + 0x24], eax
mov eax, dword [esp + 0x8c]
mov ebx, dword [esp + 0x34]
mov dword [esp + 0x40], edi
mov dword [esp + 0xa4], ecx
sub eax, esi
mov dword [esp + 0x1c], ebx
jae 0x10005f73
xor ebx, ebx
jmp 0x10005f93
mov edi, dword [esp + 0x88]
mov ecx, dword [esp + 0x9c]
mov dword [esp + 0x8c], eax
mov ebx, edi
add ecx, edi
mov dword [esp + 0x88], ecx
mov eax, dword [esp + 0x24]
test ebx, ebx
mov ecx, esi
cmove ecx, dword [esp + 0x1c]
cmove ebx, eax
movups xmm3, xmmword [eax]
mov eax, dword [esp + 0x40]
mov dword [esp + 0x34], ecx
mov dword [esp + 0x44], ebx
cmp eax, ecx
ja 0x100062a7
cmp eax, esi
mov dword [esp + 0x20], edx
jbe 0x10006618
mov edi, 1
mov ebx, 0xc
movaps xmm0, xmm3
jmp 0x10006141
movaps xmm0, xmm7
movdqa xmmword [esp + 0xd0], xmm2
subss xmm0, xmm1
andps xmm0, xmmword [0x100d53a0]
sub esp, 0xc
movss xmm3, dword [0x100d53b0]
movaps xmmword [esp + 0xcc], xmm1
movd dword [esp + 8], xmm2
movss dword [esp], xmm0
movaps xmmword [esp + 0xec], xmm7
movss dword [esp + 4], xmm3
call fcn.100ceb70
add esp, 0xc
fstp dword [esp + 0xa8]
movaps xmm4, xmmword [esp + 0xe0]
movaps xmm3, xmmword [esp + 0xc0]
movss xmm0, dword [esp + 0xa8]
movaps xmm1, xmm4
cmpunordss xmm1, xmm4
movaps xmm2, xmm1
andps xmm2, xmm3
minss xmm3, xmm4
andnps xmm1, xmm3
orps xmm1, xmm2
movaps xmm2, xmm1
maxss xmm2, xmm0
cmpunordss xmm0, xmm0
movaps xmm3, xmm0
andnps xmm0, xmm2
andps xmm3, xmm1
movss xmm1, dword [0x100d53b4]
orps xmm0, xmm3
subss xmm1, xmm0
mulss xmm1, xmm1
mulss xmm1, xmm1
sub esp, 0xc
movss xmm0, dword [0x100d53b8]
movss xmm2, dword [0x100d53bc]
movss dword [esp], xmm1
movss dword [esp + 8], xmm0
movss dword [esp + 4], xmm2
call fcn.100ceb70
add esp, 0xc
fstp dword [esp + 0xac]
xorps xmm0, xmm0
movss xmm2, dword [0x100d53c0]
add ebx, 0x10
maxss xmm0, dword [esp + 0xac]
mov ecx, dword [esp + 0x3c]
mov edx, dword [esp + 0x20]
movdqa xmm3, xmmword [esp + 0x70]
movaps xmm1, xmm2
minss xmm1, xmm0
movss xmm0, dword [0x100d53b4]
cvttss2si eax, xmm1
xorps xmm1, xmm1
mov byte [ecx + edi - 1], al
mov ecx, dword [esp + 0x38]
subss xmm0, dword [esp + 0xd0]
mulss xmm0, dword [0x100d53c4]
maxss xmm1, xmm0
movaps xmm0, xmm2
minss xmm0, xmm1
cvttss2si eax, xmm0
movdqa xmm0, xmmword [esp + 0x60]
mov byte [ecx + edi - 1], al
mov eax, dword [esp + 0x48]
lea eax, [eax + edi + 1]
inc edi
cmp eax, 1
je 0x10005f20
mov eax, dword [esp + 0x50]
cmp edi, eax
cmovb eax, edi
cmp eax, dword [esp + 0x1c]
jae 0x10006e4a
mov ecx, dword [esp + 0x48]
add ecx, edi
cmp ecx, 1
je 0x10006e69
mov ecx, dword [esp + 0x24]
shl eax, 4
movss xmm2, dword [edx + ebx - 0xc]
movaps xmm6, xmm3
movaps xmm1, xmm3
movaps xmm4, xmm0
addss xmm1, xmm6
shufps xmm3, xmm6, 0xff
unpckhpd xmm4, xmm0
movaps xmmword [esp + 0x60], xmm6
shufps xmm1, xmm1, 0
addss xmm3, xmm3
shufps xmm3, xmm3, 0
movups xmm5, xmmword [ecx + eax]
mov ecx, dword [esp + 0x44]
movlhps xmm2, xmm0
shufps xmm2, xmm0, 0xe2
movss xmm7, dword [ecx + ebx - 0xc]
movaps xmmword [esp + 0x70], xmm5
movlhps xmm7, xmm5
shufps xmm7, xmm5, 0xe2
addps xmm7, xmm2
movss xmm2, dword [ecx + ebx]
subps xmm7, xmm1
movss xmm1, dword [edx + ebx]
shufps xmm2, xmm5, 0xf4
shufps xmm1, xmm0, 0xf4
shufps xmm2, xmm5, 0xf2
shufps xmm1, xmm0, 0xf2
addps xmm2, xmm1
movaps xmm1, xmm5
subps xmm2, xmm3
movss xmm3, dword [edx + ebx - 4]
unpckhpd xmm1, xmm5
unpcklps xmm4, xmm3
movss xmm3, dword [ecx + ebx - 4]
unpcklps xmm1, xmm3
movaps xmm3, xmm6
unpckhpd xmm3, xmm6
addps xmm1, xmm4
movaps xmm4, xmmword [0x100d53a0]
addss xmm3, xmm3
shufps xmm3, xmm3, 0
subps xmm1, xmm3
movss xmm3, dword [edx + ebx - 8]
andps xmm7, xmm4
andps xmm2, xmm4
andps xmm1, xmm4
shufps xmm3, xmm0, 0xd4
shufps xmm3, xmm0, 0x52
movss xmm0, dword [ecx + ebx - 8]
shufps xmm0, xmm5, 0xd4
shufps xmm0, xmm5, 0x52
addps xmm0, xmm3
movaps xmm3, xmm6
shufps xmm3, xmm6, 0x55
addss xmm3, xmm3
shufps xmm3, xmm3, 0
subps xmm0, xmm3
andps xmm0, xmm4
movaps xmm3, xmm0
maxps xmm3, xmm7
cmpunordps xmm7, xmm7
andps xmm0, xmm7
andnps xmm7, xmm3
orps xmm7, xmm0
movaps xmm0, xmm2
maxps xmm0, xmm1
cmpunordps xmm1, xmm1
andps xmm2, xmm1
andnps xmm1, xmm0
orps xmm1, xmm2
movaps xmm0, xmm1
maxps xmm0, xmm7
cmpunordps xmm7, xmm7
andps xmm1, xmm7
andnps xmm7, xmm0
orps xmm7, xmm1
pshufd xmm1, xmm7, 0x55
ucomiss xmm7, xmm7
movdqa xmm2, xmm1
jp 0x10005fe0
movdqa xmm2, xmm1
maxss xmm2, xmm7
jmp 0x10005fe0
movaps xmm4, xmm3
movaps xmm6, xmm3
movaps xmm1, xmm3
add edx, 0xc
add ebx, 0xc
xor edi, edi
movaps xmm5, xmm3
shufps xmm4, xmm3, 0xff
unpckhpd xmm6, xmm3
shufps xmm1, xmm3, 0x55
movaps xmm7, xmm4
movaps xmm0, xmm6
movaps xmm2, xmm1
jmp 0x10006469
movaps xmm0, xmm5
movdqa xmmword [esp + 0x60], xmm2
subss xmm0, xmm1
andps xmm0, xmmword [0x100d53a0]
sub esp, 0xc
movss xmm3, dword [0x100d53b0]
movaps xmmword [esp + 0x11c], xmm1
movd dword [esp + 8], xmm2
movss dword [esp], xmm0
movaps xmmword [esp + 0x10c], xmm5
movss dword [esp + 4], xmm3
call fcn.100ceb70
add esp, 0xc
fstp dword [esp + 0xb8]
movaps xmm4, xmmword [esp + 0x100]
movaps xmm3, xmmword [esp + 0x110]
movss xmm0, dword [esp + 0xb8]
movaps xmm1, xmm4
cmpunordss xmm1, xmm4
movaps xmm2, xmm1
andps xmm2, xmm3
minss xmm3, xmm4
andnps xmm1, xmm3
orps xmm1, xmm2
movaps xmm2, xmm1
maxss xmm2, xmm0
cmpunordss xmm0, xmm0
movaps xmm3, xmm0
andnps xmm0, xmm2
andps xmm3, xmm1
movss xmm1, dword [0x100d53b4]
orps xmm0, xmm3
subss xmm1, xmm0
mulss xmm1, xmm1
mulss xmm1, xmm1
sub esp, 0xc
movss xmm0, dword [0x100d53b8]
movss xmm2, dword [0x100d53bc]
movss dword [esp], xmm1
movss dword [esp + 8], xmm0
movss dword [esp + 4], xmm2
call fcn.100ceb70
add esp, 0xc
fstp dword [esp + 0xbc]
xorps xmm0, xmm0
movss xmm2, dword [0x100d53c0]
add ebx, 0x10
maxss xmm0, dword [esp + 0xbc]
mov edx, dword [esp + 0x3c]
movss xmm7, dword [esp + 0xd0]
movss xmm5, dword [esp + 0xf0]
movdqa xmm3, xmmword [esp + 0x70]
movaps xmm4, xmmword [esp + 0xe0]
movaps xmm6, xmmword [esp + 0x130]
movaps xmm1, xmm2
minss xmm1, xmm0
movss xmm0, dword [0x100d53b4]
cvttss2si eax, xmm1
xorps xmm1, xmm1
mov byte [edx + edi], al
mov edx, dword [esp + 0x20]
mov eax, dword [esp + 0x38]
subss xmm0, dword [esp + 0x60]
add edx, 0x10
cmp dword [esp + 0xc], esi
mulss xmm0, dword [0x100d53c4]
maxss xmm1, xmm0
movaps xmm0, xmm2
movss xmm2, dword [esp + 0x4c]
minss xmm0, xmm1
movaps xmm1, xmmword [esp + 0x120]
cvttss2si ecx, xmm0
movd xmm0, dword [esp + 0xc0]
mov byte [eax + edi], cl
mov edi, esi
je 0x10005f20
mov eax, dword [esp + 0x50]
lea esi, [edi + 1]
movaps xmmword [esp + 0x60], xmm7
movss dword [esp + 0xd0], xmm4
cmp esi, eax
cmovb eax, esi
cmp eax, dword [esp + 0x1c]
jae 0x10006e4a
cmp dword [esp + 0x40], edi
je 0x10006e5e
cmp dword [esp + 0x34], edi
je 0x10006e85
cmp dword [esp + 0xc], edi
je 0x10006e69
mov ecx, dword [esp + 0x24]
shl eax, 4
movaps xmm7, xmm3
movss dword [esp + 0xc0], xmm6
movss xmm6, dword [esp + 0xd0]
mov dword [esp + 0x20], edx
movss dword [esp + 0xf0], xmm7
movss xmm3, dword [ecx + eax]
movss xmm4, dword [ecx + eax + 0xc]
addss xmm6, xmm6
movaps xmmword [esp + 0x70], xmm3
addss xmm5, xmm3
movaps xmm3, xmmword [esp + 0x60]
movaps xmmword [esp + 0xe0], xmm4
addss xmm3, xmm4
movaps xmm4, xmm7
addss xmm4, xmm7
movaps xmm7, xmm1
movss xmm1, dword [edx - 0xc]
subss xmm3, xmm6
subss xmm5, xmm4
movaps xmmword [esp + 0x60], xmm3
movss xmm3, dword [ecx + eax + 8]
movss dword [esp + 0x4c], xmm7
addss xmm1, dword [ebx - 0xc]
movaps xmmword [esp + 0x130], xmm3
addss xmm0, xmm3
movss xmm3, dword [edx - 4]
subss xmm1, xmm4
movss xmm4, dword [edx]
addss xmm3, dword [ebx - 4]
addss xmm4, dword [ebx]
subss xmm4, xmm6
movss xmm6, dword [esp + 0xc0]
addss xmm6, xmm6
subss xmm0, xmm6
subss xmm3, xmm6
movss xmm6, dword [ecx + eax + 4]
movaps xmmword [esp + 0x120], xmm6
addss xmm2, xmm6
movaps xmm6, xmm7
addss xmm6, xmm7
movss xmm7, dword [edx - 8]
subss xmm2, xmm6
addss xmm7, dword [ebx - 8]
subss xmm7, xmm6
movaps xmm6, xmmword [0x100d53a0]
andps xmm5, xmm6
andps xmm1, xmm6
andps xmm2, xmm6
andps xmm7, xmm6
andps xmm4, xmm6
andps xmm0, xmm6
andps xmm3, xmm6
unpcklps xmm5, xmm1
movaps xmm1, xmmword [esp + 0x60]
unpcklps xmm2, xmm7
unpcklps xmm0, xmm3
movaps xmm7, xmm2
maxps xmm7, xmm5
cmpunordps xmm5, xmm5
andps xmm2, xmm5
andnps xmm5, xmm7
andps xmm1, xmm6
orps xmm5, xmm2
unpcklps xmm1, xmm4
movaps xmm2, xmm1
maxps xmm2, xmm0
cmpunordps xmm0, xmm0
andps xmm1, xmm0
andnps xmm0, xmm2
orps xmm0, xmm1
movaps xmm1, xmm0
maxps xmm1, xmm5
cmpunordps xmm5, xmm5
andps xmm0, xmm5
andnps xmm5, xmm1
orps xmm5, xmm0
pshufd xmm1, xmm5, 0x55
ucomiss xmm5, xmm5
movdqa xmm2, xmm1
jp 0x100062e0
movdqa xmm2, xmm1
maxss xmm2, xmm5
jmp 0x100062e0
neg eax
mov ebx, 1
mov edi, 0xc
movaps xmm0, xmm3
mov dword [esp + 0x4c], eax
nop dword [eax + eax]
mov eax, dword [esp + 0x50]
cmp ebx, eax
cmovb eax, ebx
cmp eax, dword [esp + 0x1c]
jae 0x10006e4a
mov ecx, dword [esp + 0x4c]
add ecx, ebx
cmp ecx, 1
je 0x10006e5e
mov ecx, dword [esp + 0x24]
shl eax, 4
movaps xmm7, xmm3
movaps xmm2, xmm3
movaps xmm4, xmm3
movss xmm3, dword [edx + edi - 0xc]
movaps xmm5, xmm0
addss xmm2, xmm7
shufps xmm4, xmm7, 0xff
unpckhpd xmm5, xmm0
movaps xmmword [esp + 0xe0], xmm7
shufps xmm2, xmm2, 0
addss xmm4, xmm4
shufps xmm4, xmm4, 0
movups xmm6, xmmword [ecx + eax]
mov ecx, dword [esp + 0x44]
movlhps xmm3, xmm0
shufps xmm3, xmm0, 0xe2
movss xmm1, dword [ecx + edi - 0xc]
movaps xmmword [esp + 0x70], xmm6
movlhps xmm1, xmm6
shufps xmm1, xmm6, 0xe2
addps xmm1, xmm3
movss xmm3, dword [ecx + edi]
subps xmm1, xmm2
movss xmm2, dword [edx + edi]
shufps xmm3, xmm6, 0xf4
shufps xmm2, xmm0, 0xf4
shufps xmm3, xmm6, 0xf2
shufps xmm2, xmm0, 0xf2
addps xmm3, xmm2
movaps xmm2, xmm6
subps xmm3, xmm4
movss xmm4, dword [edx + edi - 4]
unpckhpd xmm2, xmm6
unpcklps xmm5, xmm4
movss xmm4, dword [ecx + edi - 4]
unpcklps xmm2, xmm4
movaps xmm4, xmm7
unpckhpd xmm4, xmm7
addps xmm2, xmm5
movaps xmm5, xmmword [0x100d53a0]
addss xmm4, xmm4
shufps xmm4, xmm4, 0
subps xmm2, xmm4
movss xmm4, dword [edx + edi - 8]
andps xmm1, xmm5
andps xmm3, xmm5
andps xmm2, xmm5
shufps xmm4, xmm0, 0xd4
shufps xmm4, xmm0, 0x52
movss xmm0, dword [ecx + edi - 8]
shufps xmm0, xmm6, 0xd4
shufps xmm0, xmm6, 0x52
addps xmm0, xmm4
movaps xmm4, xmm7
shufps xmm4, xmm7, 0x55
addss xmm4, xmm4
shufps xmm4, xmm4, 0
subps xmm0, xmm4
andps xmm0, xmm5
movaps xmm4, xmm0
maxps xmm0, xmm1
cmpunordps xmm1, xmm1
andps xmm4, xmm1
andnps xmm1, xmm0
movaps xmm0, xmm3
maxps xmm0, xmm2
cmpunordps xmm2, xmm2
orps xmm1, xmm4
andps xmm3, xmm2
andnps xmm2, xmm0
orps xmm2, xmm3
movaps xmm0, xmm2
maxps xmm0, xmm1
cmpunordps xmm1, xmm1
andps xmm2, xmm1
andnps xmm1, xmm0
orps xmm1, xmm2
pshufd xmm3, xmm1, 0x55
ucomiss xmm1, xmm1
movdqa xmm2, xmm3
jp 0x10006793
movdqa xmm2, xmm3
maxss xmm2, xmm1
movaps xmm0, xmm1
mov esi, dword [esp + 0x48]
subss xmm0, xmm3
andps xmm0, xmmword [0x100d53a0]
lea eax, [esi + ebx]
mov dword [esp + 0x60], eax
sub esp, 0xc
movss xmm4, dword [0x100d53b0]
movaps xmmword [esp + 0xdc], xmm1
movdqa xmmword [esp + 0xfc], xmm2
movd dword [esp + 8], xmm2
movss dword [esp], xmm0
movaps xmmword [esp + 0xcc], xmm3
movss dword [esp + 4], xmm4
call fcn.100ceb70
add esp, 0xc
fstp dword [esp + 0xb0]
movaps xmm3, xmmword [esp + 0xd0]
movaps xmm4, xmmword [esp + 0xc0]
movss xmm0, dword [esp + 0xb0]
movaps xmm1, xmm3
cmpunordss xmm1, xmm3
movaps xmm2, xmm1
andps xmm2, xmm4
minss xmm4, xmm3
andnps xmm1, xmm4
orps xmm1, xmm2
movaps xmm2, xmm1
maxss xmm2, xmm0
cmpunordss xmm0, xmm0
movaps xmm3, xmm0
andnps xmm0, xmm2
andps xmm3, xmm1
movss xmm1, dword [0x100d53b4]
orps xmm0, xmm3
subss xmm1, xmm0
mulss xmm1, xmm1
mulss xmm1, xmm1
sub esp, 0xc
movss xmm0, dword [0x100d53b8]
movss xmm2, dword [0x100d53bc]
movss dword [esp], xmm1
movss dword [esp + 8], xmm0
movss dword [esp + 4], xmm2
call fcn.100ceb70
add esp, 0xc
fstp dword [esp + 0xb4]
xorps xmm0, xmm0
movss xmm2, dword [0x100d53c0]
maxss xmm0, dword [esp + 0xb4]
cmp dword [esp + 0x60], 1
mov ecx, dword [esp + 0x3c]
movaps xmm1, xmm2
minss xmm1, xmm0
cvttss2si eax, xmm1
mov byte [ecx + ebx - 1], al
je 0x10006e70
movss xmm0, dword [0x100d53b4]
xorps xmm1, xmm1
mov ecx, dword [esp + 0x38]
mov edx, dword [esp + 0x20]
movdqa xmm3, xmmword [esp + 0x70]
add edi, 0x10
subss xmm0, dword [esp + 0xf0]
mulss xmm0, dword [0x100d53c4]
maxss xmm1, xmm0
movaps xmm0, xmm2
minss xmm0, xmm1
cvttss2si eax, xmm0
movdqa xmm0, xmmword [esp + 0xe0]
mov byte [ecx + ebx - 1], al
lea eax, [esi + ebx + 1]
inc ebx
cmp eax, 1
jne 0x10006630
jmp 0x10005f20
mov esi, dword [esp + 0x10]
test esi, esi
je 0x10006a9e
mov edx, esi
lea eax, [esp + 0x28]
mov dword [esp + 0x2c], 0
lea ecx, [esp + 0x54]
not edx
shr edx, 0x1f
push eax
push esi
call fcn.1001fc70
add esp, 8
mov eax, esi
cmp dword [esp + 0x54], 0
mov esi, dword [esp + 0x58]
je 0x10006acf
mov edi, 0x65
cmp esi, 0x80000001
jne 0x10005e36
mov eax, dword [esp + 0x10]
mov esi, 1
xor edi, edi
jmp 0x10006ad1
mov esi, dword [esp + 0x10]
test esi, esi
je 0x10006ab7
mov edx, esi
lea eax, [esp + 0x28]
mov dword [esp + 0x2c], 0
lea ecx, [esp + 0x54]
not edx
shr edx, 0x1f
push eax
push esi
call fcn.1001fc70
add esp, 8
mov eax, esi
cmp dword [esp + 0x54], 0
mov esi, dword [esp + 0x58]
je 0x10006b23
mov edi, 0x65
cmp esi, 0x80000001
jne 0x10005e36
mov eax, dword [esp + 0x10]
xor edi, edi
mov esi, 1
jmp 0x10006b25
mov esi, dword [ebx + 0x30]
mov ebx, 1
test esi, esi
je 0x10006b7d
xor edx, edx
cmp esi, 0x20000000
lea eax, [esi*4]
lea edi, [esp + 0x28]
mov dword [esp + 0x2c], 0
lea ecx, [esp + 0x54]
setb dl
push edi
push eax
call fcn.1001fc70
add esp, 8
cmp dword [esp + 0x54], 0
mov eax, dword [esp + 0x58]
je 0x10006b73
mov edi, 0x65
cmp eax, 0x80000001
jne 0x10005e36
jmp 0x10006b7d
mov edi, dword [esp + 0x10]
mov dword [esp + 0x90], 1
mov dword [esp + 0x94], 0
mov dword [esp + 0x98], 0
test edi, edi
je 0x10006be8
mov edx, edi
lea eax, [esp + 0x28]
mov dword [esp + 0x2c], 0
lea ecx, [esp + 0x54]
not edx
shr edx, 0x1f
push eax
push edi
call fcn.1001fc70
add esp, 8
cmp dword [esp + 0x54], 0
mov eax, dword [esp + 0x58]
je 0x10006bda
cmp eax, 0x80000001
je 0x10006be8
mov edi, 0x65
jmp 0x10005e36
mov eax, dword [ebx + 0x38]
test eax, eax
jne 0x10005e57
mov esi, 1
xor edi, edi
xor eax, eax
jmp 0x10006d5a
cmp dword [ebx + 0x40], 0
jne 0x10005e6c
mov esi, 1
xor edi, edi
xor eax, eax
jmp 0x10006e1f
mov edi, eax
cmp eax, 2
mov eax, esi
jb 0x10006af1
mov eax, dword [esp + 0x10]
dec eax
push eax
push 0
push esi
call sub.msvcrt.dll_memset
add esp, 0xc
mov eax, dword [esp + 0x10]
lea eax, [esi + eax - 1]
test esi, esi
mov byte [eax], 0
je 0x10005e36
mov eax, dword [ebx + 0x38]
test eax, eax
je 0x10006d56
test edi, edi
je 0x10005e57
push 1
push edi
push esi
call fcn.10004680
add esp, 0xc
mov eax, dword [ebx + 0x38]
jmp 0x10005e57
mov edi, eax
cmp eax, 2
mov eax, esi
jb 0x10006b45
mov eax, dword [esp + 0x10]
dec eax
push eax
push 0
push esi
call sub.msvcrt.dll_memset
add esp, 0xc
mov eax, dword [esp + 0x10]
lea eax, [esi + eax - 1]
test esi, esi
mov byte [eax], 0
je 0x10005e36
cmp dword [ebx + 0x40], 0
je 0x10006e1b
test edi, edi
je 0x10005e6c
push 1
push edi
push esi
call fcn.10004680
add esp, 0xc
jmp 0x10005e6c
test eax, eax
mov ebx, eax
je 0x10006e43
push 0
push esi
push ebx
push dword [ebp + 8]
call fcn.10011c00
add esp, 0x10
cmp eax, 0x6b
jne 0x10006bbc
test esi, esi
je 0x10006ba4
shl esi, 2
push 1
push esi
push ebx
call fcn.10004680
add esp, 0xc
mov ebx, dword [ebp + 8]
mov ecx, dword [ebx + 0x20]
test ecx, ecx
jne 0x10005e77
mov edi, 0x6a
jmp 0x10005e36
mov edi, eax
test esi, esi
je 0x10005e36
shl esi, 2
push 1
push esi
push ebx
call fcn.10004680
add esp, 0xc
jmp 0x10005e36
mov dword [esp + 0x90], eax
mov dword [esp + 0x94], edi
lea eax, [esp + 0x90]
push 0
push edi
push eax
call fcn.10023190
add esp, 0xc
mov eax, dword [esp + 0x90]
mov edi, dword [esp + 0x94]
test eax, eax
je 0x10005e36
mov ecx, dword [esp + 0x98]
mov ebx, dword [esp + 0x18]
mov dword [esp + 0x60], ecx
push ebx
push esi
push ecx
push eax
push dword [esp + 0x18]
mov esi, dword [esp + 0x28]
push esi
mov dword [esp + 0x88], eax
call fcn.1000fff0
add esp, 0x18
push ebx
mov ebx, dword [esp + 0x10]
push ebx
push dword [esp + 0x10]
push esi
push dword [esp + 0x70]
push dword [esp + 0x84]
call fcn.1000fff0
add esp, 0x18
push 3
push dword [esp + 0x1c]
push ebx
push dword [esp + 0x6c]
push dword [esp + 0x80]
mov ebx, dword [esp + 0x1c]
push ebx
push esi
call fcn.10010670
add esp, 0x1c
push dword [esp + 0x18]
push dword [esp + 0x10]
push dword [esp + 0x68]
push dword [esp + 0x7c]
push ebx
push esi
call fcn.1000fff0
add esp, 0x18
push dword [esp + 0x18]
push dword [esp + 0x10]
push ebx
push esi
mov ebx, dword [esp + 0x70]
push ebx
mov esi, dword [esp + 0x84]
push esi
call fcn.10010330
add esp, 0x18
push dword [esp + 0x18]
push dword [esp + 0x10]
push ebx
push esi
push dword [esp + 0x18]
push dword [esp + 0x28]
call fcn.10010330
add esp, 0x18
mov esi, dword [esp + 0x18]
push esi
push dword [esp + 0x10]
push dword [esp + 0x10]
push dword [esp + 0x20]
push ebx
push dword [esp + 0x84]
call fcn.10010330
add esp, 0x18
push esi
mov esi, dword [esp + 0x10]
push esi
push ebx
push dword [esp + 0x7c]
mov eax, dword [ebp + 8]
push dword [eax + 0x44]
push dword [eax + 0x40]
call fcn.10010330
add esp, 0x18
push dword [esp + 0x18]
push esi
mov eax, dword [ebp + 8]
push dword [eax + 0x44]
push dword [eax + 0x40]
push ebx
mov ebx, dword [ebp + 8]
push dword [esp + 0x84]
call fcn.1000fff0
mov edx, dword [esp + 0x20]
add esp, 0x18
mov eax, dword [ebx + 0x44]
cmp eax, edx
cmovb edx, eax
test edx, edx
je 0x10006ebf
mov eax, dword [ebx + 0x40]
xor ecx, ecx
cmp edx, 8
mov dword [esp + 8], edx
jae 0x10006d7e
mov esi, dword [esp + 0x14]
jmp 0x10006ea8
mov eax, dword [esp + 0x10]
mov dword [esp + 0x28], esi
mov dword [esp + 0x2c], edi
mov dword [esp + 0x30], eax
lea eax, [esp + 0x28]
push eax
call fcn.10022d00
add esp, 4
mov dword [ebx + 0x38], eax
mov dword [ebx + 0x3c], edx
jmp 0x10005e57
mov esi, dword [esp + 0x14]
mov edx, dword [esp + 8]
mov ebx, dword [esp + 8]
add edx, esi
cmp eax, edx
jae 0x10006da2
mov edx, dword [esp + 8]
mov ebx, dword [esp + 8]
add edx, eax
cmp esi, edx
jb 0x10006ea8
xor ecx, ecx
cmp ebx, 0x20
jb 0x10006df5
mov ecx, ebx
xor edx, edx
and ecx, 0xffffffe0
movdqu xmm0, xmmword [esi + edx]
movdqu xmm2, xmmword [eax + edx]
movdqu xmm1, xmmword [esi + edx + 0x10]
movdqu xmm3, xmmword [eax + edx + 0x10]
pminub xmm2, xmm0
pminub xmm3, xmm1
movdqu xmmword [eax + edx], xmm2
movdqu xmmword [eax + edx + 0x10], xmm3
add edx, 0x20
cmp ecx, edx
jne 0x10006db0
mov ebx, dword [esp + 8]
cmp ebx, ecx
je 0x10006ebf
test bl, 0x18
je 0x10006ea8
mov edx, ecx
mov ecx, ebx
and ecx, 0xfffffff8
movq xmm0, qword [esi + edx]
movq xmm1, qword [eax + edx]
pminub xmm1, xmm0
movq qword [eax + edx], xmm1
add edx, 8
cmp ecx, edx
jne 0x10006dfc
jmp 0x10006eb9
mov eax, dword [esp + 0x10]
mov dword [esp + 0x28], esi
mov dword [esp + 0x2c], edi
mov dword [esp + 0x30], eax
lea eax, [esp + 0x28]
push eax
call fcn.10022d00
add esp, 4
mov dword [ebx + 0x40], eax
mov dword [ebx + 0x44], edx
jmp 0x10005e6c
mov edi, esi
jmp 0x10005e36
push 0x100d5570
push dword [esp + 0x20]
push eax
call fcn.100b0f30
add esp, 0xc
ud2
push 0x100d5580
mov eax, dword [esp + 0x44]
jmp 0x10006e79
push 0x100d55a0
jmp 0x10006e75
push 0x100d55b0
mov eax, dword [esp + 0x10]
push eax
push eax
call fcn.100b0f30
add esp, 0xc
ud2
push 0x100d5590
mov eax, dword [esp + 0x38]
jmp 0x10006e79
push 0x100d5550
jmp 0x10006e9c
push 0x100d5560
push eax
push edi
call fcn.100b6af0
add esp, 0xc
ud2
movzx edx, byte [esi + ecx]
movzx ebx, byte [eax + ecx]
cmp dl, bl
cmovb ebx, edx
mov byte [eax + ecx], bl
inc ecx
cmp dword [esp + 8], ecx
jne 0x10006ea8
test edi, edi
je 0x10005e31
push 1
push edi
push dword [esp + 0x78]
call fcn.10004680
add esp, 0xc
jmp 0x10005e31