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

Disassembly:
pop eax
mov dword [ebp - 0x10], ecx
mov dword [ebp - 0x28], eax
test esi, esi
je 0x42761a
mov edi, dword [ebp + 8]
mov ebx, edx
mov dword [ebp - 0x24], edx
jmp 0x42757b
push esi
push edi
push ebx
lea eax, [ebp - 0x18]
push eax
call fcn.005a45d0
add esp, 0x10
movzx eax, byte [ebp - 0x18]
cmp eax, 4
jne 0x4275c0
mov eax, dword [ebp - 0x14]
test eax, eax
je 0x427630
mov ecx, esi
sub ecx, eax
jb 0x427645
add edi, eax
mov esi, ecx
test esi, esi
jne 0x42757b
jmp 0x42761a
mov ecx, dword [eax*4 + 0x42767c]
mov dword [ebp - 0x20], edi
add ecx, dword [ebp - 0x28]
jmp ecx
mov eax, dword [ebp - 0x10]
mov byte [eax], 4
jmp 0x42763d
mov eax, dword [ebp - 0x10]
mov byte [eax], 2
mov dword [eax + 4], 0x6b3280
add esp, 0x1c
pop esi
pop edi
pop ebx
pop ebp
ret
push 0x6b328c
push esi
push eax
call fcn.00500680
mov esi, eax
mov eax, dword [ebx + 4]
test eax, eax
je 0x427669
push dword [ebx + 8]
push eax
push dword [ebp - 0x1c]
call fcn.004ed020
add esp, 0xc
push 4
push 0xc
push edi
call fcn.004ed020
add esp, 0xc
push esi
call fcn.0050ffb0
loope 0x42767e
add byte [eax], al
popfd
add byte [eax], al
add byte [esi - 0x72000000], cl
add byte [eax], al
add byte [edi], cl
pop ds
inc eax
add byte [ebp - 0x77], dl
push ebp
mov ebp, esp
push ebx
push edi
push esi
and esp, 0xfffffff0
sub esp, 0x4c0
mov edi, edx
mov esi, ecx
mov byte [esp + 0x48], 0
lea ebx, [esp + 0x48]
lea eax, [esp + 0x1a0]
push 1
push ebx
push edx
push eax
call fcn.004e6050
add esp, 0x10
mov eax, dword [esp + 0x1a0]
cmp eax, 2
jne 0x427aeb
movzx eax, byte [esp + 0x48]
lea ecx, [esp + 0x398]
push eax
push ecx
call fcn.004e6b30
add esp, 8
mov eax, dword [esp + 0x398]
cmp eax, 2
jne 0x427b5a
movzx eax, byte [esp + 0x39e]
movzx ecx, word [esp + 0x39c]
mov byte [esp + 0x48], 0
shl eax, 0x10
or ecx, eax
mov dword [esp + 0x120], ecx
push 1
push ebx
push edi
lea eax, [esp + 0x1ac]
push eax
call fcn.004e6050
add esp, 0x10
mov eax, dword [esp + 0x1a0]
cmp eax, 2
jne 0x427c2c
movzx edx, byte [esp + 0x48]
test dl, dl
js 0x427ca9
mov ebx, edx
push 9
push dword [esp + 0x124]
lea eax, [esp + 0x1a8]
push eax
call fcn.004e6920
add esp, 0xc
mov eax, dword [esp + 0x1a0]
cmp eax, 2
jne 0x427d66
mov dword [esp + 0x44], esi
mov esi, dword [edi + 0x140]
mov eax, dword [edi + 0x144]
mov dword [esp + 0x120], eax
push eax
push esi
call fcn.004e54f0
add esp, 8
xor ecx, ecx
cmp eax, ebx
mov eax, 0xff
setne cl
cmovbe eax, ecx
test al, al
je 0x4277b5
movzx eax, al
cmp eax, 0xff
jne 0x427f0f
mov dword [esp + 0xd8], edi
mov dword [esp + 0xdc], ebx
mov dword [esp + 0xe0], 0
lea edi, [esp + 0x10]
lea edx, [esp + 0xd8]
mov ecx, edi
call fcn.00435840
mov eax, dword [esp + 0x10]
cmp eax, 2
jne 0x427e9e
mov esi, dword [esp + 0x14]
push 9
push dword [esp + 0x1c]
push edi
call fcn.004e6920
add esp, 0xc
mov eax, dword [esp + 0x10]
lea ebx, [esp + 0x48]
cmp eax, 2
jne 0x428060
lea ecx, [esp + 0x1a0]
lea edx, [esp + 0xd8]
push esi
call fcn.0041aea0
add esp, 4
mov edi, dword [esp + 0x1a0]
mov ecx, dword [esp + 0x1a4]
mov eax, edi
xor eax, 2
or eax, ecx
je 0x4280f0
movsd xmm1, qword [esp + 0x1c8]
movsd xmm2, qword [esp + 0x1c0]
mov eax, dword [esp + 0x1d8]
movsd xmm0, qword [esp + 0x1d0]
lea edx, [esp + 0x3d4]
movsd qword [esp + 0x68], xmm1
movsd xmm1, qword [esp + 0x1b8]
movsd qword [esp + 0x60], xmm2
movsd xmm2, qword [esp + 0x1a8]
mov dword [esp + 0x78], eax
lea eax, [esp + 0x1dc]
movsd qword [esp + 0x70], xmm0
movsd qword [esp + 0x58], xmm1
movsd xmm1, qword [esp + 0x1b0]
movsd qword [esp + 0x48], xmm2
movsd qword [esp + 0x50], xmm1
push 0xe4
push eax
push edx
mov esi, ecx
call sub.msvcrt.dll_memcpy
add esp, 0xc
movsd xmm2, qword [esp + 0x60]
movsd xmm3, qword [esp + 0x68]
mov ecx, dword [esp + 0x48]
movsd xmm0, qword [esp + 0x4c]
movsd xmm1, qword [esp + 0x54]
mov eax, dword [esp + 0x5c]
mov edx, dword [esp + 0x70]
mov ebx, dword [esp + 0x74]
mov dword [esp + 0x120], esi
movsd qword [esp + 0x140], xmm2
movsd qword [esp + 0x148], xmm3
mov dword [esp + 0x3a0], ecx
movsd qword [esp + 0x90], xmm0
movsd qword [esp + 0x3a4], xmm0
movsd qword [esp + 0x98], xmm1
movsd qword [esp + 0x3ac], xmm1
mov dword [esp + 0xa0], eax
mov dword [esp + 0x3b4], eax
mov eax, dword [esp + 0x78]
mov dword [esp + 0x84], ecx
mov dword [esp + 0x13c], edx
mov dword [esp + 0x344], ebx
movsd xmm0, qword [esp + 0x140]
movq xmm1, qword [esp + 0x148]
mov dword [esp + 0x340], eax
movq qword [esp + 0x3c0], xmm1
movsd qword [esp + 0x3b8], xmm0
mov dword [esp + 0x3c8], edx
mov dword [esp + 0x3cc], ebx
mov dword [esp + 0x3d0], eax
mov dword [esp + 0x39c], esi
mov dword [esp + 0x398], edi
lea ecx, [esp + 0x10]
lea edx, [esp + 0xd8]
call fcn.00435840
mov eax, dword [esp + 0x10]
cmp eax, 2
jne 0x428297
mov esi, dword [esp + 0x14]
push 9
push dword [esp + 0x1c]
lea eax, [esp + 0x18]
push eax
call fcn.004e6920
add esp, 0xc
mov eax, dword [esp + 0x10]
cmp eax, 2
jne 0x428304
lea edx, [esp + 0xd8]
lea ecx, [esp + 0x10]
push esi
call fcn.00426fb0
add esp, 4
mov eax, dword [esp + 0x10]
cmp eax, 2
jne 0x4283a7
mov eax, dword [esp + 0x1c]
movsd xmm0, qword [esp + 0x14]
movsd qword [esp + 0x110], xmm0
mov dword [esp + 0x118], eax
lea ecx, [esp + 0x10]
lea edx, [esp + 0x110]
call fcn.00437480
mov eax, dword [esp + 0x10]
mov dword [esp + 0x33c], edi
cmp eax, 2
jne 0x42841e
mov esi, dword [esp + 0x14]
push 5
push dword [esp + 0x1c]
lea eax, [esp + 0x18]
push eax
call fcn.004e6920
add esp, 0xc
mov eax, dword [esp + 0x10]
cmp eax, 2
jne 0x428470
xorps xmm0, xmm0
mov dword [esp + 0xb3], 0
movaps xmmword [esp + 0xa0], xmm0
movaps xmmword [esp + 0x90], xmm0
mov dword [esp + 0xaf], 0
push esi
lea eax, [esp + 0x14]
push eax
call fcn.004e57b0
add esp, 8
mov ecx, dword [esp + 0x10]
cmp ecx, 2
jne 0x42858f
mov esi, dword [esp + 0x14]
cmp esi, 0x27
jbe 0x42894d
mov dword [esp + 0x48], 0
mov dword [esp + 0x4c], 0
mov eax, 0x506
mov ecx, 8
mov dword [esp + ecx + 0x48], eax
cmp dword [esp + 0x48], 2
je 0x4285ef
jmp 0x4284cf
movsd xmm2, qword [esp + 0x1b4]
movsd xmm1, qword [esp + 0x1bc]
mov ebx, dword [esp + 0x1a4]
movsd xmm0, qword [esp + 0x1ac]
mov edi, dword [esp + 0x1a8]
movsd qword [esp + 0x3ac], xmm2
movsd qword [esp + 0x3b4], xmm1
movsd xmm2, qword [esp + 0x1c4]
movsd xmm1, qword [esp + 0x1cc]
mov edx, ebx
movsd qword [esp + 0x3a4], xmm0
shr edx, 0x18
movsd qword [esp + 0x3bc], xmm2
movsd qword [esp + 0x3c4], xmm1
jmp 0x427b7e
movzx ecx, byte [esp + 0x39e]
movzx ebx, word [esp + 0x39c]
movzx edx, byte [esp + 0x39f]
mov edi, dword [esp + 0x3a0]
shl ecx, 0x10
or ebx, ecx
movsd xmm2, qword [esp + 0x3bc]
movsd xmm1, qword [esp + 0x3b4]
movsd xmm0, qword [esp + 0x3c4]
movsd qword [esp + 0x28], xmm2
movsd qword [esp + 0x20], xmm1
movsd xmm2, qword [esp + 0x3a4]
movsd xmm1, qword [esp + 0x3ac]
movsd qword [esp + 0x30], xmm0
movsd qword [esp + 0x18], xmm1
movsd qword [esp + 0x10], xmm2
movsd xmm2, qword [esp + 0x28]
movsd xmm1, qword [esp + 0x20]
movsd xmm0, qword [esp + 0x30]
movzx ecx, dl
and ebx, 0xffffff
shl ecx, 0x18
or ebx, ecx
movsd qword [esi + 0x2c], xmm2
movsd qword [esi + 0x24], xmm1
movsd xmm2, qword [esp + 0x10]
movsd xmm1, qword [esp + 0x18]
movsd qword [esi + 0x34], xmm0
movsd qword [esi + 0x1c], xmm1
movsd qword [esi + 0x14], xmm2
mov dword [esi + 8], eax
mov dword [esi + 0x10], edi
mov dword [esi + 0xc], ebx
mov dword [esi + 4], 0
mov dword [esi], 2
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret
movsd xmm2, qword [esp + 0x1b4]
movsd xmm1, qword [esp + 0x1bc]
movsd xmm0, qword [esp + 0x1ac]
mov ebx, dword [esp + 0x1a4]
mov ecx, dword [esp + 0x1a8]
movsd qword [esp + 0x3a0], xmm2
movsd qword [esp + 0x3a8], xmm1
movsd xmm2, qword [esp + 0x1c4]
movsd xmm1, qword [esp + 0x1cc]
movsd qword [esp + 0x398], xmm0
movsd qword [esp + 0x3b0], xmm2
movsd qword [esp + 0x3b8], xmm1
mov edi, dword [esp + 0x120]
cmp cl, 0xd
jne 0x427cbc
xor eax, eax
mov ecx, 6
jmp 0x427d1b
cmp edx, 0x80
jne 0x427df8
mov ecx, 5
xor eax, eax
movsd xmm2, qword [esp + 0x3b0]
movsd xmm1, qword [esp + 0x3a8]
movsd xmm0, qword [esp + 0x3b8]
mov edi, ecx
shr edi, 8
movsd qword [esp + 0x1b8], xmm2
movsd qword [esp + 0x1b0], xmm1
movsd xmm2, qword [esp + 0x398]
movsd xmm1, qword [esp + 0x3a0]
movsd qword [esp + 0x1c0], xmm0
movsd qword [esp + 0x1a8], xmm1
movsd qword [esp + 0x1a0], xmm2
movsd xmm2, qword [esp + 0x1b8]
movsd xmm1, qword [esp + 0x1b0]
movsd xmm0, qword [esp + 0x1c0]
mov edx, ebx
movzx ecx, cl
shl edi, 8
shr edx, 0x18
or edi, ecx
movsd qword [esp + 0x28], xmm2
movsd qword [esp + 0x20], xmm1
movsd xmm2, qword [esp + 0x1a0]
movsd xmm1, qword [esp + 0x1a8]
jmp 0x427bb7
movzx ecx, byte [esp + 0x1a6]
movsd xmm0, qword [esp + 0x1cc]
movsd xmm1, qword [esp + 0x1c7]
movsd xmm2, qword [esp + 0x1bf]
mov byte [esp + 0x39a], cl
movzx ecx, word [esp + 0x1a4]
movsd qword [esi + 0x34], xmm0
movsd qword [esi + 0x2f], xmm1
movsd xmm1, qword [esp + 0x1b7]
movsd qword [esi + 0x27], xmm2
movsd xmm2, qword [esp + 0x1af]
mov word [esp + 0x398], cx
movsd qword [esi + 0x1f], xmm1
movsd xmm1, qword [esp + 0x1a7]
movzx ecx, byte [esp + 0x39a]
movsd qword [esi + 0x17], xmm2
movzx edx, word [esp + 0x398]
movsd qword [esi + 0xf], xmm1
mov byte [esi + 0xe], cl
mov word [esi + 0xc], dx
mov dword [esi + 8], eax
jmp 0x427c17
cmp dl, 0x84
ja 0x428249
mov dword [esp + 0x44], esi
mov esi, edx
xor esi, 0x80
je 0x428227
xor ebx, ebx
mov dword [esp + 0x84], edx
mov byte [esp + 0x48], 0
push 1
lea eax, [esp + 0x4c]
push eax
push edi
lea eax, [esp + 0x1ac]
push eax
call fcn.004e6050
add esp, 0x10
mov eax, dword [esp + 0x1a0]
cmp eax, 2
jne 0x42825c
mov edx, ebx
movzx ebx, byte [esp + 0x48]
shl edx, 8
or ebx, edx
dec esi
jne 0x427e1c
mov ecx, 0xc
cmp ebx, 0x10000000
jae 0x42828e
mov esi, ebx
mov al, 1
mov cl, 0x81
and esi, 0xffffff80
cmp esi, 0x80
je 0x427e8e
lea esi, [edx - 0x100]
mov cl, 0x82
cmp esi, 0xff00
jae 0x428383
mov esi, dword [esp + 0x44]
mov edx, dword [esp + 0x84]
jmp 0x42823d
movsd xmm2, qword [esp + 0x24]
movsd xmm1, qword [esp + 0x2c]
movsd xmm0, qword [esp + 0x1c]
mov ecx, dword [esp + 0x14]
mov edx, dword [esp + 0x18]
lea ebx, [esp + 0x48]
movsd qword [esp + 0x1bc], xmm2
movsd qword [esp + 0x1c4], xmm1
movsd xmm2, qword [esp + 0x34]
movsd xmm1, qword [esp + 0x3c]
movsd qword [esp + 0x1b4], xmm0
movsd qword [esp + 0x1cc], xmm2
movsd qword [esp + 0x1d4], xmm1
mov dword [esp + 0x1a8], eax
mov dword [esp + 0x1b0], edx
mov dword [esp + 0x1ac], ecx
jmp 0x4280da
push ebx
mov edi, dword [esp + 0x124]
push edi
lea ebx, [esp + 0x1a8]
push ebx
call fcn.004e5500
add esp, 0xc
mov eax, dword [esp + 0x1a0]
cmp eax, 2
jne 0x427f91
mov eax, dword [esp + 0x1a4]
mov dword [esp + 0x13c], eax
push edi
push esi
call fcn.004e54f0
add esp, 8
push eax
push edi
push ebx
call fcn.004e5500
add esp, 0xc
mov eax, dword [esp + 0x1a0]
cmp eax, 2
jne 0x427f91
mov eax, dword [esp + 0x1a4]
mov esi, dword [esp + 0x44]
mov edi, dword [esp + 0x120]
mov ecx, dword [esp + 0x13c]
mov edx, 3
xor ebx, ebx
mov dword [esp + 0x84], eax
mov eax, 1
jmp 0x428008
mov esi, dword [esp + 0x1b0]
movsd xmm1, qword [esp + 0x1bc]
mov edx, dword [esp + 0x1a8]
movsd xmm0, qword [esp + 0x1b4]
movsd xmm2, qword [esp + 0x1c4]
mov edi, dword [esp + 0x1a4]
mov ecx, dword [esp + 0x1ac]
mov dword [esp + 0x84], esi
movsd qword [esp + 0x3a0], xmm1
movsd xmm1, qword [esp + 0x1cc]
mov esi, dword [esp + 0x44]
mov ebx, edx
movsd qword [esp + 0x398], xmm0
movsd qword [esp + 0x3a8], xmm2
and ebx, 0xffffff00
movsd qword [esp + 0x3b0], xmm1
movsd xmm1, qword [esp + 0x3a8]
movsd xmm0, qword [esp + 0x3b0]
movsd xmm2, qword [esp + 0x398]
movzx edx, dl
or edx, ebx
movsd qword [esi + 0x2c], xmm1
movsd xmm1, qword [esp + 0x3a0]
movsd qword [esi + 0x34], xmm0
movsd qword [esi + 0x1c], xmm2
movsd qword [esi + 0x24], xmm1
mov dword [esi + 8], eax
mov dword [esi + 0xc], edi
mov dword [esi + 0x10], edx
mov dword [esi + 0x14], ecx
mov ecx, dword [esp + 0x84]
mov dword [esi + 0x18], ecx
jmp 0x427c17
movzx ecx, byte [esp + 0x16]
movzx edx, word [esp + 0x14]
movsd xmm1, qword [esp + 0x1f]
movsd xmm2, qword [esp + 0x27]
movsd xmm0, qword [esp + 0x17]
mov byte [esp + 0x1ae], cl
mov word [esp + 0x1ac], dx
movsd qword [esp + 0x1b7], xmm1
movsd xmm1, qword [esp + 0x2f]
movsd qword [esp + 0x1bf], xmm2
movsd xmm2, qword [esp + 0x37]
movsd qword [esp + 0x1af], xmm0
movsd qword [esp + 0x1c7], xmm1
movsd xmm1, qword [esp + 0x3c]
movsd qword [esp + 0x1cf], xmm2
movsd qword [esp + 0x1d4], xmm1
mov dword [esp + 0x1a8], eax
mov dword [esp + 0x1a4], 0
mov dword [esp + 0x1a0], 2
lea eax, [esp + 0x1a8]
push dword [esp + 0xe0]
push eax
push ebx
call fcn.004e4280
add esp, 0xc
mov eax, dword [esp + 0x5c]
movsd xmm0, qword [esp + 0x54]
movsd xmm1, qword [esp + 0x4c]
movsd xmm2, qword [esp + 0x60]
movsd xmm3, qword [esp + 0x68]
mov esi, dword [esp + 0x48]
mov edi, dword [esp + 0x70]
movsd xmm4, qword [esp + 0x74]
mov dword [esp + 0xa0], eax
movsd qword [esp + 0x98], xmm0
movsd qword [esp + 0x90], xmm1
movsd qword [esp + 0x140], xmm2
movsd qword [esp + 0x148], xmm3
movsd qword [esp + 0x168], xmm1
movsd qword [esp + 0x170], xmm0
mov dword [esp + 0x178], eax
movsd qword [esp + 0x188], xmm3
movsd qword [esp + 0x180], xmm2
movsd xmm2, qword [esp + 0x180]
movsd xmm3, qword [esp + 0x188]
movsd xmm0, qword [esp + 0x168]
movsd xmm1, qword [esp + 0x170]
mov ecx, dword [esp + 0x44]
mov eax, dword [esp + 0x178]
movsd qword [esp + 0x328], xmm2
movsd qword [esp + 0x330], xmm3
movsd qword [esp + 0x348], xmm0
movsd qword [ecx + 0xc], xmm0
movsd qword [esp + 0x350], xmm1
movsd qword [ecx + 0x14], xmm1
mov dword [esp + 0x358], eax
mov dword [ecx + 0x1c], eax
movsd xmm0, qword [esp + 0x328]
movsd xmm1, qword [esp + 0x330]
movsd qword [ecx + 0x20], xmm0
movsd qword [ecx + 0x28], xmm1
mov dword [ecx + 8], esi
mov dword [ecx + 0x30], edi
movlps qword [ecx + 0x34], xmm4
mov dword [ecx + 4], 0
mov dword [ecx], 2
jmp 0x427c24
mov esi, dword [esp + 0x44]
xor ebx, ebx
lea eax, [ebx - 0x1000000]
mov cl, 0x84
cmp eax, 0xf000000
setb al
test al, al
je 0x428249
cmp cl, dl
je 0x42774a
mov edi, dword [esp + 0x120]
xor eax, eax
mov ecx, 6
jmp 0x427d1b
movsd xmm2, qword [esp + 0x1b4]
movsd xmm1, qword [esp + 0x1bc]
movsd xmm0, qword [esp + 0x1ac]
mov ebx, dword [esp + 0x1a4]
mov ecx, dword [esp + 0x1a8]
mov esi, dword [esp + 0x44]
jmp 0x427c55
mov esi, dword [esp + 0x44]
jmp 0x427cba
movsd xmm2, qword [esp + 0x24]
movsd xmm1, qword [esp + 0x2c]
movsd xmm0, qword [esp + 0x1c]
mov ecx, dword [esp + 0x14]
mov edx, dword [esp + 0x18]
movsd qword [esp + 0x1b4], xmm2
movsd qword [esp + 0x1bc], xmm1
movsd xmm2, qword [esp + 0x34]
movq xmm1, qword [esp + 0x3c]
movsd qword [esp + 0x1ac], xmm0
movsd qword [esp + 0x1c4], xmm2
movq qword [esp + 0x1cc], xmm1
mov dword [esp + 0x1a0], eax
mov dword [esp + 0x1a8], edx
mov dword [esp + 0x1a4], ecx
jmp 0x42875a
movzx ecx, byte [esp + 0x16]
movzx edx, word [esp + 0x14]
movsd xmm1, qword [esp + 0x1f]
movsd xmm2, qword [esp + 0x27]
movsd xmm0, qword [esp + 0x17]
mov byte [esp + 0x1a6], cl
mov word [esp + 0x1a4], dx
movsd qword [esp + 0x1af], xmm1
movsd xmm1, qword [esp + 0x2f]
movsd qword [esp + 0x1b7], xmm2
movsd xmm2, qword [esp + 0x37]
movsd qword [esp + 0x1a7], xmm0
movsd qword [esp + 0x1bf], xmm1
movq xmm1, qword [esp + 0x3c]
movsd qword [esp + 0x1c7], xmm2
movq qword [esp + 0x1cc], xmm1
mov dword [esp + 0x1a0], eax
jmp 0x42875a
add edx, 0xffff0000
mov esi, dword [esp + 0x44]
mov cl, 0x83
cmp edx, 0xff0000
mov edx, dword [esp + 0x84]
jae 0x42822d
jmp 0x42823d
movsd xmm2, qword [esp + 0x28]
mov ecx, dword [esp + 0x1c]
movsd xmm0, qword [esp + 0x14]
movq xmm1, qword [esp + 0x20]
movsd xmm3, qword [esp + 0x30]
mov edx, dword [esp + 0x40]
movsd qword [esp + 0x1b8], xmm2
movsd xmm2, qword [esp + 0x38]
mov dword [esp + 0x50], ecx
movsd qword [esp + 0x48], xmm0
movq qword [esp + 0x1b0], xmm1
movsd qword [esp + 0x1c0], xmm3
mov dword [esp + 0x1d0], edx
movsd qword [esp + 0x1c8], xmm2
movsd qword [esp + 0x1a4], xmm0
mov dword [esp + 0x1ac], ecx
mov dword [esp + 0x1a0], eax
jmp 0x42875a
movsd xmm2, qword [esp + 0x24]
movsd xmm1, qword [esp + 0x2c]
movsd xmm0, qword [esp + 0x1c]
mov ecx, dword [esp + 0x14]
mov edx, dword [esp + 0x18]
movsd qword [esp + 0x5c], xmm2
movsd qword [esp + 0x64], xmm1
movsd xmm2, qword [esp + 0x34]
movq xmm1, qword [esp + 0x3c]
movsd qword [esp + 0x54], xmm0
movsd qword [esp + 0x6c], xmm2
movq qword [esp + 0x74], xmm1
mov dword [esp + 0x48], eax
mov dword [esp + 0x50], edx
mov dword [esp + 0x4c], ecx
jmp 0x4284cf
movzx ecx, byte [esp + 0x16]
movzx edx, word [esp + 0x14]
movsd xmm1, qword [esp + 0x1f]
movsd xmm2, qword [esp + 0x27]
movsd xmm0, qword [esp + 0x17]
mov byte [esp + 0x4e], cl
mov word [esp + 0x4c], dx
movsd qword [esp + 0x57], xmm1
movsd xmm1, qword [esp + 0x2f]
movsd qword [esp + 0x5f], xmm2
movsd xmm2, qword [esp + 0x37]
movsd qword [esp + 0x4f], xmm0
movsd qword [esp + 0x67], xmm1
movq xmm1, qword [esp + 0x3c]
movsd qword [esp + 0x6f], xmm2
movq qword [esp + 0x74], xmm1
mov dword [esp + 0x48], eax
mov eax, dword [esp + 0x118]
mov dword [esp + 8], eax
push eax
lea eax, [esp + 0x4c]
push eax
lea eax, [esp + 0x18]
push eax
call fcn.004e4280
add esp, 0xc
mov edx, dword [esp + 0x10]
mov ebx, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
mov esi, dword [esp + 0x1c]
mov eax, dword [esp + 0x20]
movdqu xmm1, xmmword [esp + 0x28]
mov edi, dword [esp + 0x38]
mov dword [esp + 0xd0], edx
cmp edx, 2
mov edx, dword [esp + 0x24]
jne 0x428550
mov dword [esp + 0xcc], edx
movdqa xmmword [esp + 0x100], xmm1
mov dword [esp + 0x80], edi
mov dword [esp + 0xd0], ebx
mov dword [esp + 0x8c], ecx
mov dword [esp + 0x7c], esi
mov dword [esp + 0x138], eax
jmp 0x428646
mov dword [esp + 0x120], edi
mov edi, dword [esp + 0x3c]
movd xmm0, edx
mov dword [esp + 8], eax
mov eax, dword [esp + 0x40]
mov edx, dword [esp + 0xd0]
punpcklqdq xmm0, xmm1
shufps xmm0, xmm1, 0x98
pshufd xmm1, xmm1, 0xff
mov dword [esp + 0xc], edi
movd edi, xmm1
mov dword [esp + 0xd4], eax
jmp 0x4286fd
movsd xmm2, qword [esp + 0x20]
movsd xmm1, qword [esp + 0x28]
movsd xmm0, qword [esp + 0x18]
mov edx, dword [esp + 0x40]
mov eax, dword [esp + 0x14]
movsd qword [esp + 0x58], xmm2
movsd qword [esp + 0x60], xmm1
movsd xmm2, qword [esp + 0x30]
movq xmm1, qword [esp + 0x38]
movsd qword [esp + 0x50], xmm0
mov dword [esp + 0x78], edx
movsd qword [esp + 0x68], xmm2
movq qword [esp + 0x70], xmm1
mov dword [esp + 0x48], ecx
mov ecx, 4
mov dword [esp + ecx + 0x48], eax
cmp dword [esp + 0x48], 2
jne 0x4284cf
mov eax, dword [esp + 0x50]
mov dword [esp + 0x8c], eax
mov ecx, dword [esp + 0x54]
mov edx, dword [esp + 0x58]
mov eax, dword [esp + 0x4c]
movups xmm0, xmmword [esp + 0x60]
mov dword [esp + 0x7c], ecx
mov ecx, dword [esp + 0x5c]
mov dword [esp + 0x138], edx
mov edx, dword [esp + 0x70]
mov dword [esp + 0xd0], eax
movaps xmmword [esp + 0x100], xmm0
mov dword [esp + 0xcc], ecx
mov ecx, dword [esp + 0x118]
mov dword [esp + 0x80], edx
mov dword [esp + 8], ecx
push dword [esp + 8]
push dword [esp + 0x118]
call fcn.004e54f0
add esp, 8
test eax, eax
je 0x428688
mov esi, dword [esp + 0x110]
push dword [esi + 8]
push dword [esi + 4]
call fcn.004e54f0
add esp, 8
test eax, eax
je 0x428688
push dword [esi]
call fcn.004e5b70
add esp, 4
test al, 1
jne 0x428887
mov byte [esp + 0xa0], 0x17
mov eax, dword [esp + 0x98]
mov ebx, dword [esp + 0x94]
mov ecx, dword [esp + 0x9c]
mov dword [esp + 0xc], eax
mov eax, dword [esp + 0xa0]
cmp al, 0x18
mov dword [esp + 0xd4], ecx
mov dword [esp + 8], eax
jne 0x428c0b
mov eax, dword [esp + 0xcc]
mov dword [esp + 0x120], ebx
mov edx, dword [esp + 0xd0]
mov esi, dword [esp + 0x138]
mov ecx, dword [esp + 0x7c]
mov ebx, dword [esp + 0x8c]
movaps xmm0, xmmword [esp + 0x100]
mov edi, dword [esp + 0x80]
mov dword [esp + 8], eax
mov dword [esp + 0x1a0], edx
mov dword [esp + 0x1a4], ebx
mov dword [esp + 0x1a8], ecx
mov eax, dword [esp + 8]
mov ecx, dword [esp + 0x120]
mov dword [esp + 0x1ac], esi
mov edx, dword [esp + 0xc]
mov dword [esp + 0x1b0], eax
movups xmmword [esp + 0x1b4], xmm0
mov dword [esp + 0x1c4], edi
mov dword [esp + 0x1c8], ecx
mov ecx, dword [esp + 0xd4]
mov dword [esp + 0x1cc], edx
mov dword [esp + 0x1d0], ecx
mov byte [esp + 0x1d4], 0x18
push dword [esp + 0xe0]
lea eax, [esp + 0x1a4]
push eax
lea eax, [esp + 0x18]
push eax
call fcn.004e4280
add esp, 0xc
movsd xmm2, qword [esp + 0x28]
movsd xmm0, qword [esp + 0x14]
movsd xmm1, qword [esp + 0x1c]
mov eax, dword [esp + 0x24]
mov esi, dword [esp + 0x10]
mov edi, dword [esp + 0x38]
movsd qword [esp + 0x310], xmm2
movsd xmm2, qword [esp + 0x30]
movsd qword [esp + 0x140], xmm0
movsd qword [esp + 0xe8], xmm0
movsd qword [esp + 0xf0], xmm1
movsd qword [esp + 0x148], xmm1
mov dword [esp + 0xf8], eax
mov dword [esp + 0x150], eax
movsd xmm0, qword [esp + 0x310]
mov eax, dword [esp + 0xf8]
movsd xmm3, qword [esp + 0xf0]
movsd qword [esp + 0x318], xmm2
movsd xmm2, qword [esp + 0x3c]
movsd xmm1, qword [esp + 0x318]
movsd qword [esp + 0x190], xmm0
movsd xmm0, qword [esp + 0xe8]
mov dword [esp + 0x178], eax
movsd qword [esp + 0x170], xmm3
movaps xmmword [esp + 0x120], xmm2
movsd qword [esp + 0x198], xmm1
movsd qword [esp + 0x168], xmm0
movsd xmm0, qword [esp + 0x190]
movsd xmm2, qword [esp + 0x198]
movsd qword [esp + 0x180], xmm0
movsd qword [esp + 0x188], xmm2
lea ecx, [esp + 0x398]
call fcn.0042e3a0
movaps xmm4, xmmword [esp + 0x120]
jmp 0x428188
movzx eax, dl
push eax
lea eax, [esp + 0x14]
push eax
call fcn.004e6b30
add esp, 8
mov eax, dword [esp + 0x10]
cmp eax, 2
jne 0x4289a0
lea ecx, [esp + 0x10]
lea edx, [esp + 0x110]
call fcn.00437480
mov eax, dword [esp + 0x10]
cmp eax, 2
jne 0x428a84
mov esi, dword [esp + 0x18]
lea edi, [esp + 0x10]
lea edx, [esp + 0x110]
mov ecx, edi
push dword [esp + 0x14]
call fcn.00425a10
add esp, 4
mov eax, dword [esp + 0x10]
cmp eax, 2
jne 0x428ad6
mov eax, dword [esp + 0x1c]
movsd xmm0, qword [esp + 0x14]
mov dword [esp + 0x368], eax
movsd qword [esp + 0x360], xmm0
mov dword [esp + 0x18], eax
movsd qword [esp + 0x10], xmm0
mov edx, esi
lea ecx, [esp + 0x48]
push edi
call fcn.00411950
add esp, 4
cmp dword [esp + 0x48], 2
jne 0x428b36
movsd xmm0, qword [esp + 0x4c]
movq xmm1, qword [esp + 0x54]
movq qword [esp + 0x9c], xmm1
movsd qword [esp + 0x94], xmm0
jmp 0x428690
lea edi, [esp + 0x10]
lea ebx, [esp + 0x90]
lea edx, [esp + 0x110]
mov ecx, edi
push esi
push ebx
call fcn.0043cea0
add esp, 8
mov ecx, dword [esp + 0x10]
cmp ecx, 2
jne 0x428a1f
push esi
push ebx
push edi
call fcn.0057aa70
add esp, 0xc
cmp byte [esp + 0x10], 0
je 0x429175
mov dword [esp + 0x48], 0
mov byte [esp + 0x50], 8
jmp 0x4284cf
movsd xmm1, qword [esp + 0x1f]
movsd xmm2, qword [esp + 0x27]
movsd xmm0, qword [esp + 0x17]
movzx ecx, word [esp + 0x14]
movzx edx, byte [esp + 0x16]
movsd qword [esp + 0x9f], xmm1
movsd xmm1, qword [esp + 0x2f]
movsd qword [esp + 0xa7], xmm2
movsd xmm2, qword [esp + 0x37]
movsd qword [esp + 0x97], xmm0
movsd qword [esp + 0xaf], xmm1
movq xmm1, qword [esp + 0x3c]
movsd qword [esp + 0xb7], xmm2
movq qword [esp + 0xbc], xmm1
mov dword [esp + 0x90], eax
mov byte [esp + 0x96], dl
mov word [esp + 0x94], cx
jmp 0x428bb4
movsd xmm2, qword [esp + 0x24]
movsd xmm1, qword [esp + 0x2c]
movsd xmm0, qword [esp + 0x1c]
mov edx, dword [esp + 0x14]
mov eax, dword [esp + 0x18]
movsd qword [esp + 0x5c], xmm2
movsd qword [esp + 0x64], xmm1
movsd xmm2, qword [esp + 0x34]
movq xmm1, qword [esp + 0x3c]
movsd qword [esp + 0x54], xmm0
movsd qword [esp + 0x6c], xmm2
movq qword [esp + 0x74], xmm1
mov dword [esp + 0x48], ecx
mov dword [esp + 0x4c], edx
mov ecx, 8
mov dword [esp + ecx + 0x48], eax
cmp dword [esp + 0x48], 2
je 0x4285ef
jmp 0x4284cf
movsd xmm2, qword [esp + 0x24]
movsd xmm1, qword [esp + 0x2c]
movsd xmm0, qword [esp + 0x1c]
mov ecx, dword [esp + 0x14]
mov edx, dword [esp + 0x18]
movsd qword [esp + 0x5c], xmm2
movsd qword [esp + 0x64], xmm1
movsd xmm2, qword [esp + 0x34]
movq xmm1, qword [esp + 0x3c]
movsd qword [esp + 0x54], xmm0
movsd qword [esp + 0x6c], xmm2
movq qword [esp + 0x74], xmm1
mov dword [esp + 0x48], eax
mov dword [esp + 0x50], edx
mov dword [esp + 0x4c], ecx
jmp 0x428b36
movsd xmm2, qword [esp + 0x28]
mov ecx, dword [esp + 0x1c]
movsd xmm0, qword [esp + 0x14]
movq xmm1, qword [esp + 0x20]
movsd xmm3, qword [esp + 0x30]
mov edx, dword [esp + 0x40]
movsd qword [esp + 0x60], xmm2
movsd xmm2, qword [esp + 0x38]
mov dword [esp + 0x368], ecx
movsd qword [esp + 0x360], xmm0
movq qword [esp + 0x58], xmm1
movsd qword [esp + 0x68], xmm3
mov dword [esp + 0x78], edx
movsd qword [esp + 0x70], xmm2
movsd qword [esp + 0x4c], xmm0
mov dword [esp + 0x54], ecx
mov dword [esp + 0x48], eax
movsd xmm0, qword [esp + 0x48]
movsd xmm3, qword [esp + 0x70]
movsd xmm2, qword [esp + 0x68]
movq xmm1, qword [esp + 0x50]
mov eax, dword [esp + 0x78]
movsd qword [esp + 0x90], xmm0
movsd qword [esp + 0xb8], xmm3
movsd qword [esp + 0xb0], xmm2
movsd xmm3, qword [esp + 0x60]
movsd xmm2, qword [esp + 0x58]
mov dword [esp + 0xc0], eax
movq qword [esp + 0x98], xmm1
cmp dword [esp + 0x90], 2
movsd qword [esp + 0xa8], xmm3
movsd qword [esp + 0xa0], xmm2
je 0x428690
mov eax, dword [esp + 0x118]
mov dword [esp + 8], eax
lea eax, [esp + 0x90]
push dword [esp + 8]
push eax
lea eax, [esp + 0x18]
push eax
call fcn.004e4280
add esp, 0xc
mov esi, dword [esp + 0x10]
mov eax, dword [esp + 0x20]
mov ebx, dword [esp + 0x14]
mov edx, dword [esp + 0x1c]
mov ecx, dword [esp + 0x18]
cmp esi, 2
mov dword [esp + 8], eax
jne 0x429031
mov eax, dword [esp + 8]
mov dword [esp + 0xc], ecx
mov ecx, edx
cmp al, 0x18
mov dword [esp + 0xd4], ecx
mov dword [esp + 8], eax
je 0x4286c3
mov dword [esp + 0x88], ebx
mov ebx, dword [esp + 0x114]
mov esi, dword [esp + 0x118]
push esi
push ebx
call fcn.004e54f0
add esp, 8
test eax, eax
je 0x428c96
push esi
push ebx
call fcn.004e54f0
add esp, 8
mov dword [esp + 0x1a0], 1
mov dword [esp + 0x1a4], esi
mov byte [esp + 0x1a8], 0x15
mov dword [esp + 0x1ac], esi
mov dword [esp + 0x1b0], eax
cmp byte [esp + 8], 0x17
mov eax, dword [esp + 0xc]
mov byte [esp + 0x1d4], 0x18
je 0x428762
test eax, eax
je 0x428762
push 1
push eax
push dword [esp + 0x90]
call fcn.004ed020
add esp, 0xc
jmp 0x428762
mov eax, dword [esp + 0xd0]
movaps xmm0, xmmword [esp + 0x100]
mov ecx, dword [esp + 0x80]
mov edx, dword [esp + 8]
mov dword [esp + 0x1a0], eax
mov eax, dword [esp + 0x8c]
mov dword [esp + 0x1a4], eax
mov eax, dword [esp + 0x7c]
mov dword [esp + 0x1a8], eax
mov eax, dword [esp + 0x138]
mov dword [esp + 0x1ac], eax
mov eax, dword [esp + 0xcc]
mov dword [esp + 0x1b0], eax
movups xmmword [esp + 0x1b4], xmm0
mov dword [esp + 0x1c4], ecx
mov ecx, dword [esp + 0x88]
mov eax, edx
shr eax, 8
mov word [esp + 0xe4], ax
mov dword [esp + 0x1c8], ecx
mov ecx, dword [esp + 0xc]
mov dword [esp + 0x1cc], ecx
mov ecx, dword [esp + 0xd4]
mov dword [esp + 0x1d0], ecx
mov byte [esp + 0x1d4], dl
mov word [esp + 0x1d5], ax
shr eax, 0x10
mov byte [esp + 0x1d7], al
mov byte [esp + 0xe6], al
movsd xmm1, qword [esp + 0x1ac]
movsd xmm2, qword [esp + 0x1c0]
mov ecx, dword [esp + 0x1b4]
movsd xmm0, qword [esp + 0x1a4]
movsd qword [esp + 0x148], xmm1
movsd xmm1, qword [esp + 0x1b8]
movsd qword [esp + 0x318], xmm2
mov dword [esp + 0x150], ecx
movsd qword [esp + 0x140], xmm0
mov eax, dword [esp + 0x150]
movsd xmm3, qword [esp + 0x140]
movsd qword [esp + 0x310], xmm1
movsd xmm1, qword [esp + 0x148]
movsd xmm2, qword [esp + 0x310]
mov dword [esp + 0xf8], eax
movsd qword [esp + 0xe8], xmm3
mov eax, dword [esp + 0xf8]
movsd xmm3, qword [esp + 0xe8]
movsd qword [esp + 0xf0], xmm1
movsd xmm1, qword [esp + 0x318]
movsd qword [esp + 0x190], xmm2
movsd xmm2, qword [esp + 0x190]
mov dword [esp + 0x380], eax
movsd qword [esp + 0x370], xmm3
movsd qword [esp + 0x198], xmm1
movsd xmm1, qword [esp + 0xf0]
movsd qword [esp + 0x388], xmm2
movsd qword [esp + 0x378], xmm1
movq xmm1, qword [esp + 0x198]
movq qword [esp + 0x390], xmm1
lea ecx, [esp + 0x1a0]
lea edx, [esp + 0xd8]
mov ebx, ecx
call fcn.00435840
mov eax, dword [esp + 0x1a0]
cmp eax, 2
jne 0x428faf
mov esi, dword [esp + 0x1a4]
push 2
push dword [esp + 0x1ac]
push ebx
call fcn.004e6920
add esp, 0xc
mov eax, dword [esp + 0x1a0]
cmp eax, 2
jne 0x429063
push 1
push esi
push ebx
call fcn.004e56a0
add esp, 0xc
mov eax, dword [esp + 0x1a0]
cmp eax, 2
jne 0x4290fa
mov esi, dword [esp + 0x1a4]
mov byte [esp + 0x140], 0
push 1
push ebx
call fcn.004e5780
add esp, 8
mov eax, dword [esp + 0x1a0]
cmp eax, 2
jne 0x4291d8
lea edx, [esp + 0xd8]
lea ecx, [esp + 0x10]
push dword [esp + 0x1a4]
call fcn.00426250
add esp, 4
mov eax, dword [esp + 0x10]
cmp eax, 2
jne 0x42923b
lea eax, [esp + 0x140]
push 1
push eax
push dword [esp + 0xe0]
lea eax, [esp + 0x54]
push eax
call fcn.004e6050
add esp, 0x10
mov eax, dword [esp + 0x48]
cmp eax, 2
jne 0x429283
movzx eax, byte [esp + 0x140]
mov byte [esp + 0x80], al
push esi
push ebx
call fcn.004e57b0
add esp, 8
mov esi, dword [esp + 0x1a0]
cmp esi, 2
jne 0x429745
mov eax, dword [esp + 0x1a4]
test eax, eax
mov dword [esp + 0x100], eax
je 0x4297ca
js 0x429b73
push 1
push dword [esp + 0x104]
call fcn.004ed060
add esp, 8
test eax, eax
mov dword [esp + 0x7c], eax
jne 0x4297d2
push dword [esp + 0x100]
push 1
call fcn.004ed3a0
add esp, 8
jmp 0x429b78
movsd xmm2, qword [esp + 0x1b4]
movsd xmm1, qword [esp + 0x1bc]
mov ecx, dword [esp + 0x1a4]
movsd xmm0, qword [esp + 0x1ac]
mov edx, dword [esp + 0x1a8]
movsd qword [esp + 0xa4], xmm2
movsd qword [esp + 0xac], xmm1
movsd xmm2, qword [esp + 0x1c4]
movq xmm1, qword [esp + 0x1cc]
movsd qword [esp + 0x9c], xmm0
movsd qword [esp + 0xb4], xmm2
movq qword [esp + 0xbc], xmm1
mov dword [esp + 0x90], eax
mov dword [esp + 0x98], edx
mov dword [esp + 0x94], ecx
jmp 0x429302
mov eax, esi
mov esi, dword [esp + 0x38]
movups xmm0, xmmword [esp + 0x24]
mov edi, dword [esp + 0x34]
mov dword [esp + 0x120], esi
mov esi, dword [esp + 0x40]
mov dword [esp + 0xd4], esi
mov esi, dword [esp + 0x3c]
mov dword [esp + 0xc], esi
mov esi, edx
mov edx, eax
jmp 0x4286fd
movzx ecx, byte [esp + 0x1a6]
movzx edx, word [esp + 0x1a4]
movsd xmm1, qword [esp + 0x1af]
movsd xmm2, qword [esp + 0x1b7]
movsd xmm0, qword [esp + 0x1a7]
mov byte [esp + 0x96], cl
mov word [esp + 0x94], dx
movsd qword [esp + 0x9f], xmm1
movsd xmm1, qword [esp + 0x1bf]
movsd qword [esp + 0xa7], xmm2
movsd xmm2, qword [esp + 0x1c7]
movsd qword [esp + 0x97], xmm0
movsd qword [esp + 0xaf], xmm1
movq xmm1, qword [esp + 0x1cc]
movsd qword [esp + 0xb7], xmm2
movq qword [esp + 0xbc], xmm1
mov dword [esp + 0x90], eax
jmp 0x429302
movsd xmm2, qword [esp + 0x1b0]
movsd xmm1, qword [esp + 0x1b8]
movsd xmm0, qword [esp + 0x1a8]
mov edx, dword [esp + 0x1d0]
mov ecx, dword [esp + 0x1a4]
movsd qword [esp + 0xa0], xmm2
movsd qword [esp + 0xa8], xmm1
movsd xmm2, qword [esp + 0x1c0]
movq xmm1, qword [esp + 0x1c8]
movsd qword [esp + 0x98], xmm0
mov dword [esp + 0xc0], edx
movsd qword [esp + 0xb0], xmm2
movq qword [esp + 0xb8], xmm1
mov dword [esp + 0x90], eax
jmp 0x429025
movzx eax, byte [esp + 0x13]
movsd xmm1, qword [esp + 0x24]
mov ecx, dword [esp + 0x18]
movsd xmm0, qword [esp + 0x1c]
movsd xmm2, qword [esp + 0x2c]
mov byte [esp + 0x4e], al
movzx eax, word [esp + 0x11]
mov word [esp + 0x4c], ax
movsd qword [esp + 0x5f], xmm1
mov eax, dword [esp + 0x14]
movq xmm1, qword [esp + 0x31]
movsd qword [esp + 0x67], xmm2
movsd qword [esp + 0x57], xmm0
movq qword [esp + 0x6c], xmm1
mov dword [esp + 0x53], ecx
shld ecx, eax, 0x18
mov dword [esp + 0x4f], eax
mov dword [esp + 0x8c], ecx
jmp 0x4285fa
movsd xmm2, qword [esp + 0x1b0]
movsd xmm1, qword [esp + 0x1b8]
movsd xmm0, qword [esp + 0x1a8]
mov edx, dword [esp + 0x1d0]
mov ecx, dword [esp + 0x1a4]
movsd qword [esp + 0x58], xmm2
movsd qword [esp + 0x60], xmm1
movsd xmm2, qword [esp + 0x1c0]
movq xmm1, qword [esp + 0x1c8]
movsd qword [esp + 0x50], xmm0
mov dword [esp + 0x78], edx
movsd qword [esp + 0x68], xmm2
movq qword [esp + 0x70], xmm1
mov dword [esp + 0x4c], ecx
jmp 0x429283
movsd xmm1, qword [esp + 0x34]
movsd xmm2, qword [esp + 0x2c]
movsd xmm0, qword [esp + 0x3c]
movsd qword [esp + 0x6c], xmm1
movsd xmm1, qword [esp + 0x24]
movsd qword [esp + 0x64], xmm2
movsd xmm2, qword [esp + 0x14]
movsd qword [esp + 0x74], xmm0
movsd qword [esp + 0x5c], xmm1
movq xmm1, qword [esp + 0x1c]
movsd qword [esp + 0x4c], xmm2
movq qword [esp + 0x54], xmm1
movsd xmm2, qword [esp + 0x5c]
movsd xmm1, qword [esp + 0x64]
mov edx, dword [esp + 0x4c]
movsd xmm0, qword [esp + 0x54]
mov ecx, dword [esp + 0x50]
movsd qword [esp + 0xa4], xmm2
movsd qword [esp + 0xac], xmm1
movsd xmm2, qword [esp + 0x6c]
movq xmm1, qword [esp + 0x74]
mov esi, edx
movsd qword [esp + 0x9c], xmm0
shr esi, 8
movsd qword [esp + 0xb4], xmm2
movq qword [esp + 0xbc], xmm1
mov dword [esp + 0x90], eax
mov byte [esp + 0x94], dl
shr edx, 0x18
mov word [esp + 0x95], si
mov byte [esp + 0x97], dl
mov dword [esp + 0x98], ecx
lea eax, [esp + 0x90]
push dword [esp + 0xe0]
push eax
push ebx
call fcn.004e4280
add esp, 0xc
movsd xmm1, qword [esp + 0x1ac]
mov esi, dword [esp + 0x1a0]
movsd xmm0, qword [esp + 0x1a4]
mov eax, dword [esp + 0x1b4]
movsd xmm2, qword [esp + 0x1b8]
movsd qword [esp + 0xf0], xmm1
movsd xmm1, qword [esp + 0x1c0]
cmp esi, 2
movsd qword [esp + 0xe8], xmm0
mov dword [esp + 0xf8], eax
movsd qword [esp + 0x190], xmm2
movsd qword [esp + 0x198], xmm1
jne 0x429689
movsd xmm1, qword [esp + 0xf0]
lea eax, [esp + 0x3a4]
mov ecx, dword [esp + 0xf8]
movsd xmm0, qword [esp + 0xe8]
movsd xmm3, qword [eax]
movsd xmm2, qword [eax + 0x14]
movsd qword [esp + 0x318], xmm1
movsd qword [esp + 0x300], xmm1
movsd xmm1, qword [eax + 8]
mov dword [esp + 0x320], ecx
mov dword [esp + 0x308], ecx
mov ecx, dword [eax + 0x10]
movsd qword [esp + 0x310], xmm0
movsd qword [esp + 0x2f8], xmm0
movsd qword [esp + 0x168], xmm3
movsd qword [esp + 0x180], xmm2
movsd qword [esp + 0x170], xmm1
movsd xmm1, qword [eax + 0x1c]
mov dword [esp + 0x178], ecx
movsd qword [esp + 0x188], xmm1
push 0xe4
lea eax, [esp + 0x3d8]
push eax
lea eax, [esp + 0x1e4]
push eax
call sub.msvcrt.dll_memcpy
add esp, 0xc
mov eax, dword [esp + 0x380]
movsd xmm0, qword [esp + 0x370]
movsd xmm1, qword [esp + 0x378]
mov edi, dword [esp + 0xdc]
mov esi, dword [esp + 0xe0]
mov dword [esp + 0x2d4], eax
movsd qword [esp + 0x2c4], xmm0
movsd qword [esp + 0x2cc], xmm1
movsd xmm0, qword [esp + 0x388]
movsd xmm1, qword [esp + 0x390]
movzx eax, word [esp + 0xe4]
movsd qword [esp + 0x2d8], xmm0
movsd qword [esp + 0x2e0], xmm1
mov word [esp + 0x2f5], ax
mov eax, dword [esp + 0x178]
movsd xmm0, qword [esp + 0x168]
movsd xmm1, qword [esp + 0x170]
mov dword [esp + 0x358], eax
movzx eax, byte [esp + 0xe6]
movsd qword [esp + 0x350], xmm1
movsd qword [esp + 0x348], xmm0
movsd xmm0, qword [esp + 0x180]
movsd xmm1, qword [esp + 0x188]
mov byte [esp + 0x2f7], al
mov eax, dword [esp + 0x358]
movsd qword [esp + 0x330], xmm1
movsd qword [esp + 0x328], xmm0
movsd xmm0, qword [esp + 0x348]
movsd xmm1, qword [esp + 0x350]
mov dword [esp + 0x1bc], eax
movsd qword [esp + 0x1b4], xmm1
movsd qword [esp + 0x1ac], xmm0
movsd xmm0, qword [esp + 0x328]
movsd xmm1, qword [esp + 0x330]
mov eax, dword [esp + 0x120]
movsd qword [esp + 0x1c8], xmm1
movsd qword [esp + 0x1c0], xmm0
mov dword [esp + 0x1a4], eax
mov eax, dword [esp + 0x33c]
mov dword [esp + 0x1a0], eax
mov eax, dword [esp + 0x84]
mov dword [esp + 0x1a8], eax
mov eax, dword [esp + 0x13c]
mov dword [esp + 0x1d0], eax
mov eax, dword [esp + 0x344]
mov dword [esp + 0x1d4], eax
mov eax, dword [esp + 0x340]
mov dword [esp + 0x1d8], eax
mov eax, dword [esp + 0xd0]
mov dword [esp + 0x2c0], eax
mov eax, dword [esp + 0x88]
mov dword [esp + 0x2e8], eax
mov eax, dword [esp + 0xc]
mov dword [esp + 0x2ec], eax
mov eax, dword [esp + 0xd4]
mov dword [esp + 0x2f0], eax
mov eax, dword [esp + 8]
mov byte [esp + 0x2f4], al
push esi
push edi
call fcn.004e54f0
add esp, 8
test eax, eax
je 0x42972e
push esi
push edi
call fcn.004e54f0
add esp, 8
mov ecx, dword [esp + 0x44]
mov dword [ecx + 8], 1
mov dword [ecx + 0xc], esi
mov byte [ecx + 0x10], 0x15
mov dword [ecx + 0x14], esi
mov dword [ecx + 0x18], eax
mov dword [ecx + 4], 0
mov dword [ecx], 2
lea ecx, [esp + 0x1a0]
call fcn.0042e3a0
cmp byte [esp + 8], 0x17
je 0x429663
cmp dword [esp + 0xc], 0
je 0x429663
push 1
push dword [esp + 0x10]
push dword [esp + 0x90]
call fcn.004ed020
add esp, 0xc
mov eax, dword [esp + 0x2f8]
test eax, eax
je 0x427c24
push 1
push eax
push dword [esp + 0x304]
call fcn.004ed020
add esp, 0xc
jmp 0x427c24
mov eax, dword [esp + 0xf8]
movsd xmm0, qword [esp + 0x1cc]
movsd xmm4, qword [esp + 0xe8]
movsd xmm1, qword [esp + 0xf0]
movsd xmm2, qword [esp + 0x190]
movsd xmm3, qword [esp + 0x198]
mov edi, dword [esp + 0x1c8]
cmp byte [esp + 8], 0x17
movaps xmmword [esp + 0x120], xmm0
mov dword [esp + 0x320], eax
movsd qword [esp + 0x180], xmm2
movsd qword [esp + 0x188], xmm3
movsd qword [esp + 0x168], xmm4
movsd qword [esp + 0x170], xmm1
mov dword [esp + 0x178], eax
je 0x42886e
cmp dword [esp + 0xc], 0
je 0x42886e
push 1
push dword [esp + 0x10]
push dword [esp + 0x90]
call fcn.004ed020
add esp, 0xc
jmp 0x42886e
push 0x170
push ebx
push dword [esp + 0x4c]
call sub.msvcrt.dll_memcpy
add esp, 0xc
jmp 0x427c24
mov eax, dword [esp + 0x1a4]
movsd xmm1, qword [esp + 0x1b8]
movsd xmm0, qword [esp + 0x1b0]
movsd xmm2, qword [esp + 0x1c0]
mov dword [esp + 0x80], eax
mov eax, dword [esp + 0x1a8]
movsd qword [esp + 0x148], xmm1
movsd xmm1, qword [esp + 0x1c8]
movsd qword [esp + 0x140], xmm0
movsd qword [esp + 0x150], xmm2
mov dword [esp + 0x8c], eax
mov eax, dword [esp + 0x1ac]
movsd qword [esp + 0x158], xmm1
mov dword [esp + 0xcc], eax
mov eax, dword [esp + 0x1d0]
mov dword [esp + 0x160], eax
jmp 0x429a21
mov dword [esp + 0x7c], 1
push dword [esp + 0x100]
push ebx
call fcn.004e5780
add esp, 8
mov esi, dword [esp + 0x1a0]
cmp esi, 2
jne 0x4298ec
lea edx, [esp + 0xd8]
lea ecx, [esp + 0x10]
push dword [esp + 0x1a4]
call fcn.00426250
add esp, 4
mov esi, dword [esp + 0x10]
cmp esi, 2
jne 0x42994f
push dword [esp + 0x100]
push dword [esp + 0x80]
push dword [esp + 0xe0]
lea eax, [esp + 0x54]
push eax
call fcn.004e6050
add esp, 0x10
mov esi, dword [esp + 0x48]
cmp esi, 2
jne 0x429997
movzx eax, byte [esp + 0x80]
push dword [esp + 0x100]
push dword [esp + 0x80]
push eax
push ebx
call fcn.004e04d0
add esp, 0x10
mov eax, dword [esp + 0x1a0]
cmp eax, 2
jne 0x429aad
mov ecx, dword [esp + 0x100]
mov eax, dword [esp + 0x1b0]
mov edx, dword [esp + 0x7c]
mov dword [esp + 0x94], ecx
mov dword [esp + 0x98], edx
mov dword [esp + 0x9c], ecx
mov dword [esp + 0xa0], eax
movzx eax, byte [esp + 0x80]
mov byte [esp + 0xa4], al
movsd xmm0, qword [esp + 0x94]
movsd xmm1, qword [esp + 0x9c]
mov eax, dword [esp + 0xa4]
movsd qword [esp + 0xe8], xmm0
movsd qword [esp + 0xf0], xmm1
mov dword [esp + 0xf8], eax
jmp 0x429380
movsd xmm2, qword [esp + 0x1b0]
movsd xmm1, qword [esp + 0x1b8]
movsd xmm0, qword [esp + 0x1a8]
mov ecx, dword [esp + 0x1d0]
mov eax, dword [esp + 0x1a4]
movsd qword [esp + 0x58], xmm2
movsd qword [esp + 0x60], xmm1
movsd xmm2, qword [esp + 0x1c0]
movq xmm1, qword [esp + 0x1c8]
movsd qword [esp + 0x50], xmm0
mov dword [esp + 0x78], ecx
movsd qword [esp + 0x68], xmm2
movq qword [esp + 0x70], xmm1
mov dword [esp + 0x4c], eax
jmp 0x429997
movsd xmm1, qword [esp + 0x34]
movsd xmm2, qword [esp + 0x2c]
movsd xmm0, qword [esp + 0x3c]
movsd qword [esp + 0x6c], xmm1
movsd xmm1, qword [esp + 0x24]
movsd qword [esp + 0x64], xmm2
movsd xmm2, qword [esp + 0x14]
movsd qword [esp + 0x74], xmm0
movsd qword [esp + 0x5c], xmm1
movq xmm1, qword [esp + 0x1c]
movsd qword [esp + 0x4c], xmm2
movq qword [esp + 0x54], xmm1
mov eax, dword [esp + 0x4c]
movsd xmm1, qword [esp + 0x60]
cmp dword [esp + 0x100], 0
movsd xmm0, qword [esp + 0x58]
movsd xmm2, qword [esp + 0x68]
mov dword [esp + 0x80], eax
mov eax, dword [esp + 0x50]
movsd qword [esp + 0x148], xmm1
movsd xmm1, qword [esp + 0x70]
movsd qword [esp + 0x140], xmm0
movsd qword [esp + 0x150], xmm2
mov dword [esp + 0x8c], eax
mov eax, dword [esp + 0x54]
movsd qword [esp + 0x158], xmm1
mov dword [esp + 0xcc], eax
mov eax, dword [esp + 0x78]
mov dword [esp + 0x160], eax
je 0x429a21
push 1
push dword [esp + 0x104]
push dword [esp + 0x84]
call fcn.004ed020
add esp, 0xc
mov eax, dword [esp + 0x160]
movsd xmm1, qword [esp + 0x150]
movsd xmm0, qword [esp + 0x158]
movsd xmm2, qword [esp + 0x140]
mov edx, dword [esp + 0x8c]
mov ecx, dword [esp + 0xcc]
mov dword [esp + 0xc0], eax
movsd qword [esp + 0xb0], xmm1
movq xmm1, qword [esp + 0x148]
mov eax, dword [esp + 0x80]
movsd qword [esp + 0xb8], xmm0
movsd qword [esp + 0xa0], xmm2
movq qword [esp + 0xa8], xmm1
mov dword [esp + 0x90], esi
mov dword [esp + 0x94], eax
mov dword [esp + 0x98], edx
mov dword [esp + 0x9c], ecx
jmp 0x429302
movsd xmm2, qword [esp + 0x1bd]
movzx ecx, byte [esp + 0x1b4]
movsd xmm0, qword [esp + 0x1b5]
movsd xmm1, qword [esp + 0x1c5]
cmp dword [esp + 0x100], 0
mov edx, dword [esp + 0x1a4]
mov esi, dword [esp + 0x1b0]
movsd qword [esp + 0xad], xmm2
movsd xmm2, qword [esp + 0x1cc]
mov byte [esp + 0x80], cl
movsd qword [esp + 0xb5], xmm1
movsd qword [esp + 0xa5], xmm0
movq xmm1, qword [esp + 0x1a8]
movsd qword [esp + 0xbc], xmm2
mov dword [esp + 0x90], eax
movzx eax, byte [esp + 0x80]
mov dword [esp + 0x94], edx
movq qword [esp + 0x98], xmm1
mov dword [esp + 0xa0], esi
mov byte [esp + 0xa4], al
je 0x429302
push 1
push dword [esp + 0x104]
push dword [esp + 0x84]
call fcn.004ed020
add esp, 0xc
jmp 0x429302
call fcn.004ed360
ud2