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

Disassembly:
push ebp
push ebx
push edi
push esi
sub esp, 0x9c
mov eax, dword [esp + 0xbc]
mov dword [esp + 0x74], eax
cmp dword [ecx + 0x7610], 0
mov dword [esp + 0x64], edx
je 0x4d380e
mov eax, dword [ecx + 0x7608]
mov dword [esp + 0x54], eax
jmp 0x4d3822
mov eax, dword [esp + 0xb0]
xor esi, esi
test eax, eax
cmovg esi, eax
add esi, edx
mov dword [esp + 0x54], esi
mov edx, ecx
mov edi, dword [ecx + 0x7578]
mov dword [esp + 0x5c], edi
mov ecx, dword [ecx + 0x7588]
add ecx, edi
mov dword [esp + 0x68], ecx
cmp dword [esp + 0xbc], 0
je 0x4d38f8
mov ebp, dword [esp + 0xb8]
mov ecx, dword [edx + 0x74b0]
mov eax, dword [edx + 0x74b4]
mov dword [esp + 0x70], eax
mov eax, dword [edx + 0x74b8]
mov dword [esp + 0x6c], eax
mov dword [edx + 0x750c], 1
mov eax, dword [edx + 0x6834]
mov dword [esp + 0x48], eax
movsd xmm0, qword [edx + 0x682c]
movsd qword [esp + 0x40], xmm0
test ebp, ebp
je 0x4d3935
mov dword [esp + 0x60], 0xffffffec
mov esi, dword [esp + 0xb4]
mov dword [esp + 0x20], esi
lea edi, [esi + 4]
mov dword [esp + 0x24], edi
cmp ebp, 4
mov dword [esp + 0x50], ecx
jb 0x4d3942
lea ecx, [esi + ebp]
add ecx, 0xfffffffc
mov dword [esp + 0x1c], ecx
mov eax, dword [esi + ebp - 4]
mov dword [esp + 0x14], eax
cmp eax, 0x1000000
jb 0x4d43e3
cmp ebp, 0xffffff88
ja 0x4d43e3
mov dword [esp], edi
add ebp, 0xfffffffc
mov ecx, eax
shr ecx, 0x18
bsr ebx, ecx
not ebx
add ebx, 9
jmp 0x4d398d
mov ebp, dword [esp + 0x64]
mov edx, dword [esp + 0x68]
sub edx, edi
mov esi, dword [esp + 0x54]
sub esi, ebp
mov eax, 0xffffffba
cmp edx, esi
ja 0x4d43ef
test ebp, ebp
je 0x4d43e9
mov ecx, edx
mov esi, edx
push ecx
push edi
push ebp
call fcn.004f8d80
add esp, 0xc
add ebp, esi
mov eax, ebp
jmp 0x4d43eb
mov dword [esp + 0x60], 0xffffffec
jmp 0x4d43e3
mov dword [esp + 0x1c], esi
movzx eax, byte [esi]
mov dword [esp + 0x14], eax
cmp ebp, 2
je 0x4d3960
cmp ebp, 3
jne 0x4d396d
movzx ecx, byte [esi + 2]
shl ecx, 0x10
or eax, ecx
movzx ecx, byte [esi + 1]
shl ecx, 8
add eax, ecx
mov dword [esp + 0x14], eax
movzx ecx, byte [esi + ebp - 1]
test ecx, ecx
je 0x4d43e3
mov dword [esp], edi
bsr ebx, ecx
xor ebx, 0x1f
shl ebp, 3
sub ebx, ebp
add ebx, 9
xor ebp, ebp
mov dword [esp + 0x58], edx
mov edx, dword [edx]
mov edi, dword [edx + 4]
add ebx, edi
mov ecx, ebx
neg cl
mov esi, eax
shr esi, cl
and esi, dword [edi*4 + 0x851948]
mov dword [esp + 0x28], esi
cmp ebx, 0x21
jae 0x4d4406
mov ecx, dword [esp + 0xb4]
lea edi, [ecx + ebp]
cmp ebp, 4
jge 0x4d39eb
test ebp, ebp
je 0x4d43fa
mov eax, ebx
shr eax, 3
mov ecx, edi
sub ecx, eax
cmp ecx, dword [esp + 0xb4]
cmovb eax, ebp
sub edi, eax
mov dword [esp + 0x1c], edi
shl eax, 3
sub ebx, eax
jmp 0x4d39f9
mov eax, ebx
shr eax, 3
sub edi, eax
mov dword [esp + 0x1c], edi
and ebx, 7
mov dword [esp + 0x18], ebx
mov eax, dword [edi]
mov dword [esp + 0x14], eax
add edx, 8
mov dword [esp + 0x2c], edx
mov ecx, dword [esp + 0x58]
mov edx, dword [ecx + 8]
mov esi, dword [edx + 4]
add ebx, esi
mov ecx, ebx
neg cl
mov ebp, eax
shr ebp, cl
and ebp, dword [esi*4 + 0x851948]
mov dword [esp + 0x30], ebp
cmp ebx, 0x21
jae 0x4d4418
cmp edi, dword [esp]
jae 0x4d3a5f
mov ecx, edi
mov ebp, dword [esp + 0xb4]
sub ecx, ebp
je 0x4d3a73
mov eax, ebx
shr eax, 3
mov esi, edi
sub esi, eax
cmp esi, ebp
cmovb eax, ecx
sub edi, eax
mov dword [esp + 0x1c], edi
shl eax, 3
sub ebx, eax
jmp 0x4d3a6d
mov eax, ebx
shr eax, 3
sub edi, eax
mov dword [esp + 0x1c], edi
and ebx, 7
mov eax, dword [edi]
mov dword [esp + 0x14], eax
add edx, 8
mov dword [esp + 0x34], edx
mov ecx, dword [esp + 0x58]
mov edx, dword [ecx + 4]
mov esi, dword [edx + 4]
add ebx, esi
mov ecx, ebx
neg cl
shr eax, cl
and eax, dword [esi*4 + 0x851948]
mov dword [esp + 0x18], ebx
mov dword [esp + 0x38], eax
cmp ebx, 0x21
jae 0x4d442a
cmp edi, dword [esp]
jae 0x4d3ad1
mov ecx, edi
mov ebp, dword [esp + 0xb4]
sub ecx, ebp
je 0x4d3ae9
mov eax, ebx
shr eax, 3
mov esi, edi
sub esi, eax
cmp esi, ebp
cmovb eax, ecx
sub edi, eax
mov dword [esp + 0x1c], edi
shl eax, 3
sub ebx, eax
jmp 0x4d3adf
mov eax, ebx
shr eax, 3
sub edi, eax
mov dword [esp + 0x1c], edi
and ebx, 7
mov dword [esp + 0x18], ebx
mov eax, dword [edi]
mov dword [esp + 0x14], eax
add dword [esp + 0x58], 0x682c
add edx, 8
mov dword [esp + 0x3c], edx
mov eax, dword [esp + 0x54]
add eax, 0xffffffe0
mov dword [esp + 0x80], eax
mov eax, dword [esp + 0x50]
lea ecx, [eax + 0x10]
mov dword [esp + 0x7c], ecx
add eax, 0x18
mov dword [esp + 0x78], eax
mov ebp, dword [esp + 0x64]
nop dword [eax]
mov edx, dword [esp + 0x28]
mov edi, dword [esp + 0x2c]
mov eax, dword [esp + 0x3c]
mov ecx, dword [esp + 0x38]
mov esi, dword [edi + edx*8 + 4]
movzx ebx, byte [edi + edx*8 + 2]
mov dword [esp + 0x10], ebx
movzx ebx, word [edi + edx*8]
mov dword [esp + 0x90], ebx
movzx edx, byte [edi + edx*8 + 3]
mov dword [esp + 0x84], edx
mov edi, dword [eax + ecx*8 + 4]
movzx edx, byte [eax + ecx*8 + 2]
mov dword [esp + 4], edx
movzx edx, word [eax + ecx*8]
mov dword [esp + 0x8c], edx
movzx eax, byte [eax + ecx*8 + 3]
mov dword [esp + 0x88], eax
mov eax, dword [esp + 0x34]
mov ecx, dword [esp + 0x30]
mov edx, dword [eax + ecx*8 + 4]
mov dword [esp + 0x4c], edx
movzx edx, byte [eax + ecx*8 + 2]
movzx ebx, word [eax + ecx*8]
mov dword [esp + 0x98], ebx
movzx eax, byte [eax + ecx*8 + 3]
mov dword [esp + 0x94], eax
cmp edx, 2
mov dword [esp], ebp
jb 0x4d3c40
cmp dword [esp + 0xc0], 0
je 0x4d3c70
cmp dl, 0x19
jb 0x4d3c70
mov ebx, dword [esp + 0x14]
mov eax, dword [esp + 0x18]
mov dword [esp + 8], ebx
mov ecx, eax
shl ebx, cl
mov cl, 5
sub cl, dl
shr ebx, cl
lea ecx, [edx + eax]
add ecx, 0xfffffffb
cmp ecx, 0x21
jae 0x4d4339
mov ebp, dword [esp + 0x1c]
cmp ebp, dword [esp + 0x24]
jae 0x4d3d09
mov eax, dword [esp + 0x20]
mov edx, ebp
sub edx, eax
je 0x4d40dc
mov dword [esp + 0xc], edi
mov edi, ecx
shr edi, 3
mov dword [esp + 8], eax
mov eax, ebp
sub eax, edi
cmp eax, dword [esp + 8]
cmovb edi, edx
sub ebp, edi
mov dword [esp + 0x1c], ebp
shl edi, 3
sub ecx, edi
mov edi, dword [esp + 0xc]
jmp 0x4d3d17
xor eax, eax
test esi, esi
sete al
test edx, edx
jne 0x4d4196
xor ecx, ecx
test esi, esi
setne cl
mov edx, dword [esp + eax*4 + 0x40]
lea eax, [esp + 0x40]
lea ecx, [eax + ecx*4]
mov ebx, dword [esp + 0x10]
jmp 0x4d3d4a
mov ebx, dword [esp + 0x14]
mov eax, dword [esp + 0x18]
mov ecx, eax
shl ebx, cl
mov ecx, edx
neg cl
shr ebx, cl
add eax, edx
mov edx, ebx
mov dword [esp + 0x18], eax
add edx, dword [esp + 0x4c]
cmp eax, 0x21
jae 0x4d430a
mov dword [esp + 8], edx
mov ecx, dword [esp + 0x1c]
cmp ecx, dword [esp + 0x24]
mov ebx, dword [esp + 0x10]
jae 0x4d3ceb
mov dword [esp + 0xc], edi
mov edi, dword [esp + 0x20]
mov edx, ecx
sub edx, edi
je 0x4d3ce1
mov ebx, eax
shr ebx, 3
mov ebp, ecx
sub ebp, ebx
cmp ebp, edi
mov ebp, dword [esp]
cmovb ebx, edx
sub ecx, ebx
mov dword [esp + 0x1c], ecx
shl ebx, 3
sub eax, ebx
mov ebx, dword [esp + 0x10]
mov dword [esp + 0x18], eax
mov eax, dword [ecx]
mov dword [esp + 0x14], eax
mov edi, dword [esp + 0xc]
mov edx, dword [esp + 8]
jmp 0x4d3d3e
mov edx, eax
shr edx, 3
sub ecx, edx
mov dword [esp + 0x1c], ecx
and eax, 7
mov dword [esp + 0x18], eax
mov eax, dword [ecx]
mov dword [esp + 0x14], eax
mov edx, dword [esp + 8]
jmp 0x4d3d3e
mov edx, ecx
shr edx, 3
sub ebp, edx
mov dword [esp + 0x1c], ebp
and ecx, 7
mov dword [esp + 0x18], ecx
mov edx, dword [ebp]
mov dword [esp + 0x14], edx
mov ebp, dword [esp]
shl ebx, 5
add ebx, dword [esp + 0x4c]
shl edx, cl
shr edx, 0x1b
add edx, ebx
add ecx, 5
mov dword [esp + 0x18], ecx
mov ebx, dword [esp + 0x10]
mov eax, dword [esp + 0x44]
mov dword [esp + 0x48], eax
lea ecx, [esp + 0x40]
mov eax, dword [ecx]
mov dword [esp + 0x44], eax
mov dword [esp + 8], edx
mov dword [esp + 0x40], edx
mov ecx, dword [esp + 4]
test ecx, ecx
je 0x4d3d80
mov edx, dword [esp + 0x14]
mov eax, dword [esp + 0x18]
mov ecx, eax
shl edx, cl
mov ecx, dword [esp + 4]
neg cl
shr edx, cl
mov ecx, dword [esp + 4]
add eax, ecx
mov dword [esp + 0x18], eax
add edi, edx
mov dword [esp + 0xc], edi
add ecx, ebx
cmp ecx, 0x14
jb 0x4d3de8
mov eax, dword [esp + 0x18]
cmp eax, 0x21
jae 0x4d41d3
mov ecx, dword [esp + 0x1c]
cmp ecx, dword [esp + 0x24]
jae 0x4d3dd0
mov edi, dword [esp + 0x20]
mov edx, ecx
sub edx, edi
je 0x4d3de8
mov ebx, eax
shr ebx, 3
mov ebp, ecx
sub ebp, ebx
cmp ebp, edi
mov ebp, dword [esp]
cmovb ebx, edx
sub ecx, ebx
mov dword [esp + 0x1c], ecx
shl ebx, 3
sub eax, ebx
mov ebx, dword [esp + 0x10]
jmp 0x4d3dde
mov edx, eax
shr edx, 3
sub ecx, edx
mov dword [esp + 0x1c], ecx
and eax, 7
mov dword [esp + 0x18], eax
mov eax, dword [ecx]
mov dword [esp + 0x14], eax
test ebx, ebx
je 0x4d41f0
mov edx, dword [esp + 0x14]
mov eax, dword [esp + 0x18]
mov ecx, eax
shl edx, cl
mov ecx, ebx
neg cl
shr edx, cl
add eax, ebx
mov dword [esp + 0x18], eax
add esi, edx
cmp eax, 0x21
jae 0x4d41fd
mov edx, dword [esp + 0x1c]
cmp edx, dword [esp + 0x24]
jae 0x4d3e50
mov edi, dword [esp + 0x20]
mov ecx, edx
sub ecx, edi
je 0x4d3e68
mov ebx, eax
shr ebx, 3
mov ebp, edx
sub ebp, ebx
cmp ebp, edi
mov ebp, dword [esp]
cmovb ebx, ecx
sub edx, ebx
mov dword [esp + 0x1c], edx
shl ebx, 3
sub eax, ebx
jmp 0x4d3e5e
mov ecx, eax
shr ecx, 3
sub edx, ecx
mov dword [esp + 0x1c], edx
and eax, 7
mov dword [esp + 0x18], eax
mov ecx, dword [edx]
mov dword [esp + 0x14], ecx
cmp dword [esp + 0x74], 1
je 0x4d3f98
mov dword [esp + 4], esi
mov edi, dword [esp + 0x14]
mov esi, dword [esp + 0x84]
add eax, esi
mov ecx, eax
neg cl
mov ebx, edi
shr ebx, cl
and ebx, dword [esi*4 + 0x851948]
mov esi, dword [esp + 0x88]
add eax, esi
mov ecx, eax
neg cl
mov ebp, edi
shr ebp, cl
add ebx, dword [esp + 0x90]
and ebp, dword [esi*4 + 0x851948]
mov dword [esp + 0x28], ebx
add ebp, dword [esp + 0x8c]
mov dword [esp + 0x38], ebp
cmp eax, 0x21
jae 0x4d421a
cmp edx, dword [esp + 0x24]
mov esi, dword [esp + 4]
jae 0x4d3f00
mov ebx, dword [esp + 0x20]
mov ecx, edx
sub ecx, ebx
je 0x4d3f18
mov edi, eax
shr edi, 3
mov ebp, edx
sub ebp, edi
cmp ebp, ebx
cmovb edi, ecx
sub edx, edi
mov dword [esp + 0x1c], edx
shl edi, 3
sub eax, edi
jmp 0x4d3f0e
mov ecx, eax
shr ecx, 3
sub edx, ecx
mov dword [esp + 0x1c], edx
and eax, 7
mov dword [esp + 0x18], eax
mov edi, dword [edx]
mov dword [esp + 0x14], edi
mov ebx, dword [esp + 0x94]
add eax, ebx
mov ecx, eax
neg cl
shr edi, cl
and edi, dword [ebx*4 + 0x851948]
add edi, dword [esp + 0x98]
mov dword [esp + 0x18], eax
mov dword [esp + 0x30], edi
cmp eax, 0x21
mov ebp, dword [esp]
jae 0x4d4230
cmp edx, dword [esp + 0x24]
jae 0x4d3f80
mov edi, dword [esp + 0x20]
mov ecx, edx
sub ecx, edi
je 0x4d3f98
mov ebx, eax
shr ebx, 3
mov ebp, edx
sub ebp, ebx
cmp ebp, edi
mov ebp, dword [esp]
cmovb ebx, ecx
sub edx, ebx
mov dword [esp + 0x1c], edx
shl ebx, 3
sub eax, ebx
jmp 0x4d3f8e
mov ecx, eax
shr ecx, 3
sub edx, ecx
mov dword [esp + 0x1c], edx
and eax, 7
mov dword [esp + 0x18], eax
mov eax, dword [edx]
mov dword [esp + 0x14], eax
mov ecx, dword [esp + 0x5c]
lea eax, [ecx + esi]
cmp eax, dword [esp + 0x68]
ja 0x4d40e8
mov edx, dword [esp + 0xc]
lea ebx, [esi + edx]
lea edx, [ebx + ebp]
cmp edx, dword [esp + 0x80]
ja 0x4d40e8
mov edx, dword [esp + 0x54]
sub edx, ebp
lea edi, [ebx + 0x20]
cmp edx, edi
jb 0x4d40e8
mov dword [esp + 4], ebx
lea ebx, [esi + ebp]
movups xmm0, xmmword [ecx]
movups xmmword [ebp], xmm0
cmp esi, 0x11
jae 0x4d4116
mov esi, ebx
mov edx, dword [esp + 8]
sub esi, edx
mov dword [esp + 0x5c], eax
mov edi, ebx
mov ebp, dword [esp + 0x50]
sub edi, ebp
cmp edi, edx
jae 0x4d4050
mov eax, ebx
sub eax, dword [esp + 0x70]
cmp eax, edx
jb 0x4d43e3
mov dword [esp + 0x10], edi
sub esi, ebp
mov edx, dword [esp + 0x6c]
lea eax, [edx + esi]
mov edi, dword [esp + 0xc]
lea ecx, [eax + edi]
cmp ecx, edx
jbe 0x4d40b0
mov ecx, esi
neg ecx
push ecx
push eax
push ebx
call fcn.004f8d88
add esp, 0xc
sub ebx, esi
mov eax, esi
add eax, edi
mov esi, ebp
mov edx, dword [esp + 8]
mov edi, dword [esp + 0x10]
jmp 0x4d4054
mov eax, dword [esp + 0xc]
cmp edx, 0x10
jb 0x4d4154
movups xmm0, xmmword [esi]
movups xmmword [ebx], xmm0
cmp eax, 0x11
jl 0x4d40bb
add eax, ebx
mov ecx, 0x10
mov ebp, dword [esp]
nop word cs:[eax + eax]
movups xmm0, xmmword [esi + ecx]
movups xmmword [ebx + ecx], xmm0
movups xmm0, xmmword [esi + ecx + 0x10]
movups xmmword [ebx + ecx + 0x10], xmm0
lea edx, [ebx + ecx]
add edx, 0x20
add ecx, 0x20
cmp edx, eax
jb 0x4d4080
jmp 0x4d40be
push edi
push eax
push ebx
call fcn.004f8d88
add esp, 0xc
mov ebp, dword [esp]
mov eax, dword [esp + 4]
cmp eax, 0xffffff88
ja 0x4d43a9
add ebp, eax
dec dword [esp + 0x74]
jne 0x4d3b20
jmp 0x4d43b3
mov ebp, dword [esp]
mov edx, dword [esp + 8]
jmp 0x4d3d25
mov ecx, ebp
mov edx, dword [esp + 0x54]
push dword [esp + 0x6c]
push dword [esp + 0x74]
push dword [esp + 0x58]
push dword [esp + 0x74]
lea eax, [esp + 0x6c]
push eax
push dword [esp + 0x1c]
push dword [esp + 0x24]
push esi
call fcn.004d4590
add esp, 0x20
jmp 0x4d40c2
add esi, 0xfffffff0
movups xmm0, xmmword [ecx + 0x10]
movups xmmword [ebp + 0x10], xmm0
cmp esi, 0x11
jl 0x4d3fe8
lea edx, [ebp + 0x20]
xor esi, esi
movups xmm0, xmmword [ecx + esi + 0x20]
movups xmmword [edx + esi], xmm0
movups xmm0, xmmword [ecx + esi + 0x30]
movups xmmword [edx + esi + 0x10], xmm0
lea edi, [edx + esi]
add edi, 0x20
add esi, 0x20
cmp edi, ebx
jb 0x4d412f
jmp 0x4d3fe8
cmp edx, 7
ja 0x4d423d
movzx ecx, byte [esi]
mov byte [ebx], cl
movzx ecx, byte [esi + 1]
mov byte [ebx + 1], cl
movzx ecx, byte [esi + 2]
mov byte [ebx + 2], cl
movzx ecx, byte [esi + 3]
mov byte [ebx + 3], cl
mov ecx, dword [edx*4 + 0x8519cc]
mov edx, dword [esi + ecx]
add esi, ecx
mov dword [ebx + 4], edx
mov ecx, dword [esp + 8]
sub esi, dword [ecx*4 + 0x8519ec]
jmp 0x4d4245
mov edx, dword [esp + 0x4c]
add edx, eax
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
shl eax, cl
shr eax, 0x1f
inc ecx
mov dword [esp + 0x18], ecx
add eax, edx
cmp eax, 3
mov ebx, dword [esp + 0x10]
jne 0x4d4317
mov eax, dword [esp + 0x40]
dec eax
cmp eax, 1
mov edx, 0
sbb edx, edx
or edx, eax
jmp 0x4d3d3e
mov dword [esp + 0x1c], 0x8519c8
test ebx, ebx
jne 0x4d3df0
nop word cs:[eax + eax]
mov eax, dword [esp + 0x18]
cmp eax, 0x21
jb 0x4d3e13
mov dword [esp + 0x1c], 0x8519c8
mov edx, 0x8519c8
cmp dword [esp + 0x74], 1
jne 0x4d3e73
jmp 0x4d3f98
mov dword [esp + 0x1c], 0x8519c8
mov edx, 0x8519c8
mov esi, dword [esp + 4]
jmp 0x4d3f18
mov dword [esp + 0x1c], 0x8519c8
jmp 0x4d3f98
movsd xmm0, qword [esi]
movsd qword [ebx], xmm0
mov ebp, dword [esp]
cmp eax, 9
jb 0x4d40be
lea ecx, [esi + 8]
mov dword [esp], ecx
lea ecx, [ebx + 8]
mov edx, ecx
sub edx, dword [esp]
mov dword [esp + 0x10], edx
lea edx, [ebx + eax]
mov dword [esp + 0x4c], edx
cmp dword [esp + 0x10], 0xf
jg 0x4d434a
mov ebx, dword [esp + 0xc]
add ebx, dword [esp + 0x50]
mov eax, dword [esp + 8]
cmp eax, edi
mov edx, edi
cmovb edx, eax
cmova edi, eax
add edx, ebx
mov ebx, edx
add ebx, edi
sub ebx, eax
mov eax, dword [esp + 0x7c]
add eax, edi
cmp ebx, eax
cmovbe ebx, eax
mov eax, dword [esp + 0x50]
add eax, edi
sub ebx, eax
add ebx, 0xfffffff7
cmp ebx, 0x18
mov edx, dword [esp]
jb 0x4d438a
cmp dword [esp + 0x10], 0x20
jb 0x4d438a
shr ebx, 3
inc ebx
mov dword [esp + 0xc], ebx
and ebx, 0xfffffffc
lea ecx, [ecx + ebx*8]
lea edx, [edx + ebx*8]
mov eax, dword [esp + 0x78]
add eax, ebp
sub edi, ebp
add edi, eax
xor eax, eax
movups xmm0, xmmword [esi + eax*8 + 8]
movups xmm1, xmmword [esi + eax*8 + 0x18]
movups xmmword [edi + eax*8 - 0x10], xmm0
movups xmmword [edi + eax*8], xmm1
add eax, 4
cmp ebx, eax
jne 0x4d42dd
cmp dword [esp + 0xc], ebx
mov eax, dword [esp + 4]
je 0x4d40c2
jmp 0x4d438e
mov dword [esp + 0x1c], 0x8519c8
jmp 0x4d3d3a
mov ecx, dword [esp + eax*4 + 0x40]
cmp ecx, 1
mov edx, 0
sbb edx, edx
or edx, ecx
lea ecx, [esp + 0x40]
cmp eax, 1
jne 0x4d3d3e
jmp 0x4d3d4a
mov dword [esp + 0x1c], 0x8519c8
mov edx, dword [esp + 8]
jmp 0x4d3d25
mov edx, dword [esp]
movups xmm0, xmmword [edx]
movups xmmword [ecx], xmm0
cmp eax, 0x19
jl 0x4d40be
add ebx, 0x18
xor eax, eax
mov edx, dword [esp + 0x4c]
movups xmm0, xmmword [esi + eax + 0x18]
movups xmmword [ebx + eax], xmm0
movups xmm0, xmmword [esi + eax + 0x28]
movups xmmword [ebx + eax + 0x10], xmm0
lea ecx, [ebx + eax]
add ecx, 0x20
add eax, 0x20
cmp ecx, edx
jb 0x4d4365
jmp 0x4d40be
mov eax, dword [esp + 4]
mov esi, dword [esp + 0x4c]
movsd xmm0, qword [edx]
movsd qword [ecx], xmm0
add ecx, 8
add edx, 8
cmp ecx, esi
jb 0x4d4392
jmp 0x4d40c2
mov dword [esp + 0x60], eax
mov eax, dword [esp + 0x60]
jmp 0x4d43ef
mov eax, dword [esp + 0x1c]
cmp eax, dword [esp + 0x20]
jne 0x4d43e3
cmp dword [esp + 0x18], 0x20
jne 0x4d43e3
lea edx, [esp + 0x40]
mov eax, dword [edx + 8]
mov ecx, dword [esp + 0x58]
mov dword [ecx + 8], eax
movsd xmm0, qword [edx]
movsd qword [ecx], xmm0
mov edi, dword [esp + 0x5c]
jmp 0x4d38fc
mov eax, dword [esp + 0x60]
jmp 0x4d43ef
xor eax, eax
sub eax, dword [esp + 0x64]
add esp, 0x9c
pop esi
pop edi
pop ebx
pop ebp
ret
mov edi, dword [esp + 0xb4]
jmp 0x4d3a03
mov dword [esp + 0x1c], 0x8519c8
mov edi, 0x8519c8
jmp 0x4d3a03
mov dword [esp + 0x1c], 0x8519c8
mov edi, 0x8519c8
jmp 0x4d3a73
mov dword [esp + 0x1c], 0x8519c8
jmp 0x4d3ae9