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

Disassembly:
push ebp
push ebx
push edi
push esi
sub esp, 0xa4
mov esi, edx
mov ebx, dword [esp + 0xc4]
mov eax, dword [section..data]
xor eax, esp
mov dword [esp + 0xa0], eax
mov eax, dword [esp + 0xb8]
add eax, edx
mov dword [esp + 0x28], eax
mov eax, dword [ecx + 0x7368]
mov dword [esp + 0x58], eax
mov edi, dword [ecx + 0x7378]
add edi, eax
test ebx, ebx
je 0x40af99
mov eax, dword [esp + 0xc0]
mov edx, dword [ecx + 0x72b0]
mov dword [esp + 0x14], edx
mov edx, dword [ecx + 0x72b4]
mov dword [esp + 0x40], edx
mov edx, dword [ecx + 0x72b8]
mov dword [esp + 0x3c], edx
mov dword [ecx + 0x72fc], 1
mov edx, dword [ecx + 0x6834]
mov dword [esp + 0x90], edx
movsd xmm0, qword [ecx + 0x682c]
movsd qword [esp + 0x88], xmm0
test eax, eax
je 0x40ba23
mov ebp, dword [esp + 0xbc]
mov dword [esp + 0x68], ebp
lea edx, [ebp + 4]
mov dword [esp + 0x6c], edx
cmp eax, 4
mov dword [esp + 0x20], edi
jb 0x40afcc
lea edx, [eax + ebp]
add edx, 0xfffffffc
mov dword [esp + 0x64], edx
mov edx, dword [ebp + eax - 4]
mov dword [esp + 0x5c], edx
cmp edx, 0x1000000
jb 0x40ba23
mov dword [esp + 0x30], ebx
mov dword [esp + 0x18], ecx
mov dword [esp + 0x34], esi
mov ecx, edx
shr ecx, 0x18
bsr ebx, ecx
xor ebx, 0x1f
add ebx, 0xffffffe9
mov dword [esp + 0x60], ebx
cmp eax, 0xffffff88
ja 0x40ba23
add eax, 0xfffffffc
jmp 0x40b025
mov ebx, esi
sub edi, eax
mov ecx, dword [esp + 0x28]
sub ecx, ebx
mov ebp, 0xffffffba
cmp edi, ecx
ja 0x40ba28
test ebx, ebx
je 0x40b07f
push edi
push eax
push ebx
call fcn.0040e830
add esp, 0xc
add ebx, edi
mov ebp, ebx
jmp 0x40b081
mov dword [esp + 0x64], ebp
movzx edx, byte [ebp]
mov dword [esp + 0x5c], edx
cmp eax, 2
je 0x40afeb
cmp eax, 3
jne 0x40aff8
movzx edi, byte [ebp + 2]
shl edi, 0x10
or edx, edi
movzx edi, byte [ebp + 1]
shl edi, 8
add edx, edi
mov dword [esp + 0x5c], edx
movzx edi, byte [eax + ebp - 1]
test edi, edi
je 0x40ba23
mov dword [esp + 0x30], ebx
mov dword [esp + 0x18], ecx
mov dword [esp + 0x34], esi
bsr ebx, edi
xor ebx, 0x1f
shl eax, 3
sub ebx, eax
add ebx, 9
mov dword [esp + 0x60], ebx
xor eax, eax
mov ecx, dword [esp + 0x18]
mov edi, dword [ecx]
mov ebp, dword [edi + 4]
add ebx, ebp
mov ecx, ebx
neg cl
mov esi, edx
shr esi, cl
and esi, dword [ebp*4 + 0x420e74]
mov dword [esp + 0x60], ebx
mov dword [esp + 0x70], esi
cmp ebx, 0x20
ja 0x40b0ab
cmp eax, 4
jge 0x40b088
test eax, eax
je 0x40ba8d
mov esi, dword [esp + 0xbc]
lea ecx, [esi + eax]
mov edx, ebx
shr edx, 3
sub ecx, edx
cmp ecx, esi
cmovb edx, eax
sub eax, edx
lea ecx, [esi + eax]
mov dword [esp + 0x64], ecx
shl edx, 3
sub ebx, edx
jmp 0x40b0a0
xor ebp, ebp
sub ebp, esi
jmp 0x40ba28
mov ecx, ebx
shr ecx, 3
sub eax, ecx
mov esi, dword [esp + 0xbc]
lea ecx, [esi + eax]
mov dword [esp + 0x64], ecx
and ebx, 7
mov dword [esp + 0x60], ebx
mov edx, dword [esi + eax]
mov dword [esp + 0x5c], edx
add edi, 8
mov dword [esp + 0x74], edi
mov ecx, dword [esp + 0x18]
mov edi, dword [ecx + 8]
mov esi, dword [edi + 4]
add ebx, esi
mov ecx, ebx
neg cl
mov ebp, edx
shr ebp, cl
and ebp, dword [esi*4 + 0x420e74]
mov dword [esp + 0x60], ebx
mov dword [esp + 0x78], ebp
cmp ebx, 0x20
jbe 0x40b0e3
mov ebp, dword [esp + 0xbc]
jmp 0x40b133
cmp eax, 4
mov ebp, dword [esp + 0xbc]
jge 0x40b116
test eax, eax
je 0x40ba94
lea ecx, [eax + ebp]
mov edx, ebx
shr edx, 3
sub ecx, edx
cmp ecx, ebp
cmovb edx, eax
sub eax, edx
lea ecx, [eax + ebp]
mov dword [esp + 0x64], ecx
shl edx, 3
sub ebx, edx
jmp 0x40b127
mov ecx, ebx
shr ecx, 3
sub eax, ecx
lea ecx, [eax + ebp]
mov dword [esp + 0x64], ecx
and ebx, 7
mov dword [esp + 0x60], ebx
mov edx, dword [ebp + eax]
mov dword [esp + 0x5c], edx
add edi, 8
mov dword [esp + 0x7c], edi
mov ecx, dword [esp + 0x18]
mov edi, dword [ecx + 4]
mov esi, dword [edi + 4]
add ebx, esi
mov ecx, ebx
neg cl
shr edx, cl
and edx, dword [esi*4 + 0x420e74]
mov dword [esp + 0x60], ebx
mov dword [esp + 0x80], edx
cmp ebx, 0x20
ja 0x40b1a2
lea ecx, [eax + ebp]
cmp eax, 4
jge 0x40b18a
test eax, eax
je 0x40b1a2
mov edx, ebx
shr edx, 3
mov esi, ecx
sub esi, edx
cmp esi, ebp
cmovb edx, eax
sub ecx, edx
mov dword [esp + 0x64], ecx
shl edx, 3
sub ebx, edx
jmp 0x40b198
mov eax, ebx
shr eax, 3
sub ecx, eax
mov dword [esp + 0x64], ecx
and ebx, 7
mov dword [esp + 0x60], ebx
mov eax, dword [ecx]
mov dword [esp + 0x5c], eax
add dword [esp + 0x18], 0x682c
add edi, 8
mov dword [esp + 0x84], edi
mov eax, dword [esp + 0x28]
add eax, 0xffffffe0
mov dword [esp + 0x54], eax
mov eax, dword [esp + 0x14]
lea ecx, [eax + 0x10]
mov dword [esp + 0x48], ecx
add eax, 0x18
mov dword [esp + 0x44], eax
xor ebp, ebp
mov eax, dword [esp + 0x34]
mov dword [esp + 0x24], eax
nop dword [eax + eax]
mov dword [esp + 0x2c], ebp
mov eax, dword [esp + 0x70]
mov ecx, dword [esp + 0x74]
mov edx, dword [ecx + eax*8]
mov dword [esp], edx
mov esi, dword [ecx + eax*8 + 4]
mov eax, dword [esp + 0x84]
mov ecx, dword [esp + 0x80]
mov edx, dword [eax + ecx*8]
mov dword [esp + 0x10], edx
mov ebp, dword [eax + ecx*8 + 4]
mov eax, dword [esp + 0x7c]
mov ecx, dword [esp + 0x78]
mov edx, dword [eax + ecx*8]
mov edi, dword [eax + ecx*8 + 4]
mov ecx, edx
shr ecx, 0x10
cmp cl, 2
mov dword [esp + 8], esi
mov dword [esp + 0x38], edx
jb 0x40b2a0
mov dword [esp + 0xc], ebp
mov eax, edi
shld eax, edx, 0x10
movzx ebp, al
cmp dword [esp + 0xc8], 0
je 0x40b2e0
cmp cl, 0x19
jb 0x40b2e0
mov dword [esp + 4], edi
mov eax, 0x20
sub eax, ebx
cmp eax, ebp
mov edx, ebp
mov dword [esp + 0x1c], eax
cmovb edx, eax
mov eax, ebp
sub eax, edx
mov edi, dword [esp + 0x5c]
mov esi, edi
mov ecx, ebx
shl esi, cl
mov ecx, edx
add edx, ebx
neg cl
shr esi, cl
mov dword [esp + 0x50], eax
mov ecx, eax
shl esi, cl
mov ecx, esi
cmp edx, 0x20
jbe 0x40b391
mov eax, dword [esp + 0x1c]
jmp 0x40b418
test cl, cl
je 0x40b339
mov eax, dword [esp + 0x5c]
mov ecx, ebx
shl eax, cl
shr eax, 0x1f
cmp esi, 1
adc eax, edi
inc ebx
mov dword [esp + 0x60], ebx
cmp eax, 3
jne 0x40b351
mov ecx, dword [esp + 0x88]
lea eax, [ecx - 1]
cmp eax, 1
adc ecx, 0xffffffff
jmp 0x40b363
mov edx, dword [esp + 0x5c]
mov ecx, ebx
shl edx, cl
neg al
mov ecx, eax
shr edx, cl
mov ecx, edx
add ebp, ebx
add ecx, edi
cmp ebp, 0x20
ja 0x40b438
mov ebx, ecx
mov eax, dword [esp + 0x64]
cmp eax, dword [esp + 0x6c]
jae 0x40b3e0
mov edx, dword [esp + 0x68]
mov ecx, eax
sub ecx, edx
je 0x40b3f8
mov esi, ebp
shr esi, 3
mov edi, eax
sub edi, esi
cmp edi, edx
cmovb esi, ecx
sub eax, esi
mov dword [esp + 0x64], eax
shl esi, 3
sub ebp, esi
jmp 0x40b3ee
test esi, esi
je 0x40b3d0
mov eax, dword [esp + 0x88]
mov dword [esp + 4], eax
jmp 0x40b45d
mov ecx, dword [esp + eax*4 + 0x88]
cmp ecx, 1
adc ecx, 0
cmp eax, 1
je 0x40b371
mov eax, dword [esp + 0x8c]
mov dword [esp + 0x90], eax
mov eax, dword [esp + 0x88]
mov dword [esp + 0x8c], eax
mov eax, ecx
mov dword [esp + 4], ecx
mov dword [esp + 0x88], ecx
jmp 0x40b45d
mov ebx, dword [esp + 0x64]
cmp ebx, dword [esp + 0x6c]
jae 0x40b3fc
mov esi, dword [esp + 0x68]
mov eax, ebx
sub eax, esi
je 0x40b293
mov edi, esi
mov esi, edx
shr esi, 3
mov dword [esp + 0x4c], eax
mov eax, ecx
mov ecx, ebx
sub ecx, esi
cmp ecx, edi
mov ecx, eax
cmovb esi, dword [esp + 0x4c]
sub ebx, esi
mov dword [esp + 0x64], ebx
shl esi, 3
sub edx, esi
jmp 0x40b40a
mov eax, dword [esp + 0x88]
mov ecx, dword [esp + 0x8c]
jmp 0x40b378
mov ecx, ebp
shr ecx, 3
sub eax, ecx
mov dword [esp + 0x64], eax
and ebp, 7
mov dword [esp + 0x60], ebp
mov eax, dword [eax]
mov dword [esp + 0x5c], eax
mov ecx, ebx
jmp 0x40b438
mov esi, edx
shr esi, 3
sub ebx, esi
mov dword [esp + 0x64], ebx
and edx, 7
mov eax, dword [esp + 0x1c]
mov dword [esp + 0x60], edx
mov edi, dword [ebx]
mov dword [esp + 0x5c], edi
add ecx, dword [esp + 4]
cmp ebp, eax
jbe 0x40b436
mov esi, ecx
mov ecx, edx
shl edi, cl
mov eax, dword [esp + 0x50]
mov ecx, eax
neg cl
shr edi, cl
mov ecx, esi
add edx, eax
add ecx, edi
mov ebp, edx
movsd xmm0, qword [esp + 0x88]
movsd qword [esp + 0x8c], xmm0
mov eax, ecx
mov dword [esp + 4], ecx
mov dword [esp + 0x88], ecx
mov ebx, ebp
mov ebp, dword [esp + 0xc]
mov eax, ebp
mov ecx, dword [esp + 0x10]
shld eax, ecx, 0x10
shr ecx, 0x10
movzx esi, al
test cl, cl
je 0x40b483
mov edx, dword [esp + 0x5c]
mov ecx, ebx
shl edx, cl
neg al
mov ecx, eax
shr edx, cl
add ebx, esi
add ebp, edx
mov dword [esp + 0xc], ebp
mov edx, dword [esp + 8]
mov ebp, dword [esp]
shld edx, ebp, 0x10
movzx eax, dl
add esi, eax
cmp esi, 0x14
jb 0x40b4f8
cmp ebx, 0x20
ja 0x40b4f8
mov edi, dword [esp + 0x64]
cmp edi, dword [esp + 0x6c]
jae 0x40b4e0
mov ecx, dword [esp + 0x68]
mov esi, edi
sub esi, ecx
je 0x40b4f8
mov ebp, ebx
shr ebp, 3
mov dword [esp + 0x1c], ecx
mov ecx, edi
sub ecx, ebp
cmp ecx, dword [esp + 0x1c]
cmovb ebp, esi
sub edi, ebp
mov dword [esp + 0x64], edi
shl ebp, 3
sub ebx, ebp
mov ebp, dword [esp]
jmp 0x40b4ee
mov esi, ebx
shr esi, 3
sub edi, esi
mov dword [esp + 0x64], edi
and ebx, 7
mov dword [esp + 0x60], ebx
mov ecx, dword [edi]
mov dword [esp + 0x5c], ecx
mov ecx, ebp
shr ecx, 0x10
test cl, cl
je 0x40b520
mov esi, dword [esp + 0x5c]
mov ecx, ebx
shl esi, cl
neg dl
mov ecx, edx
shr esi, cl
add ebx, eax
mov ecx, dword [esp + 8]
add ecx, esi
jmp 0x40b524
mov ecx, dword [esp + 8]
cmp ebx, 0x20
mov dword [esp + 8], ecx
ja 0x40b578
mov eax, dword [esp + 0x64]
cmp eax, dword [esp + 0x6c]
jae 0x40b560
mov edx, dword [esp + 0x68]
mov ecx, eax
sub ecx, edx
je 0x40b578
mov esi, ebx
shr esi, 3
mov edi, eax
sub edi, esi
cmp edi, edx
cmovb esi, ecx
sub eax, esi
mov dword [esp + 0x64], eax
shl esi, 3
sub ebx, esi
jmp 0x40b56e
mov ecx, ebx
shr ecx, 3
sub eax, ecx
mov dword [esp + 0x64], eax
and ebx, 7
mov dword [esp + 0x60], ebx
mov eax, dword [eax]
mov dword [esp + 0x5c], eax
mov edi, ebp
shr edi, 0x18
mov edx, dword [esp + 0x10]
add ebx, edi
mov eax, dword [esp + 0x5c]
mov ecx, ebx
neg cl
mov esi, eax
shr esi, cl
shr edx, 0x18
and esi, dword [edi*4 + 0x420e74]
movzx edi, bp
add ebx, edx
mov ecx, ebx
neg cl
mov ebp, eax
shr ebp, cl
add edi, esi
mov dword [esp + 0x70], edi
and ebp, dword [edx*4 + 0x420e74]
movzx ecx, word [esp + 0x10]
add ecx, ebp
mov dword [esp + 0x80], ecx
cmp ebx, 0x20
jbe 0x40b5e0
mov edi, dword [esp + 0x20]
mov esi, dword [esp + 8]
mov ebp, dword [esp + 0x38]
jmp 0x40b644
mov ecx, dword [esp + 0x64]
cmp ecx, dword [esp + 0x6c]
jae 0x40b620
mov esi, dword [esp + 0x68]
mov edx, ecx
sub edx, esi
mov ebp, dword [esp + 0x38]
je 0x40b8c5
mov eax, ebx
shr eax, 3
mov edi, ecx
sub edi, eax
cmp edi, esi
cmovb eax, edx
sub ecx, eax
mov dword [esp + 0x64], ecx
shl eax, 3
sub ebx, eax
mov edi, dword [esp + 0x20]
jmp 0x40b636
mov eax, ebx
shr eax, 3
sub ecx, eax
mov dword [esp + 0x64], ecx
and ebx, 7
mov edi, dword [esp + 0x20]
mov ebp, dword [esp + 0x38]
mov dword [esp + 0x60], ebx
mov eax, dword [ecx]
mov dword [esp + 0x5c], eax
mov esi, dword [esp + 8]
mov edx, ebp
shr edx, 0x18
add ebx, edx
mov ecx, ebx
neg cl
shr eax, cl
and eax, dword [edx*4 + 0x420e74]
mov dword [esp + 0x60], ebx
movzx ecx, bp
add ecx, eax
mov dword [esp + 0x78], ecx
mov ebx, dword [esp + 0x58]
lea eax, [ebx + esi]
mov dword [esp + 0x10], eax
cmp eax, edi
mov ecx, dword [esp + 0x24]
ja 0x40b698
mov eax, dword [esp + 0xc]
add eax, esi
lea edx, [ecx + eax]
cmp edx, dword [esp + 0x54]
ja 0x40b698
mov edx, dword [esp + 0x28]
sub edx, ecx
mov ebp, esi
lea esi, [eax + 0x20]
cmp edx, esi
mov esi, ebp
jae 0x40b710
mov edx, dword [esp + 0x28]
push dword [esp + 0x3c]
push dword [esp + 0x44]
push dword [esp + 0x1c]
push edi
lea eax, [esp + 0x68]
push eax
push dword [esp + 0x18]
push dword [esp + 0x24]
push esi
call fcn.0040cf60
add esp, 0x20
mov ebx, dword [esp + 0x60]
cmp ebx, 0x20
ja 0x40b848
mov ecx, dword [esp + 0x64]
cmp ecx, dword [esp + 0x6c]
jae 0x40b830
mov esi, dword [esp + 0x68]
mov edx, ecx
sub edx, esi
je 0x40b848
mov edi, ebx
shr edi, 3
mov ebp, ecx
sub ebp, edi
cmp ebp, esi
cmovb edi, edx
sub ecx, edi
mov dword [esp + 0x64], ecx
shl edi, 3
sub ebx, edi
jmp 0x40b83e
mov dword [esp], eax
lea ebp, [ecx + esi]
movups xmm0, xmmword [ebx]
movups xmmword [ecx], xmm0
cmp esi, 0x11
jb 0x40b75f
add esi, 0xfffffff0
movups xmm0, xmmword [ebx + 0x10]
movups xmmword [ecx + 0x10], xmm0
cmp esi, 0x11
jl 0x40b75f
lea edx, [ecx + 0x20]
add ebx, 0x30
xor esi, esi
nop dword [eax]
movups xmm0, xmmword [ebx + esi - 0x10]
movups xmmword [edx + esi], xmm0
movups xmm0, xmmword [ebx + esi]
movups xmmword [edx + esi + 0x10], xmm0
lea edi, [edx + esi]
add edi, 0x20
add esi, 0x20
cmp edi, ebp
jb 0x40b740
mov edi, ebp
mov ecx, dword [esp + 4]
sub edi, ecx
mov eax, dword [esp + 0x10]
mov dword [esp + 0x58], eax
mov ebx, ebp
sub ebx, dword [esp + 0x14]
cmp ebx, ecx
jae 0x40b877
mov ecx, ebp
sub ecx, dword [esp + 0x40]
mov eax, 0xffffffec
cmp ecx, dword [esp + 4]
jb 0x40b6bf
sub edi, dword [esp + 0x14]
mov edx, dword [esp + 0x3c]
lea eax, [edx + edi]
mov esi, dword [esp + 0xc]
lea ecx, [eax + esi]
cmp ecx, edx
jbe 0x40b9a9
mov ecx, edi
neg ecx
push ecx
push eax
push ebp
call fcn.0040e830
add esp, 0xc
sub ebp, edi
mov eax, edi
add eax, esi
mov edi, dword [esp + 0x14]
mov ecx, dword [esp + 4]
cmp ecx, 0x10
jae 0x40b884
cmp ecx, 7
ja 0x40b8ce
movzx ecx, byte [edi]
mov byte [ebp], cl
movzx ecx, byte [edi + 1]
mov byte [ebp + 1], cl
movzx ecx, byte [edi + 2]
mov byte [ebp + 2], cl
movzx ecx, byte [edi + 3]
mov byte [ebp + 3], cl
mov ecx, dword [esp + 4]
mov ecx, dword [ecx*4 + 0x420f14]
mov edx, dword [edi + ecx]
add edi, ecx
mov dword [ebp + 4], edx
mov ecx, dword [esp + 4]
sub edi, dword [ecx*4 + str._b_b_b_a_b_t_n_v]
cmp eax, 9
jae 0x40b8e0
jmp 0x40b9f0
mov edx, ebx
shr edx, 3
sub ecx, edx
mov dword [esp + 0x64], ecx
and ebx, 7
mov dword [esp + 0x60], ebx
mov ecx, dword [ecx]
mov dword [esp + 0x5c], ecx
mov ebp, dword [esp + 0x2c]
add dword [esp + 0x24], eax
mov edx, dword [esp + 0x30]
lea ecx, [edx - 1]
cmp eax, 0xffffff89
cmovae ebp, eax
cmovb edx, ecx
mov dword [esp + 0x30], edx
jae 0x40ba17
test ecx, ecx
jne 0x40b1e0
jmp 0x40ba17
mov eax, dword [esp + 0xc]
cmp ecx, 0x10
jb 0x40b7d2
movups xmm0, xmmword [edi]
movups xmmword [ebp], xmm0
cmp eax, 0x11
jl 0x40b9f0
add eax, ebp
add edi, 0x10
mov ecx, 0x10
nop
movups xmm0, xmmword [edi + ecx - 0x10]
movups xmmword [ebp + ecx], xmm0
movups xmm0, xmmword [edi + ecx]
movups xmmword [ebp + ecx + 0x10], xmm0
lea edx, [ecx + ebp]
add edx, 0x20
add ecx, 0x20
cmp edx, eax
jb 0x40b8a0
jmp 0x40b9f0
mov edi, dword [esp + 0x20]
jmp 0x40b640
movsd xmm0, qword [edi]
movsd qword [ebp], xmm0
cmp eax, 9
jb 0x40b9f0
lea edx, [edi + 8]
lea ecx, [ebp + 8]
mov esi, ecx
sub esi, edx
mov dword [esp + 8], esi
lea esi, [eax + ebp]
mov dword [esp + 0x10], esi
mov esi, dword [esp + 8]
cmp esi, 0xf
jg 0x40b9b6
mov eax, dword [esp + 0xc]
add eax, dword [esp + 0x14]
mov dword [esp + 0xc], eax
mov ebp, dword [esp + 4]
cmp ebp, ebx
mov eax, ebx
cmovb eax, ebp
cmova ebx, ebp
add eax, dword [esp + 0xc]
add eax, ebx
sub eax, ebp
mov ebp, dword [esp + 0x48]
add ebp, ebx
cmp eax, ebp
cmovbe eax, ebp
mov ebp, dword [esp + 0x14]
add ebp, ebx
sub eax, ebp
add eax, 0xfffffff7
cmp eax, 0x18
jb 0x40b9f8
cmp esi, 0x20
jb 0x40b9f8
shr eax, 3
inc eax
mov dword [esp + 8], eax
mov esi, eax
and esi, 0xfffffffc
lea ecx, [ecx + esi*8]
lea edx, [edx + esi*8]
mov ebp, dword [esp + 0x44]
mov eax, dword [esp + 0x24]
add ebp, eax
sub ebx, dword [esp + 0x24]
add ebx, ebp
xor ebp, ebp
nop word cs:[eax + eax]
movups xmm0, xmmword [edi + ebp*8 + 8]
movups xmm1, xmmword [edi + ebp*8 + 0x18]
movups xmmword [ebx + ebp*8 - 0x10], xmm0
movups xmmword [ebx + ebp*8], xmm1
add ebp, 4
cmp esi, ebp
jne 0x40b980
cmp dword [esp + 8], esi
mov eax, dword [esp]
je 0x40b6bf
jmp 0x40b9fb
push esi
push eax
push ebp
call fcn.0040e830
add esp, 0xc
jmp 0x40b9f0
movups xmm0, xmmword [edx]
movups xmmword [ecx], xmm0
cmp eax, 0x19
jl 0x40b9f0
add ebp, 0x18
add edi, 0x28
xor eax, eax
mov edx, dword [esp + 0x10]
nop dword [eax]
movups xmm0, xmmword [edi + eax - 0x10]
movups xmmword [ebp + eax], xmm0
movups xmm0, xmmword [edi + eax]
movups xmmword [ebp + eax + 0x10], xmm0
lea ecx, [eax + ebp]
add ecx, 0x20
add eax, 0x20
cmp ecx, edx
jb 0x40b9d0
mov eax, dword [esp]
jmp 0x40b6bf
mov eax, dword [esp]
mov esi, dword [esp + 0x10]
nop
movsd xmm0, qword [edx]
movsd qword [ecx], xmm0
add ecx, 8
add edx, 8
cmp ecx, esi
jb 0x40ba00
jmp 0x40b6bf
cmp ebp, 0xffffff88
ja 0x40ba28
cmp dword [esp + 0x30], 0
je 0x40ba43
mov ebp, 0xffffffec
mov ecx, dword [esp + 0xa0]
xor ecx, esp
call fcn.0040d9a4
mov eax, ebp
add esp, 0xa4
pop esi
pop edi
pop ebx
pop ebp
ret
cmp ebx, 0x20
ja 0x40ba5f
jne 0x40ba23
mov eax, dword [esp + 0x64]
cmp eax, dword [esp + 0x6c]
jae 0x40ba23
mov ebp, 0xffffffec
cmp eax, dword [esp + 0x68]
jne 0x40ba28
lea edx, [esp + 0x88]
mov eax, dword [edx + 8]
mov ecx, dword [esp + 0x18]
mov dword [ecx + 8], eax
movsd xmm0, qword [edx]
movsd qword [ecx], xmm0
mov eax, dword [esp + 0x58]
mov esi, dword [esp + 0x34]
mov edi, dword [esp + 0x20]
mov ebx, dword [esp + 0x24]
jmp 0x40af9b
xor eax, eax
jmp 0x40b0ab
xor eax, eax
jmp 0x40b133