Function at 0x45f630
Capabilities:
Hash data using sha256
Hash data using sha384
Resolve function by parsing pe exports

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
and esp, 0xfffffff0
sub esp, 0xea0
mov edi, edx
mov dword [esp + 8], ecx
lea eax, [esp + 0x550]
push dword [ebp + 0xc]
push eax
call fcn.0046f230
add esp, 8
mov eax, dword [esp + 0x550]
mov ebx, dword [esp + 0x554]
mov ecx, dword [esp + 0x558]
lea esi, [esp + 0xbc8]
cmp eax, 3
jne 0x45f6ff
mov dword [esp + 0xc], ecx
push dword [ebp + 0x10]
push esi
call fcn.0046f230
add esp, 8
mov eax, dword [esp + 0xbc8]
cmp eax, 2
je 0x45f7a7
cmp eax, 3
jne 0x45f7c5
push dword [esp + 0xbd0]
push dword [esp + 0xbd0]
lea eax, [esp + 0x558]
push eax
call fcn.00472c10
add esp, 0xc
cmp dword [esp + 0x550], 0
mov ecx, dword [esp + 0x554]
mov eax, dword [esp + 0x558]
je 0x45f8b7
mov dword [esp + 0x550], ecx
mov dword [esp + 0x554], eax
lea ecx, [esp + 0x550]
call fcn.0043b8e0
jmp 0x45f897
mov dword [esp + 0xd28], eax
mov dword [esp + 0xd2c], ebx
mov dword [esp + 0xd30], ecx
lea edx, [esp + 0xd28]
lea ecx, [esp + 0x550]
mov dword [esp + 0x550], 2
mov dword [esp + 0x558], 2
mov dword [esp + 0x560], 0x20
mov dword [esp + 0x564], 0
mov dword [esp + 0x568], 4
mov dword [esp + 0x2b0], 0x6b2794
mov dword [esp + 0x2b4], 2
mov byte [esp + 0x56c], 3
mov dword [esp + 0xbc8], edx
mov dword [esp + 0x2c0], ecx
mov dword [esp + 0x2c4], 1
mov dword [esp + 0xbcc], 0x476bf0
mov dword [esp + 0x2b8], esi
jmp 0x45f87a
mov dword [esp + 0x28], ebx
mov dword [esp + 0x30], edi
mov edx, 1
mov eax, 0x5a4
mov ecx, str._____BEGIN_CERTIFICATE______nMIID_TCCAuWgAwIBAgIJAJcPmDkJqolJMA0GCSqGSIb3DQEBBQUAMIGUMQswCQYD_nVQQGEwJVUzETMBEGA1UECAwKQ2FsaWZvcm5pYTEWMBQGA1UEBwwNTW91bnRhaW4g_nVmlldzEQMA4GA1UECgwHQW5kcm9pZDEQMA4GA1UECwwHQW5kcm9pZDEQMA4GA1UE_nAwwHQW5kcm9pZDEiMCAGCSqGSIb3DQEJARYTYW5kcm9pZEBhbmRyb2lkLmNvbTAe_nFw0xNDExMDYxOTA3NDBaFw00MjAzMjQxOTA3NDBaMIGUMQswCQYDVQQGEwJVUzET_nMBEGA1UECAwKQ2FsaWZvcm5pYTEWMBQGA1UEBwwNTW91bnRhaW4gVmlldzEQMA4G_nA1UECgwHQW5kcm9pZDEQMA4GA1UECwwHQW5kcm9pZDEQMA4GA1UEAwwHQW5kcm9p_nZDEiMCAGCSqGSIb3DQEJARYTYW5kcm9pZEBhbmRyb2lkLmNvbTCCASIwDQYJKoZI_nhvcNAQEBBQADggEPADCCAQoCggEBAOjreE0vTVSRenuzO9vnaWfk0eQzYab0gqpi_n6xAzi6dmDugoEKJmbPiuE5Dwf21isZ9uhUUu0dQM46dK4ocKxMRrcnmGxydFn6o_nfs3ODJMXOkv2gKXL_FdbEPdDbxzdu8z3ykW67udM_fW7WbaQ3DO0knuizKak_3_nT41c5uoXmQ81UNtAzRGzGchNVXMmWuTGOkg6U0I2Td7K8yvUMWhAWPPpKLtVH9r_nAL5TzjYNR92izdKcz3AjRsI3CTjtpiVABGeX0TcjRSuZB7K9EK56HVOFNS6I1NP_njdD7FIShyGlqqZdUOkAUZYanbpgeT5N7QL6uuqcGpoTOkalu6kkCAwEAAaNQME4w_nHQYDVR0OBBYEFH5DM_m7oArf4O3peeKO0ZIEkrQPMB8GA1UdIwQYMBaAFH5DM_m7_noArf4O3peeKO0ZIEkrQPMAwGA1UdEwQFMAMBAf8wDQYJKoZIhvcNAQEFBQADggEB_nAHO3NSvDE5jFvMehGGtS8BnFYdFKRIglDMc4niWSzhzOVYRH4WajxdtBWc5fx0ix_nNF_hVKVhP6AIOQaskHIi7RvioPPbhjcsVlZe7cUEGrLSSveGouQycj0m6_nJF84kszIl5GGNMTnx0XRPOg8t6h5LWfnVydgZfpGRRgWHewk1U2HlvTjIceb0N_ndcoJ8WKJAFWdcuE7VIm4wvF_DYX_A2Oyzr2QRhmYSv1cusgAeC1tvH4apJ1Lg_nUnOu5Kh_FqPLLSwNVQp4Bu7b9QFfqK8Moj84bj88NqRGZgDyqzuTrFxn6FW7dmyA_nyttuAJAEAymk1mipd9zp38_n_____END_CERTIFICATE______n0
xor ebx, ebx
jmp 0x45f8c3
mov eax, dword [esp + 0xbd0]
movq xmm0, qword [esp + 0xbc8]
lea ecx, [esp + 0xd28]
lea edx, [esp + 0x550]
mov dword [esp + 0x550], 2
mov dword [esp + 0x558], 2
mov dword [esp + 0x560], 0x20
mov dword [esp + 0x564], 0
mov dword [esp + 0x568], 4
mov dword [esp + 0x2b0], 0x6b2794
mov dword [esp + 0x2b4], 2
mov byte [esp + 0x56c], 3
mov dword [esp + 0x728], ecx
lea ecx, [esp + 0x728]
mov dword [esp + 0x2c0], edx
mov dword [esp + 0x2c4], 1
mov dword [esp + 0x72c], 0x476bf0
mov dword [esp + 0x2b8], ecx
mov dword [esp + 0xd30], eax
movq qword [esp + 0xd28], xmm0
mov dword [esp + 0x2bc], 1
lea eax, [esp + 0x2b0]
push eax
push 1
call fcn.00472f10
add esp, 8
mov eax, dword [esp + 8]
mov dword [eax], 0
mov dword [eax + 4], 1
mov dword [eax + 8], 0
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret
mov dword [esp + 0x28], ebx
xor edx, edx
mov bl, 1
mov dword [esp + 0x30], edi
mov edi, dword [ebp + 0x14]
mov dword [esp + 0x968], ecx
mov dword [esp + 0x96c], eax
mov dword [esp + 0x964], edx
push edi
mov edi, esi
push esi
call fcn.0046f230
add esp, 8
mov eax, dword [esp + 0xbc8]
cmp eax, 2
je 0x45f951
cmp eax, 3
jne 0x45f965
push dword [esp + 0xbd0]
push dword [esp + 0xbd0]
lea eax, [esp + 0x558]
push eax
call fcn.00472c10
add esp, 0xc
cmp dword [esp + 0x550], 0
mov ecx, dword [esp + 0x554]
mov edx, dword [esp + 0x558]
je 0x45fa4b
mov dword [esp + 0x550], ecx
mov dword [esp + 0x554], edx
lea ecx, [esp + 0x550]
call fcn.0043b8e0
jmp 0x45fa37
mov eax, 1
mov edx, 0x4c3
mov ecx, 0x6b5f34
jmp 0x45fa4d
mov eax, dword [esp + 0xbd0]
movq xmm0, qword [esp + 0xbc8]
mov dword [esp + 0x2b0], 0x6b2794
mov dword [esp + 0x2b4], 2
mov dword [esp + 0x550], 2
mov dword [esp + 0x558], 2
mov dword [esp + 0x560], 0x20
mov dword [esp + 0x564], 0
mov dword [esp + 0x568], 4
mov byte [esp + 0x56c], 3
mov dword [esp + 0xd30], eax
lea eax, [esp + 0xd28]
movq qword [esp + 0xd28], xmm0
mov dword [esp + 0x728], eax
lea eax, [esp + 0x550]
mov dword [esp + 0x72c], 0x476bf0
mov dword [esp + 0x2c0], eax
lea eax, [esp + 0x728]
mov dword [esp + 0x2c4], 1
mov dword [esp + 0x2b8], eax
mov dword [esp + 0x2bc], 1
lea eax, [esp + 0x2b0]
push eax
push 1
call fcn.00472f10
add esp, 8
test bl, bl
je 0x45f897
lea eax, [esp + 0x968]
jmp 0x462ad5
xor eax, eax
mov dword [esp + 0x894], ecx
mov dword [esp + 0x898], edx
mov dword [esp + 0x890], eax
mov eax, dword [esp + 0x96c]
movq xmm0, qword [esp + 0x964]
lea esi, [esp + 0x8a4]
mov dword [esp + 0x250], ecx
mov dword [esp + 0x10], edx
mov dword [esp + 0x8a8], eax
movq qword [esp + 0x8a0], xmm0
lea ebx, [esp + 0x2b0]
push eax
push dword [esp + 0x8a8]
push ebx
call fcn.004e59c0
add esp, 0xc
cmp dword [esp + 0x2b0], 0
je 0x45fb76
mov eax, dword [esp + 0x2e4]
movq xmm0, qword [esp + 0x2dc]
movq xmm1, qword [esp + 0x2d4]
movq xmm2, qword [esp + 0x2cc]
movq xmm3, qword [esp + 0x2c4]
movq xmm4, qword [esp + 0x2b4]
movq xmm5, qword [esp + 0x2bc]
mov dword [esp + 0xbf8], eax
movq qword [esp + 0xbf0], xmm0
movq qword [esp + 0xbe8], xmm1
movq qword [esp + 0xbe0], xmm2
movq qword [esp + 0xbd8], xmm3
movq qword [esp + 0xbd0], xmm5
movq qword [esp + 0xbc8], xmm4
movq qword [esp + 0x558], xmm4
movq qword [esp + 0x560], xmm5
movq qword [esp + 0x568], xmm3
movq qword [esp + 0x570], xmm2
movq qword [esp + 0x578], xmm1
movq qword [esp + 0x580], xmm0
mov dword [esp + 0x588], eax
jmp 0x45fc00
lea eax, [esp + 0x2b4]
push 0x148
push eax
push edi
call sub.msvcrt.dll_memcpy
add esp, 0xc
lea edi, [esp + 0x728]
push 0x148
lea eax, [esp + 0xbcc]
push eax
push edi
call sub.msvcrt.dll_memcpy
add esp, 0xc
push edi
call fcn.004e5b50
add esp, 4
cmp edx, 0xb
jne 0x45fbcf
push 0xb
push eax
push 0x6b2c72
call sub.msvcrt.dll_memcmp
add esp, 0xc
test eax, eax
je 0x460861
mov dword [esp + 0x558], 0
mov byte [esp + 0x560], 0xe
mov byte [esp + 0x564], 9
mov dword [esp + 0x568], 0x6b2c72
mov dword [esp + 0x56c], 0xb
mov dword [esp + 0x554], 0
mov dword [esp + 0x550], 2
cmp dword [esp + 0x8a0], 0
jne 0x45fc29
push esi
call fcn.00472d20
add esp, 4
mov esi, dword [esp + 0x550]
mov edi, dword [esp + 0x554]
mov eax, esi
xor eax, 2
or eax, edi
jne 0x45fdab
mov eax, dword [esp + 0x588]
movq xmm0, qword [esp + 0x580]
movq xmm1, qword [esp + 0x578]
movq xmm2, qword [esp + 0x570]
movq xmm3, qword [esp + 0x568]
movq xmm4, qword [esp + 0x558]
movq xmm5, qword [esp + 0x560]
mov dword [esp + 0x2b0], 2
mov dword [esp + 0x2b8], 2
mov dword [esp + 0x2c0], 0x20
mov dword [esp + 0x2c4], 0
mov dword [esp + 0x2c8], 4
mov dword [esp + 0xbc8], 0x6b2794
mov dword [esp + 0xbcc], 2
mov dword [esp + 0xbd8], ebx
mov byte [esp + 0x2cc], 3
mov dword [esp + 0xbdc], 1
mov dword [esp + 0x130], eax
mov dword [esp + 0x580], eax
lea eax, [esp + 0x550]
movq qword [esp + 0x128], xmm0
movq qword [esp + 0x120], xmm1
movq qword [esp + 0x118], xmm2
movq qword [esp + 0x110], xmm3
movq qword [esp + 0x108], xmm5
movq qword [esp + 0x100], xmm4
movq qword [esp + 0x578], xmm0
movq qword [esp + 0x570], xmm1
movq qword [esp + 0x568], xmm2
movq qword [esp + 0x560], xmm3
movq qword [esp + 0x558], xmm5
movq qword [esp + 0x550], xmm4
mov dword [esp + 0x728], eax
lea eax, [esp + 0x728]
mov dword [esp + 0x72c], 0x4e42f0
mov dword [esp + 0xbd0], eax
mov dword [esp + 0xbd4], 1
lea eax, [esp + 0xbc8]
push eax
push 1
call fcn.00472f10
add esp, 8
jmp 0x462ac0
movsd xmm1, qword [esp + 0x578]
movsd xmm2, qword [esp + 0x570]
mov eax, dword [esp + 0x588]
movsd xmm0, qword [esp + 0x580]
lea ecx, [esp + 0xd64]
movsd qword [esp + 0x120], xmm1
movsd xmm1, qword [esp + 0x568]
movsd qword [esp + 0x118], xmm2
movsd xmm2, qword [esp + 0x558]
mov dword [esp + 0x130], eax
lea eax, [esp + 0x58c]
movsd qword [esp + 0x128], xmm0
movsd qword [esp + 0x110], xmm1
movsd xmm1, qword [esp + 0x560]
movsd qword [esp + 0x100], xmm2
movsd qword [esp + 0x108], xmm1
push 0x134
push eax
push ecx
call sub.msvcrt.dll_memcpy
add esp, 0xc
movsd xmm1, qword [esp + 0x108]
movsd xmm2, qword [esp + 0x110]
mov eax, dword [esp + 0x130]
movq xmm0, qword [esp + 0x100]
movsd qword [esp + 0xd38], xmm1
movsd xmm1, qword [esp + 0x118]
movsd qword [esp + 0xd40], xmm2
movq xmm2, qword [esp + 0x120]
movq qword [esp + 0xd30], xmm0
mov dword [esp + 0xd60], eax
movsd qword [esp + 0xd48], xmm1
movq xmm1, qword [esp + 0x128]
movq qword [esp + 0xd50], xmm2
movq qword [esp + 0xd58], xmm1
mov dword [esp + 0xd2c], edi
mov dword [esp + 0xd28], esi
push dword [esp + 0x10]
push dword [esp + 0x254]
push ebx
call fcn.005ff1e0
add esp, 0xc
movzx eax, byte [esp + 0x2f4]
cmp al, 0x18
jne 0x45ffc6
movq xmm0, qword [esp + 0x2e0]
movq xmm1, qword [esp + 0x2d8]
movq xmm2, qword [esp + 0x2d0]
movq xmm3, qword [esp + 0x2c8]
movq xmm4, qword [esp + 0x2c0]
movq xmm5, qword [esp + 0x2b0]
movq xmm6, qword [esp + 0x2b8]
mov eax, dword [esp + 0x250]
mov ecx, dword [esp + 0x10]
movq qword [esp + 0x130], xmm0
movq qword [esp + 0x128], xmm1
movq qword [esp + 0x120], xmm2
movq qword [esp + 0x118], xmm3
movq qword [esp + 0x110], xmm4
movq qword [esp + 0x108], xmm6
movq qword [esp + 0x100], xmm5
movq qword [esp + 0x72c], xmm5
movq qword [esp + 0x734], xmm6
movq qword [esp + 0x73c], xmm4
movq qword [esp + 0x744], xmm3
movq qword [esp + 0x74c], xmm2
movq qword [esp + 0x754], xmm1
movq qword [esp + 0x75c], xmm0
mov dword [esp + 0x728], 2
jmp 0x460046
lea ebx, [esp + 0x100]
lea esi, [esp + 0x2b0]
mov ecx, 0x11
lea edx, [esp + 0x550]
mov edi, ebx
rep movsd dword es:[edi], dword [esi]
mov esi, ebx
mov edi, edx
lea ebx, [esp + 0x2b0]
movzx ecx, byte [esp + 0x2f7]
mov byte [esp + 0x597], cl
movzx ecx, word [esp + 0x2f5]
mov word [esp + 0x595], cx
mov ecx, 0x11
rep movsd dword es:[edi], dword [esi]
mov byte [esp + 0x594], al
lea esi, [esp + 0x728]
push edx
push esi
call fcn.005ef0b0
add esp, 8
cmp dword [esp + 0x728], 2
mov eax, dword [esp + 0x250]
mov ecx, dword [esp + 0x10]
jne 0x460292
push ecx
push eax
lea eax, [esp + 0x558]
push eax
call fcn.005ff1e0
add esp, 0xc
movzx eax, byte [esp + 0x594]
cmp al, 0x18
jne 0x460074
mov eax, dword [esp + 0x250]
mov edx, dword [esp + 0x10]
jmp 0x4606e2
mov esi, dword [esp + 0x590]
movq xmm4, qword [esp + 0x588]
mov ah, byte [esp + 0x597]
movsd xmm0, qword [esp + 0x550]
mov ecx, dword [esp + 0x558]
mov edx, dword [esp + 0x55c]
movdqu xmm1, xmmword [esp + 0x560]
movdqu xmm2, xmmword [esp + 0x570]
movq xmm3, qword [esp + 0x580]
lea edi, [esp + 0x2c0]
mov dword [esp + 0x4d0], esi
movzx esi, word [esp + 0x595]
movq qword [esp + 0x4c8], xmm4
mov byte [esp + 0x2f7], ah
mov word [esp + 0x2f5], si
movsd qword [esp + 0x2b0], xmm0
mov dword [esp + 0x2b8], ecx
mov dword [esp + 0x2bc], edx
mov edx, dword [esp + 0x4d0]
movq xmm0, qword [esp + 0x4c8]
movdqu xmmword [esp + 0x2c0], xmm1
movdqu xmmword [esp + 0x2d0], xmm2
movq qword [esp + 0x2e0], xmm3
mov dword [esp + 0x2f0], edx
movq qword [esp + 0x2e8], xmm0
mov byte [esp + 0x2f4], al
lea esi, [esp + 0xa0]
push 0x28
push 0x6b2ce8
push esi
call sub.msvcrt.dll_memcpy
add esp, 0xc
lea ebx, [esp + 0x100]
push 0x28
push 0x6b2d38
push ebx
call sub.msvcrt.dll_memcpy
add esp, 0xc
push ebx
lea ebx, [esp + 0x2b4]
push esi
push edi
lea eax, [esp + 0x55c]
push eax
call fcn.005fc7a0
add esp, 0x10
mov eax, dword [esp + 0x550]
cmp eax, 6
jne 0x460659
mov edx, dword [esp + 0x2b8]
lea edi, [esp + 0x550]
mov ecx, edi
push dword [esp + 0x2bc]
call fcn.00412400
add esp, 4
cmp dword [esp + 0x550], 0
je 0x460aa4
movq xmm0, qword [esp + 0x564]
movq xmm1, qword [esp + 0x56c]
movq xmm2, qword [esp + 0x574]
movq xmm3, qword [esp + 0x57c]
mov edi, dword [esp + 0x584]
mov eax, dword [esp + 0x554]
mov ecx, dword [esp + 0x558]
mov edx, dword [esp + 0x55c]
mov esi, dword [esp + 0x560]
movq qword [esp + 0x100], xmm0
movq qword [esp + 0x108], xmm1
movq qword [esp + 0x110], xmm2
movq qword [esp + 0x118], xmm3
mov dword [esp + 0x120], edi
movq qword [esp + 0x22c], xmm0
movq qword [esp + 0x234], xmm1
movq qword [esp + 0x23c], xmm2
movq qword [esp + 0x244], xmm3
mov dword [esp + 0x24c], edi
mov dword [esp + 0x218], 0
mov dword [esp + 0x21c], eax
mov dword [esp + 0x220], ecx
mov dword [esp + 0x224], edx
mov dword [esp + 0x228], esi
jmp 0x4606d7
push 0x148
push esi
lea eax, [esp + 0x2b8]
push eax
call sub.msvcrt.dll_memcpy
add esp, 0xc
mov eax, dword [0x6b6a34]
movzx eax, byte [eax]
push 8
push 0x70
call fcn.004ed010
add esp, 8
test eax, eax
je 0x463b27
mov dword [eax + 0x1c], 0x5be0cd19
mov dword [eax + 0x18], 0x1f83d9ab
mov dword [eax + 0x14], 0x9b05688c
mov dword [eax + 0x10], 0x510e527f
mov dword [eax + 0xc], 0xa54ff53a
mov dword [eax + 8], 0x3c6ef372
mov dword [eax + 4], 0xbb67ae85
mov dword [eax], 0x6a09e667
mov dword [eax + 0x24], 0
mov dword [eax + 0x20], 0
mov dword [eax + 0x2c], 0
mov dword [eax + 0x28], 0
mov dword [eax + 0x34], 0
mov dword [eax + 0x30], 0
mov dword [eax + 0x3c], 0
mov dword [eax + 0x38], 0
mov dword [eax + 0x44], 0
mov dword [eax + 0x40], 0
mov dword [eax + 0x4c], 0
mov dword [eax + 0x48], 0
mov dword [eax + 0x54], 0
mov dword [eax + 0x50], 0
mov dword [eax + 0x5c], 0
mov dword [eax + 0x58], 0
mov dword [eax + 0x64], 0
mov dword [eax + 0x60], 0
mov dword [esp + 0x2c], eax
mov byte [eax + 0x68], 0
push 0x148
push esi
lea eax, [esp + 0x558]
push eax
call sub.msvcrt.dll_memcpy
add esp, 0xc
lea ecx, [esp + 0x430]
call fcn.00427410
mov eax, dword [esp + 0x550]
movups xmm1, xmmword [esp + 0x564]
movsd xmm0, qword [esp + 0x554]
movups xmm2, xmmword [esp + 0x574]
mov ebx, dword [esp + 0x55c]
lea esi, [esp + 0x58c]
lea edi, [esp + 0xa0]
mov ecx, 0x17
mov dword [esp + 0x10], eax
mov eax, dword [esp + 0x560]
movaps xmmword [esp + 0x480], xmm1
movsd xmm1, qword [esp + 0x584]
movsd qword [esp + 0x250], xmm0
movaps xmmword [esp + 0x870], xmm2
mov dword [esp + 0x280], eax
movaps xmmword [esp + 0x980], xmm1
lea eax, [esp + 0x5e8]
rep movsd dword es:[edi], dword [esi]
push 0xb0
push eax
lea eax, [esp + 0x108]
push eax
call sub.msvcrt.dll_memcpy
add esp, 0xc
mov eax, dword [esp + 0x438]
movsd xmm1, qword [esp + 0x250]
movsd xmm0, qword [esp + 0x430]
movaps xmm2, xmmword [esp + 0x480]
mov dword [esp + 0x3c], ebx
lea edi, [esp + 0x9e0]
mov ecx, 0x17
lea esi, [esp + 0xa0]
mov dword [esp + 0x1b8], eax
movsd qword [esp + 0x4d8], xmm1
mov eax, dword [esp + 0x280]
movaps xmm1, xmmword [esp + 0x870]
movsd qword [esp + 0x1b0], xmm0
movaps xmmword [esp + 0x990], xmm2
mov dword [esp + 0x38], eax
movaps xmmword [esp + 0x9a0], xmm1
rep movsd dword es:[edi], dword [esi]
lea ebx, [esp + 0x8a0]
push 0xc0
lea eax, [esp + 0x104]
push eax
push ebx
call sub.msvcrt.dll_memcpy
add esp, 0xc
mov eax, dword [esp + 0x3c]
movq xmm0, qword [esp + 0x4d8]
movdqa xmm2, xmmword [esp + 0x990]
movdqa xmm1, xmmword [esp + 0x9a0]
lea edi, [esp + 0xa90]
mov ecx, 0x17
lea esi, [esp + 0x9e0]
mov dword [esp + 0x280], eax
mov eax, dword [esp + 0x38]
movdqa xmmword [esp + 0x250], xmm0
movdqa xmmword [esp + 0x870], xmm2
movdqa xmmword [esp + 0x970], xmm1
mov dword [esp + 0x480], eax
rep movsd dword es:[edi], dword [esi]
lea eax, [esp + 0xaf0]
push 0xc0
push ebx
push eax
call sub.msvcrt.dll_memcpy
mov eax, dword [esp + 0x1c]
add esp, 0xc
mov ebx, 0x6b3348
cmp eax, 4
je 0x462a70
movdqa xmm0, xmmword [esp + 0x250]
mov ecx, dword [esp + 0x280]
movaps xmm1, xmmword [esp + 0x870]
movdqa xmm2, xmmword [esp + 0x970]
lea edi, [esp + 0xc04]
lea esi, [esp + 0xa90]
movq qword [esp + 0xbcc], xmm0
mov dword [esp + 0xbd4], ecx
mov ecx, dword [esp + 0x480]
mov dword [esp + 0xbd8], ecx
movups xmmword [esp + 0xbdc], xmm1
movdqa xmm1, xmmword [esp + 0x980]
movdqu xmmword [esp + 0xbec], xmm2
mov ecx, 0x17
movq qword [esp + 0xbfc], xmm1
rep movsd dword es:[edi], dword [esi]
mov esi, eax
lea eax, [esp + 0xc60]
lea ecx, [esp + 0xaf0]
push 0xc0
push ecx
push eax
call sub.msvcrt.dll_memcpy
add esp, 0xc
dec dword [esp + 0xc]
mov eax, dword [esp + 0x2c]
mov dword [esp + 0xbc8], esi
mov dword [esp + 0x4e0], ebx
mov dword [esp + 0xd20], eax
mov dword [esp + 0xd24], ebx
je 0x460879
mov ecx, dword [esp + 0xc]
mov edx, dword [esp + 0x28]
mov esi, 0xa400fb81
jmp 0x46062b
inc edx
dec ecx
je 0x460879
movzx ebx, byte [edx]
mov eax, ebx
add al, 0xd0
cmp al, 0xa
jb 0x460623
mov eax, ebx
and al, 0xdf
add al, 0xbf
cmp al, 0x19
jbe 0x460623
add ebx, 0xffffffe0
cmp ebx, 0x1f
ja 0x46064d
bt esi, ebx
jb 0x460623
lea edi, [esp + 0x2b0]
jmp 0x460a26
movsd xmm1, qword [esp + 0x574]
movsd xmm2, qword [esp + 0x56c]
movq xmm0, qword [esp + 0x57c]
movsd qword [esp + 0x240], xmm1
movsd xmm1, qword [esp + 0x564]
movsd qword [esp + 0x238], xmm2
movq xmm2, qword [esp + 0x554]
movq qword [esp + 0x248], xmm0
movsd qword [esp + 0x230], xmm1
movq xmm1, qword [esp + 0x55c]
movq qword [esp + 0x220], xmm2
movq qword [esp + 0x228], xmm1
mov dword [esp + 0x218], 3
mov dword [esp + 0x21c], eax
mov edx, dword [esp + 0x10]
mov eax, dword [esp + 0x250]
push edx
push eax
lea eax, [esp + 0x558]
push eax
call fcn.005ff1e0
add esp, 0xc
movzx eax, byte [esp + 0x594]
cmp al, 0x18
je 0x462a11
movsd xmm0, qword [esp + 0x588]
mov esi, dword [esp + 0x590]
mov ecx, dword [esp + 0x558]
mov edx, dword [esp + 0x55c]
mov ah, byte [esp + 0x597]
movdqu xmm1, xmmword [esp + 0x560]
movdqu xmm2, xmmword [esp + 0x570]
movq xmm3, qword [esp + 0x580]
movsd qword [esp + 0xd8], xmm0
mov dword [esp + 0xe0], esi
movzx esi, word [esp + 0x595]
movq xmm0, qword [esp + 0x550]
mov byte [esp + 0xe7], ah
mov word [esp + 0xe5], si
movq qword [esp + 0xa0], xmm0
mov dword [esp + 0xa8], ecx
mov dword [esp + 0xac], edx
movdqu xmmword [esp + 0xb0], xmm1
movdqu xmmword [esp + 0xc0], xmm2
movq qword [esp + 0xd0], xmm3
lea esi, [esp + 0xb0]
mov byte [esp + 0xe4], al
lea edi, [esp + 0x100]
push 0x28
push 0x6b2ce8
push edi
call sub.msvcrt.dll_memcpy
add esp, 0xc
push 0x28
push 0x6b2d10
push ebx
call sub.msvcrt.dll_memcpy
add esp, 0xc
push ebx
push edi
push esi
lea eax, [esp + 0x55c]
push eax
call fcn.005fc7a0
add esp, 0x10
cmp dword [esp + 0x550], 6
jne 0x462a11
mov edx, dword [esp + 0xa8]
lea ecx, [esp + 0x550]
push dword [esp + 0xac]
call fcn.00412400
add esp, 4
cmp dword [esp + 0x550], 0
jne 0x462a11
mov eax, dword [esp + 0x558]
mov ecx, dword [esp + 0x560]
mov edx, dword [esp + 0x554]
mov esi, dword [esp + 0x55c]
cmp eax, 0x30
mov dword [esp + 0x10], ecx
jne 0x460d78
lea ecx, [esp + 0x550]
call fcn.0040fc50
jmp 0x460dcf
lea ecx, [esp + 0x550]
lea edx, [esp + 0x728]
call fcn.00427690
jmp 0x45fc16
push dword [esp + 0xc]
mov esi, dword [esp + 0x2c]
push esi
lea eax, [esp + 0x558]
push eax
call fcn.004e66a0
add esp, 0xc
lea edi, [esp + 0x2b0]
cmp dword [esp + 0x550], 2
jne 0x460a26
push dword [esp + 0xc]
push esi
lea eax, [esp + 0x558]
push eax
call fcn.004e8940
add esp, 0xc
cmp dword [esp + 0x550], 2
jne 0x461195
movzx ecx, word [esp + 0x559]
mov eax, dword [ebp + 8]
mov word [esp + 0x295], cx
movzx ecx, byte [esp + 0x55b]
mov byte [esp + 0x297], cl
mov ecx, dword [esp + 0x554]
mov dword [esp + 0x290], ecx
movzx ecx, byte [esp + 0x558]
mov byte [esp + 0x294], cl
mov ecx, dword [esp + 0x560]
mov dword [esp + 0x29c], ecx
mov ecx, dword [esp + 0x55c]
mov dword [esp + 0x298], ecx
mov ecx, dword [esp + 0x4e0]
mov dword [esp + 0x2a0], eax
mov dword [esp + 0x2a4], 0
mov ebx, dword [ecx + 0xc]
mov cl, 1
mov dword [esp + 0xc], ecx
push eax
push dword [esp + 0x34]
push dword [esp + 0x34]
call ebx
add esp, 0xc
lea esi, [esp + 0x2b0]
lea edx, [esp + 0x290]
mov ecx, esi
call fcn.00414ae0
mov edi, dword [esp + 0x2b0]
cmp edi, 2
jne 0x461770
mov dword [esp + 0x10], edi
mov edi, dword [esp + 0x2b4]
mov esi, dword [esp + 0x2b8]
push dword [esp + 0x2bc]
push esi
push dword [esp + 0x34]
call ebx
add esp, 0xc
test edi, edi
je 0x4609ad
push 1
push edi
push esi
call fcn.004ed020
add esp, 0xc
push 0x160
lea eax, [esp + 0xbcc]
push eax
lea esi, [esp + 0x558]
push esi
call sub.msvcrt.dll_memcpy
add esp, 0xc
mov dword [esp + 0xc], 0
lea ecx, [esp + 0x2b0]
mov edx, esi
call fcn.0044d170
mov edi, dword [esp + 0x10]
mov esi, dword [esp + 0x2b0]
cmp esi, 0x80000000
je 0x4618a2
movzx ecx, byte [esp + 0xe7c]
mov eax, dword [esp + 0x2b4]
mov ebx, dword [esp + 0x2b8]
cmp cl, 0x17
mov dword [esp + 0xc], eax
mov byte [esp + 0x250], cl
jne 0x4618cd
jmp 0x461951
mov byte [esp + 0x72a], 0xc
mov word [esp + 0x728], 0xc0c
movzx eax, byte [esp + 0x72a]
movsd xmm1, qword [esp + 0x558]
movq xmm0, qword [esp + 0x550]
movq xmm2, qword [esp + 0x560]
mov byte [esp + 0x102], al
movzx eax, word [esp + 0x728]
movsd qword [esp + 0x2b8], xmm1
movq xmm1, qword [esp + 0x568]
movq qword [esp + 0x2b0], xmm0
movq qword [esp + 0x2c0], xmm2
mov word [esp + 0x100], ax
movq qword [esp + 0x2c8], xmm1
jmp 0x4611a7
mov ecx, dword [esp + 0x55c]
mov eax, dword [esp + 0x558]
mov edx, dword [esp + 0x554]
mov dword [esp + 0x280], ecx
mov ecx, dword [esp + 0x560]
cmp eax, 0x20
mov dword [esp + 0x480], ecx
jne 0x460ae4
lea ecx, [esp + 0x100]
call fcn.0040fe60
jmp 0x460c28
mov ecx, eax
and ecx, 0xfffffff8
cmp ecx, 0x18
jne 0x460c36
mov ecx, esi
pxor xmm0, xmm0
sub ecx, eax
movdqa xmmword [esp + 0xb0], xmm0
movdqa xmmword [esp + 0xa0], xmm0
add ecx, 0x20
push eax
push edx
push ecx
call sub.msvcrt.dll_memcpy
add esp, 0xc
lea ecx, [esp + 0x100]
mov edx, esi
call fcn.0040fe60
mov byte [esp + 0xa0], 0
mov byte [esp + 0xa1], 0
mov byte [esp + 0xa2], 0
mov byte [esp + 0xa3], 0
mov byte [esp + 0xa4], 0
mov byte [esp + 0xa5], 0
mov byte [esp + 0xa6], 0
mov byte [esp + 0xa7], 0
mov byte [esp + 0xa8], 0
mov byte [esp + 0xa9], 0
mov byte [esp + 0xaa], 0
mov byte [esp + 0xab], 0
mov byte [esp + 0xac], 0
mov byte [esp + 0xad], 0
mov byte [esp + 0xae], 0
mov byte [esp + 0xaf], 0
mov byte [esp + 0xb0], 0
mov byte [esp + 0xb1], 0
mov byte [esp + 0xb2], 0
mov byte [esp + 0xb3], 0
mov byte [esp + 0xb4], 0
mov byte [esp + 0xb5], 0
mov byte [esp + 0xb6], 0
mov byte [esp + 0xb7], 0
mov byte [esp + 0xb8], 0
mov byte [esp + 0xb9], 0
mov byte [esp + 0xba], 0
mov byte [esp + 0xbb], 0
mov byte [esp + 0xbc], 0
mov byte [esp + 0xbd], 0
mov byte [esp + 0xbe], 0
mov byte [esp + 0xbf], 0
cmp dword [esp + 0x100], 0
je 0x461302
movzx eax, word [esp + 0x568]
movsd xmm0, qword [esp + 0x550]
movq xmm1, qword [esp + 0x558]
movq xmm2, qword [esp + 0x560]
movq xmm3, qword [esp + 0x56a]
movq xmm4, qword [esp + 0x572]
mov edx, dword [esp + 0x10]
mov word [esp + 0x538], ax
mov al, 9
movsd qword [esp + 0x430], xmm0
movq qword [esp + 0x438], xmm1
movq qword [esp + 0x440], xmm2
movq qword [esp + 0x540], xmm3
movq qword [esp + 0x548], xmm4
movsd qword [esp + 0x520], xmm0
movq qword [esp + 0x528], xmm1
movq qword [esp + 0x530], xmm2
movq xmm0, qword [esp + 0x520]
movq xmm1, qword [esp + 0x528]
movq xmm2, qword [esp + 0x530]
movzx ecx, word [esp + 0x538]
movq xmm3, qword [esp + 0x540]
movq xmm4, qword [esp + 0x548]
movq qword [esp + 0x500], xmm0
movq qword [esp + 0x508], xmm1
movq qword [esp + 0x510], xmm2
mov word [esp + 0x518], cx
movq qword [esp + 0x240], xmm3
movq qword [esp + 0x248], xmm4
movq qword [esp + 0x226], xmm0
movq qword [esp + 0x22e], xmm1
movq qword [esp + 0x236], xmm2
mov word [esp + 0x23e], cx
mov dword [esp + 0x218], 0
mov dword [esp + 0x21c], 0
mov byte [esp + 0x224], 0x17
mov byte [esp + 0x225], al
jmp 0x4606db
lea ecx, [eax - 0x18]
cmp ecx, 0x18
jae 0x462a11
mov ecx, ebx
pxor xmm0, xmm0
sub ecx, eax
movdqa xmmword [esp + 0x2d0], xmm0
movdqa xmmword [esp + 0x2c0], xmm0
movdqa xmmword [esp + 0x2b0], xmm0
add ecx, 0x30
push eax
push edx
push ecx
call sub.msvcrt.dll_memcpy
add esp, 0xc
lea ecx, [esp + 0x550]
mov edx, ebx
call fcn.0040fc50
lea ecx, [esp + 0x2b0]
call fcn.0042d7e0
cmp dword [esp + 0x550], 0
jne 0x462a11
movzx eax, word [esp + 0x55a]
mov edx, dword [esp + 0x55c]
mov ecx, dword [esp + 0x560]
test esi, esi
mov word [esp + 0x9c0], ax
mov word [esp + 0x216], ax
mov eax, dword [esp + 0x564]
mov dword [esp + 0x88], edx
mov dword [esp + 0x84], ecx
mov dword [esp + 0x250], eax
mov dword [esp + 0x80], eax
mov eax, dword [esp + 0x568]
mov dword [esp + 0x280], eax
mov dword [esp + 0x7c], eax
mov eax, dword [esp + 0x56c]
mov dword [esp + 0x480], eax
mov dword [esp + 0x78], eax
mov eax, dword [esp + 0x570]
mov dword [esp + 0x870], eax
mov dword [esp + 0x74], eax
mov eax, dword [esp + 0x574]
mov dword [esp + 0x2c], eax
mov dword [esp + 0x70], eax
mov eax, dword [esp + 0x578]
mov dword [esp + 0x980], eax
mov dword [esp + 0x210], eax
mov eax, dword [esp + 0x57c]
mov dword [esp + 0x970], eax
mov dword [esp + 0x20c], eax
mov eax, dword [esp + 0x580]
mov dword [esp + 0x4e0], eax
mov dword [esp + 0x89c], eax
mov eax, dword [esp + 0x554]
mov dword [esp + 0x208], eax
mov dword [esp + 0x8c], eax
movzx eax, byte [esp + 0x558]
mov byte [esp + 0x9b0], al
mov byte [esp + 0x34], al
movzx eax, byte [esp + 0x559]
mov byte [esp + 0x37], al
je 0x462d20
cmp dword [esp + 0x10], 0
mov byte [esp + 0x9d0], al
je 0x4628ce
movsx eax, byte [esi]
cmp eax, 5
ja 0x4628ce
mov dword [esp + 0x42c], ecx
mov ecx, 0x3d
bt ecx, eax
jae 0x4628ce
mov ecx, dword [esp + 0x10]
cmp dword [eax*4 + 0x6b6a1c], ecx
jne 0x4628ce
mov eax, dword [esp + 0x10]
xor ecx, ecx
add eax, 0xffffff9f
neg eax
mov dword [esp + 0x428], eax
mov eax, dword [esp + 0x10]
cmp eax, 0x61
lea eax, [esp + eax + 0x550]
cmovb ecx, dword [esp + 0x428]
push ecx
push 0
push eax
mov dword [esp + 0x434], edx
call sub.msvcrt.dll_memset
add esp, 0xc
push dword [esp + 0x10]
push esi
lea eax, [esp + 0x558]
push eax
call sub.msvcrt.dll_memcpy
add esp, 0xc
movzx eax, word [esp + 0x550]
movzx esi, word [esp + 0x55b]
mov word [esp + 0x100], ax
movzx eax, byte [esp + 0x552]
mov byte [esp + 0x102], al
lea eax, [esp + 0x55d]
push 0x54
push eax
push ebx
call sub.msvcrt.dll_memcpy
add esp, 0xc
movsd xmm0, qword [esp + 0x553]
lea eax, [esp + 0x10d]
movsd qword [esp + 0x10], xmm0
push 0x54
push ebx
push eax
call sub.msvcrt.dll_memcpy
add esp, 0xc
mov eax, dword [esp + 0x208]
movq xmm0, qword [esp + 0x10]
mov dword [esp + 0x550], eax
movzx eax, byte [esp + 0x9b0]
movq qword [esp + 0x103], xmm0
mov word [esp + 0x10b], si
mov byte [esp + 0x554], al
movzx eax, byte [esp + 0x9d0]
mov byte [esp + 0x555], al
movzx eax, word [esp + 0x9c0]
mov word [esp + 0x556], ax
mov eax, dword [esp + 0x428]
mov dword [esp + 0x558], eax
mov eax, dword [esp + 0x42c]
mov dword [esp + 0x55c], eax
mov eax, dword [esp + 0x250]
mov dword [esp + 0x560], eax
mov eax, dword [esp + 0x280]
mov dword [esp + 0x564], eax
mov eax, dword [esp + 0x480]
mov dword [esp + 0x568], eax
mov eax, dword [esp + 0x870]
mov dword [esp + 0x56c], eax
mov eax, dword [esp + 0x2c]
mov dword [esp + 0x570], eax
mov eax, dword [esp + 0x980]
mov dword [esp + 0x574], eax
mov eax, dword [esp + 0x970]
mov dword [esp + 0x578], eax
mov eax, dword [esp + 0x4e0]
mov dword [esp + 0x57c], eax
lea eax, [esp + 0x430]
lea ecx, [esp + 0x550]
push ecx
push eax
call fcn.00523dd0
add esp, 8
lea esi, [esp + 0x430]
lea ecx, [esp + 0x550]
mov edx, esi
mov dword [esp + 0x88c], ecx
call fcn.0040fb30
movzx ebx, byte [esp + 0x100]
lea eax, [ebx - 2]
cmp eax, 4
jae 0x462ceb
lea eax, [esp + 0x1c8]
lea ecx, [esp + 0x550]
push ecx
push eax
call fcn.00525c20
add esp, 8
lea eax, [esp + 0x580]
lea esi, [esp + 0x430]
push eax
push esi
call fcn.00525c20
add esp, 8
movsx eax, bl
mov dword [esp + 0x10], eax
and al, 0xfe
cmp al, 2
jne 0x46269e
push 0x30
push esi
call fcn.006048c0
add esp, 8
mov byte [esp + 0x36], al
movdqu xmm1, xmmword [esp + 0x1e7]
movups xmm0, xmmword [esp + 0x1d7]
movzx eax, byte [esp + 0x1f7]
xor ebx, ebx
movdqa xmmword [esp + 0xa70], xmm1
pxor xmm1, xmm1
movaps xmmword [esp + 0xa80], xmm0
mov byte [esp + 0x35], al
movdqa xmmword [esp + 0xa40], xmm1
movdqa xmmword [esp + 0xa60], xmm1
jmp 0x462731
mov word [esp + 0x100], 0xc0c
mov byte [esp + 0x102], 0xc
movsd xmm1, qword [esp + 0x2c0]
movq xmm2, qword [esp + 0x2b0]
movzx eax, byte [esp + 0x102]
movq xmm0, qword [esp + 0x2c8]
movzx ecx, word [esp + 0x100]
mov dword [esp + 0x728], 0x6b2794
mov dword [esp + 0x72c], 2
mov dword [esp + 0x738], edi
mov dword [esp + 0x2b0], 2
mov dword [esp + 0x73c], 1
movsd qword [esp + 0x574], xmm1
movq xmm1, qword [esp + 0x2b8]
mov byte [esp + 0x8a2], al
movq qword [esp + 0x57c], xmm0
movq qword [esp + 0x564], xmm2
mov dword [esp + 0x2b8], 2
mov dword [esp + 0x2c0], 0x20
mov dword [esp + 0x2c4], 0
mov dword [esp + 0x2c8], 4
mov word [esp + 0x8a0], cx
mov byte [esp + 0x2cc], 3
movq qword [esp + 0x56c], xmm1
mov byte [esp + 0x55b], al
lea eax, [esp + 0x550]
mov word [esp + 0x559], cx
mov dword [esp + 0x550], 0
mov byte [esp + 0x558], 0x17
mov dword [esp + 0x560], 0
mov dword [esp + 0x55c], 0
mov dword [esp + 0x100], eax
lea eax, [esp + 0x100]
mov dword [esp + 0x104], fcn.004e42f0
mov dword [esp + 0x730], eax
mov dword [esp + 0x734], 1
lea eax, [esp + 0x728]
push eax
push 1
call fcn.00472f10
add esp, 8
lea ecx, [esp + 0xbc8]
call fcn.0042db80
jmp 0x462a70
movzx eax, word [esp + 0x122]
movq xmm0, qword [esp + 0x11a]
movq xmm1, qword [esp + 0x112]
movq xmm2, qword [esp + 0x10a]
mov edx, dword [esp + 0x104]
movzx ecx, byte [esp + 0x108]
mov ch, byte [esp + 0x109]
cmp dword [esp + 0x280], 0
movq qword [esp + 0x430], xmm2
movq qword [esp + 0x438], xmm1
movq qword [esp + 0x440], xmm0
mov word [esp + 0x448], ax
movq qword [esp + 0x266], xmm2
movq qword [esp + 0x26e], xmm1
movq qword [esp + 0x276], xmm0
mov word [esp + 0x27e], ax
mov dword [esp + 0x260], edx
mov byte [esp + 0x264], cl
mov byte [esp + 0x265], ch
je 0x4621da
cmp dword [esp + 0x480], 0
je 0x46265d
mov eax, dword [esp + 0x280]
movsx eax, byte [eax]
cmp eax, 5
ja 0x46265d
mov byte [esp + 0x870], cl
mov byte [esp + 0x2c], ch
mov ecx, 0x3d
bt ecx, eax
jae 0x46265d
mov ecx, dword [esp + 0x480]
cmp dword [eax*4 + 0x6b6a04], ecx
jne 0x46265d
mov ebx, dword [esp + 0x480]
xor ecx, ecx
mov dword [esp + 0x42c], edx
lea eax, [ebx - 0x41]
neg eax
cmp ebx, 0x41
cmovb ecx, eax
lea eax, [esp + ebx + 0x550]
push ecx
push 0
push eax
call sub.msvcrt.dll_memset
add esp, 0xc
push ebx
push dword [esp + 0x284]
push edi
call sub.msvcrt.dll_memcpy
add esp, 0xc
movsd xmm0, qword [esp + 0x55d]
movzx eax, word [esp + 0x550]
mov ecx, dword [esp + 0x58d]
movsd qword [esp + 0x100], xmm0
movsd xmm0, qword [esp + 0x565]
mov word [esp + 0x430], ax
movzx eax, byte [esp + 0x552]
mov dword [esp + 0x130], ecx
movsd xmm1, qword [esp + 0x100]
mov ecx, dword [esp + 0x130]
movsd qword [esp + 0x108], xmm0
movsd xmm0, qword [esp + 0x56d]
mov byte [esp + 0x432], al
movzx eax, word [esp + 0x55b]
movsd xmm2, qword [esp + 0x108]
movsd qword [esp + 0x43d], xmm1
mov dword [esp + 0x46d], ecx
movsd qword [esp + 0x110], xmm0
movsd xmm0, qword [esp + 0x575]
movsd qword [esp + 0x445], xmm2
movq xmm1, qword [esp + 0x110]
movsd qword [esp + 0x118], xmm0
movsd xmm0, qword [esp + 0x57d]
movsd xmm2, qword [esp + 0x118]
movq qword [esp + 0x44d], xmm1
movsd qword [esp + 0x120], xmm0
movsd xmm0, qword [esp + 0x585]
movq xmm3, qword [esp + 0x120]
movsd qword [esp + 0x455], xmm2
movsd qword [esp + 0x128], xmm0
movq xmm0, qword [esp + 0x553]
movq xmm2, qword [esp + 0x128]
movq qword [esp + 0x45d], xmm3
movq qword [esp + 0x465], xmm2
movq qword [esp + 0x433], xmm0
mov word [esp + 0x43b], ax
lea eax, [esp + 0x260]
mov edx, 0x6b28c4
lea ecx, [esp + 0x550]
push eax
call fcn.0043f950
add esp, 4
lea edi, [esp + 0x100]
lea edx, [esp + 0x550]
mov ecx, edi
mov dword [esp + 0x480], edx
call fcn.0043c110
movsd xmm1, qword [esp + 0x130]
movsd xmm2, qword [esp + 0x128]
movzx eax, byte [esp + 0x140]
movzx ebx, byte [esp + 0x430]
movq xmm0, qword [esp + 0x138]
movsd qword [esp + 0x1f8], xmm1
movsd xmm1, qword [esp + 0x120]
movsd qword [esp + 0x1f0], xmm2
movsd xmm2, qword [esp + 0x118]
mov byte [esp + 0x980], al
lea eax, [ebx - 2]
movq qword [esp + 0x200], xmm0
cmp eax, 4
movsd qword [esp + 0x1e8], xmm1
movsd xmm1, qword [esp + 0x110]
movsd qword [esp + 0x1e0], xmm2
movq xmm2, qword [esp + 0x100]
movsd qword [esp + 0x1d8], xmm1
movq xmm1, qword [esp + 0x108]
movq qword [esp + 0x1c8], xmm2
movq qword [esp + 0x1d0], xmm1
jae 0x462cb3
movsd xmm1, qword [esp + 0x1d8]
movq xmm0, qword [esp + 0x1e0]
movq xmm2, qword [esp + 0x1c8]
movsd qword [esp + 0x560], xmm1
movq xmm1, qword [esp + 0x1d0]
movq qword [esp + 0x568], xmm0
movq qword [esp + 0x550], xmm2
movq qword [esp + 0x558], xmm1
lea ecx, [esp + 0x550]
lea eax, [esp + 0x290]
mov dword [esp + 0x480], ecx
push ecx
push eax
call fcn.00539170
add esp, 8
movsd xmm1, qword [esp + 0x1f8]
movq xmm0, qword [esp + 0x200]
movq xmm2, qword [esp + 0x1e8]
movsd qword [esp + 0x560], xmm1
movq xmm1, qword [esp + 0x1f0]
movq qword [esp + 0x568], xmm0
movq qword [esp + 0x550], xmm2
movq qword [esp + 0x558], xmm1
lea eax, [esp + 0x550]
push eax
push edi
call fcn.00539170
add esp, 8
movsx eax, bl
mov dword [esp + 0x280], eax
and al, 0xfe
cmp al, 2
jne 0x461fc2
push 0x20
push edi
call fcn.006048c0
add esp, 8
mov byte [esp + 0x970], al
movups xmm0, xmmword [esp + 0x29f]
movzx eax, byte [esp + 0x2af]
xor ebx, ebx
movaps xmmword [esp + 0x4e0], xmm0
xorps xmm0, xmm0
mov byte [esp + 0x208], al
movaps xmmword [esp + 0x9c0], xmm0
movaps xmmword [esp + 0x9b0], xmm0
jmp 0x462042
mov eax, dword [esp + 0x2e0]
movsd xmm1, qword [esp + 0x2d0]
movq xmm0, qword [esp + 0x2d8]
movq xmm2, qword [esp + 0x2c8]
mov dword [esp + 0x728], 0x6b2794
mov dword [esp + 0x72c], 2
mov dword [esp + 0x738], esi
mov dword [esp + 0x73c], 1
mov dword [esp + 0x580], eax
movsd qword [esp + 0x570], xmm1
movq xmm1, qword [esp + 0x2c0]
mov eax, dword [esp + 0x2b4]
movq qword [esp + 0x578], xmm0
movq qword [esp + 0x568], xmm2
movq qword [esp + 0x560], xmm1
mov dword [esp + 0x550], edi
mov dword [esp + 0x554], eax
mov eax, dword [esp + 0x2b8]
mov dword [esp + 0x558], eax
mov eax, dword [esp + 0x2bc]
mov dword [esp + 0x2b0], 2
mov dword [esp + 0x2b8], 2
mov dword [esp + 0x2c0], 0x20
mov dword [esp + 0x2c4], 0
mov dword [esp + 0x2c8], 4
mov byte [esp + 0x2cc], 3
mov dword [esp + 0x55c], eax
lea eax, [esp + 0x550]
mov dword [esp + 0x100], eax
lea eax, [esp + 0x100]
mov dword [esp + 0x104], fcn.004e42f0
mov dword [esp + 0x730], eax
mov dword [esp + 0x734], 1
lea eax, [esp + 0x728]
push eax
push 1
call fcn.00472f10
add esp, 8
mov eax, dword [esp + 0x290]
test eax, eax
je 0x4618bf
push 1
push eax
push dword [esp + 0x29c]
call fcn.004ed020
add esp, 0xc
cmp edi, 2
jne 0x4612f1
jmp 0x462a70
mov ecx, dword [esp + 0xe74]
movzx eax, word [esp + 0xe7d]
mov edx, dword [esp + 0xe78]
mov edi, dword [esp + 0xe70]
test ecx, ecx
mov word [esp + 0x480], ax
mov dword [esp + 0x870], edx
je 0x461936
mov dword [esp + 0x10], edi
js 0x463c9a
mov eax, dword [0x6b6a34]
movzx eax, byte [eax]
push 1
push ecx
mov edi, ecx
call fcn.004ed010
mov ecx, edi
add esp, 8
mov edi, dword [esp + 0x10]
test eax, eax
jne 0x46193b
push ecx
push 1
call fcn.004ed3a0
add esp, 8
jmp 0x463c9f
mov eax, 1
mov dword [esp + 0x30], ecx
push ecx
push edi
mov dword [esp + 0x288], eax
push eax
call sub.msvcrt.dll_memcpy
add esp, 0xc
lea edi, [esp + 0x298]
lea eax, [esp + 0xd28]
push 0x170
push eax
lea eax, [esp + 0x2b8]
push eax
call sub.msvcrt.dll_memcpy
add esp, 0xc
mov eax, dword [esp + 0x290]
movq xmm0, qword [edi]
movq xmm1, qword [edi + 8]
mov dword [esp + 0x10], eax
mov eax, dword [esp + 0x294]
movq qword [esp + 0xaf0], xmm0
movq qword [esp + 0xaf8], xmm1
mov dword [esp + 0x28], eax
lea eax, [esp + 0x728]
push ebx
push dword [esp + 0x10]
push eax
call fcn.004e2570
add esp, 0xc
mov edi, dword [esp + 0x728]
cmp edi, 2
jne 0x461b31
mov eax, dword [esp + 0xc]
mov dword [esp + 0x710], esi
lea edi, [esp + 0xe48]
mov dword [esp + 0x714], eax
mov dword [esp + 0x718], ebx
mov dword [esp + 0x71c], 1
push 0x170
lea eax, [esp + 0xd2c]
push eax
lea esi, [esp + 0x558]
push esi
call sub.msvcrt.dll_memcpy
add esp, 0xc
movsd xmm0, qword [edi]
movsd xmm1, qword [edi + 8]
movq xmm2, qword [edi + 0x10]
movq xmm3, qword [edi + 0x18]
movq xmm4, qword [edi + 0x20]
mov eax, dword [esp + 0x280]
mov ebx, dword [esp + 0x10]
mov edi, dword [esp + 0x28]
mov dword [esp + 0x260], 0
mov dword [esp + 0x264], 1
mov dword [esp + 0x268], 0
movsd qword [esp + 0x6d8], xmm0
movsd qword [esp + 0x6e0], xmm1
movq qword [esp + 0x6e8], xmm2
movq qword [esp + 0x6f0], xmm3
movq qword [esp + 0x6f8], xmm4
mov dword [esp + 0x700], eax
mov eax, dword [esp + 0x30]
movq xmm0, qword [esp + 0xaf0]
movq xmm1, qword [esp + 0xaf8]
mov dword [esp + 0x704], eax
mov eax, dword [esp + 0x870]
mov dword [esp + 0x708], eax
movzx eax, byte [esp + 0x250]
mov byte [esp + 0x70c], al
movzx eax, word [esp + 0x480]
mov word [esp + 0x70d], ax
mov dword [esp + 0x6c0], ebx
mov dword [esp + 0x6c4], edi
movq qword [esp + 0x6c8], xmm0
movq qword [esp + 0x6d0], xmm1
lea ecx, [esp + 0x2b0]
mov edx, esi
call fcn.004687a0
cmp dword [esp + 0x2b0], 2
jne 0x461d6f
push dword [esp + 0x2b4]
lea eax, [esp + 0x72c]
push eax
call fcn.004e5450
add esp, 8
jmp 0x461de9
movsd xmm1, qword [esp + 0x740]
movsd xmm0, qword [esp + 0x738]
movsd xmm2, qword [esp + 0x748]
mov eax, dword [esp + 0x758]
mov ebx, dword [esp + 0x72c]
mov ecx, dword [esp + 0x730]
mov edx, dword [esp + 0x734]
test esi, esi
movsd qword [esp + 0x108], xmm1
movsd xmm1, qword [esp + 0x750]
movsd qword [esp + 0x100], xmm0
movsd qword [esp + 0x110], xmm2
mov dword [esp + 0x120], eax
movsd qword [esp + 0x118], xmm1
je 0x461bbf
push 1
push esi
push dword [esp + 0x14]
mov dword [esp + 0x18], ebx
mov esi, ecx
mov ebx, edx
call fcn.004ed020
mov edx, ebx
mov ebx, dword [esp + 0x18]
mov ecx, esi
add esp, 0xc
movsd xmm1, qword [esp + 0x110]
mov eax, dword [esp + 0x120]
movq xmm2, qword [esp + 0x100]
movq xmm0, qword [esp + 0x118]
mov dword [esp + 0x8a0], 0x6b2794
mov dword [esp + 0x8a4], 2
mov dword [esp + 0x100], 2
movsd qword [esp + 0x748], xmm1
movq xmm1, qword [esp + 0x108]
mov dword [esp + 0x758], eax
lea eax, [esp + 0x728]
mov dword [esp + 0x108], 2
mov dword [esp + 0x110], 0x20
mov dword [esp + 0x114], 0
mov dword [esp + 0x118], 4
movq qword [esp + 0x750], xmm0
movq qword [esp + 0x738], xmm2
mov byte [esp + 0x11c], 3
mov dword [esp + 0xa0], eax
lea eax, [esp + 0x100]
mov dword [esp + 0xa4], fcn.004e42f0
mov dword [esp + 0x8b0], eax
lea eax, [esp + 0xa0]
mov dword [esp + 0x8b4], 1
mov dword [esp + 0x8a8], eax
mov dword [esp + 0x8ac], 1
movq qword [esp + 0x740], xmm1
mov dword [esp + 0x72c], ebx
mov dword [esp + 0x730], ecx
mov dword [esp + 0x734], edx
mov dword [esp + 0x728], edi
lea eax, [esp + 0x8a0]
push eax
push 1
call fcn.00472f10
add esp, 8
mov eax, dword [esp + 0x10]
test eax, eax
je 0x461cfa
push 1
push eax
push dword [esp + 0x30]
call fcn.004ed020
add esp, 0xc
cmp byte [esp + 0x250], 0x17
mov eax, dword [esp + 0x30]
je 0x461d1e
test eax, eax
je 0x461d1e
push 1
push eax
push dword [esp + 0x288]
call fcn.004ed020
add esp, 0xc
lea ecx, [esp + 0x2b0]
call fcn.0042e3a0
cmp byte [esp + 0x404], 0x17
je 0x461d51
mov eax, dword [esp + 0x3fc]
test eax, eax
je 0x461d51
push 1
push eax
push dword [esp + 0x400]
call fcn.004ed020
add esp, 0xc
mov eax, dword [esp + 0x408]
test eax, eax
je 0x462ac0
push 1
push eax
push dword [esp + 0x414]
jmp 0x462ab8
movsd xmm1, qword [esp + 0x2d0]
movsd xmm2, qword [esp + 0x2c8]
mov eax, dword [esp + 0x2e0]
movq xmm0, qword [esp + 0x2d8]
movsd qword [esp + 0x748], xmm1
movsd xmm1, qword [esp + 0x2c0]
movsd qword [esp + 0x740], xmm2
movq xmm2, qword [esp + 0x2b0]
mov dword [esp + 0x758], eax
movq qword [esp + 0x750], xmm0
movsd qword [esp + 0x738], xmm1
movq xmm1, qword [esp + 0x2b8]
movq qword [esp + 0x728], xmm2
movq qword [esp + 0x730], xmm1
mov ecx, dword [esp + 0x728]
cmp ecx, 2
jne 0x461e9b
lea eax, [esp + 0x100]
push dword [esp + 0x72c]
push eax
call fcn.004e57b0
add esp, 8
mov ecx, dword [esp + 0x100]
cmp ecx, 2
jne 0x461eea
mov eax, dword [esp + 0x104]
test eax, eax
mov dword [esp + 0xc], eax
je 0x462ae3
xor edx, edx
lea ecx, [esp + 0x260]
push dword [esp + 0xc]
call fcn.0043a110
add esp, 4
mov eax, dword [esp + 0x260]
mov esi, dword [esp + 0x268]
sub eax, esi
cmp eax, dword [esp + 0xc]
jae 0x461e7a
mov edx, esi
lea ecx, [esp + 0x260]
push dword [esp + 0xc]
call fcn.0043a110
add esp, 4
mov esi, dword [esp + 0x268]
mov edi, dword [esp + 0x264]
lea eax, [edi + esi]
mov ebx, dword [esp + 0xc]
push ebx
push 0
push eax
call sub.msvcrt.dll_memset
add esp, 0xc
add esi, ebx
jmp 0x462aea
movsd xmm2, qword [esp + 0x738]
movsd xmm1, qword [esp + 0x740]
movsd xmm0, qword [esp + 0x730]
mov edx, dword [esp + 0x72c]
mov eax, dword [esp + 0x758]
movsd qword [esp + 0xb0], xmm2
movsd qword [esp + 0xb8], xmm1
movsd xmm2, qword [esp + 0x748]
movsd xmm1, qword [esp + 0x750]
jmp 0x461f37
movsd xmm2, qword [esp + 0x110]
movsd xmm1, qword [esp + 0x118]
movsd xmm0, qword [esp + 0x108]
mov edx, dword [esp + 0x104]
mov eax, dword [esp + 0x130]
movsd qword [esp + 0xb0], xmm2
movsd qword [esp + 0xb8], xmm1
movsd xmm2, qword [esp + 0x120]
movsd xmm1, qword [esp + 0x128]
movsd qword [esp + 0xa8], xmm0
movsd qword [esp + 0xc0], xmm2
movsd qword [esp + 0xc8], xmm1
mov dword [esp + 0xd0], eax
movsd xmm1, qword [esp + 0xb8]
movsd xmm0, qword [esp + 0xb0]
movsd xmm2, qword [esp + 0xc0]
mov eax, dword [esp + 0xd0]
mov edi, dword [esp + 0xa8]
mov esi, dword [esp + 0xac]
movsd qword [esp + 0x730], xmm1
movsd xmm1, qword [esp + 0xc8]
movsd qword [esp + 0x728], xmm0
movsd qword [esp + 0x738], xmm2
mov dword [esp + 0x748], eax
movsd qword [esp + 0x740], xmm1
jmp 0x4640ae
movzx eax, byte [esp + 0x2af]
movdqu xmm3, xmmword [esp + 0x100]
movups xmm1, xmmword [esp + 0x10f]
movdqa xmm2, xmmword [0x6b26b0]
movups xmm0, xmmword [esp + 0x29f]
movzx ebx, byte [esp + 0x11f]
mov byte [esp + 0x970], 4
mov byte [esp + 0x208], al
movzx eax, byte [esp + 0x10e]
pinsrw xmm3, word [esp + 0x10c], 6
movaps xmmword [esp + 0x9c0], xmm1
movaps xmmword [esp + 0x4e0], xmm0
movd xmm1, eax
pand xmm3, xmm2
pslldq xmm1, 0xe
pandn xmm2, xmm1
por xmm2, xmm3
movdqa xmmword [esp + 0x9b0], xmm2
movdqu xmm0, xmmword [esp + 0x290]
movzx edi, byte [esp + 0x29e]
pinsrw xmm0, word [esp + 0x29c], 6
movdqa xmmword [esp + 0x9d0], xmm0
movzx eax, byte [esp + 0x980]
push eax
call fcn.0052fee0
add esp, 4
movzx ecx, byte [esp + 0x208]
movdqa xmm2, xmmword [0x6b26c0]
movdqa xmm3, xmmword [esp + 0x9b0]
movd xmm1, ecx
movdqa xmm0, xmm2
pslldq xmm3, 1
movzx ecx, byte [esp + 0x970]
pandn xmm0, xmm1
por xmm0, xmm3
movdqa xmm3, xmmword [esp + 0x9d0]
movd xmm1, ecx
mov ecx, eax
dec al
neg cl
pandn xmm2, xmm1
movd xmm1, edi
and bl, al
pslldq xmm3, 1
movzx ecx, cl
pslldq xmm1, 0xf
por xmm3, xmm2
movd xmm2, ecx
mov ecx, dword [esp + 0x280]
pand xmm3, xmmword [0x6b26d0]
punpcklbw xmm2, xmm2
pshuflw xmm2, xmm2, 0
pshufd xmm2, xmm2, 0
movdqa xmm5, xmm2
movdqa xmm4, xmm2
cmp cl, 6
por xmm1, xmm3
movdqa xmm3, xmm2
pandn xmm5, xmmword [esp + 0x4e0]
pandn xmm4, xmm0
pandn xmm3, xmmword [esp + 0x9c0]
pandn xmm2, xmm1
movdqu xmmword [esp + 0xa0], xmm2
movdqu xmmword [esp + 0xb0], xmm5
movdqu xmmword [esp + 0xc0], xmm4
movdqu xmmword [esp + 0xd0], xmm3
mov byte [esp + 0xe0], bl
jae 0x462cbb
mov eax, 0x3d
bt eax, ecx
jae 0x462cbb
movsx eax, byte [esp + 0xa0]
cmp eax, 6
jae 0x462cbb
mov ecx, 0x3d
bt ecx, eax
jae 0x462cbb
mov ecx, dword [esp + 0x280]
mov ecx, dword [ecx*4 + 0x6b6a04]
cmp ecx, dword [eax*4 + 0x6b6a04]
jne 0x462656
lea eax, [esp + 0x430]
push ecx
push esi
push eax
call sub.msvcrt.dll_memcmp
add esp, 0xc
mov edx, dword [esp + 0x10]
test eax, eax
lea ebx, [esp + 0x2b0]
jne 0x462661
mov edx, dword [esp + 0x42c]
movzx ecx, byte [esp + 0x870]
mov ch, byte [esp + 0x2c]
lea eax, [esp + 0x266]
mov ebx, ecx
mov bh, ch
movzx ecx, word [eax + 0x18]
movsd xmm0, qword [eax + 0x10]
movq xmm1, qword [eax]
movq xmm2, qword [eax + 8]
lea eax, [esp + 0x21c]
movq qword [esp + 0x222], xmm1
movq qword [esp + 0x22a], xmm2
movsd qword [esp + 0x232], xmm0
mov word [esp + 0x23a], cx
mov dword [esp + 0x21c], edx
mov byte [esp + 0x220], bl
mov byte [esp + 0x221], bh
mov dword [esp + 0x218], 4
movsd qword [esp + 0x510], xmm0
mov word [esp + 0x518], cx
movq qword [esp + 0x500], xmm1
movq qword [esp + 0x508], xmm2
movsd xmm0, qword [esp + 0x21c]
mov ecx, dword [esp + 0x224]
movsd qword [esp + 0x290], xmm0
mov dword [esp + 0x520], ecx
mov ecx, dword [esp + 0x228]
movups xmm0, xmmword [esp + 0x22c]
mov dword [esp + 0x500], ecx
movaps xmmword [esp + 0x430], xmm0
mov edx, 0x6b28c4
lea ecx, [esp + 0x550]
push eax
call fcn.0043f950
add esp, 4
lea ecx, [esp + 0x100]
lea edx, [esp + 0x550]
call fcn.0043c110
movups xmm2, xmmword [esp + 0x100]
mov edx, dword [esp + 0x140]
mov dword [esp + 0x1c8], 0
mov dword [esp + 0x40], 0
movsd xmm0, qword [esp + 0x290]
mov eax, dword [esp + 0x520]
mov ecx, dword [esp + 0x500]
movaps xmm1, xmmword [esp + 0x430]
movaps xmmword [esp + 0x10], xmm2
movsd xmm2, qword [esp + 0x110]
mov dword [esp + 0x578], edx
movaps xmmword [esp + 0x980], xmm2
movsd xmm2, qword [esp + 0x118]
movsd qword [esp + 0x550], xmm2
movsd xmm2, qword [esp + 0x120]
movsd qword [esp + 0x558], xmm2
movsd xmm2, qword [esp + 0x128]
movsd qword [esp + 0x560], xmm2
movsd xmm2, qword [esp + 0x130]
movsd qword [esp + 0x568], xmm2
movsd xmm2, qword [esp + 0x138]
movsd qword [esp + 0x570], xmm2
xorps xmm2, xmm2
movlps qword [esp + 0xa0], xmm2
movaps xmmword [esp + 0x100], xmm2
movsd xmm2, qword [esp + 0xa0]
movsd qword [esp + 0x290], xmm2
mov edx, dword [esp + 0x1c8]
mov dword [esp + 0x520], edx
mov edx, dword [esp + 0x40]
mov dword [esp + 0x500], edx
movaps xmm2, xmmword [esp + 0x100]
movaps xmmword [esp + 0x430], xmm2
movsd xmm2, qword [esp + 0x550]
movq xmm3, qword [esp + 0x558]
mov edx, dword [esp + 0x578]
movaps xmmword [esp + 0x100], xmm1
mov dword [esp + 0x290], eax
movsd qword [esp + 0x430], xmm0
mov dword [esp + 0x40], ecx
movsd qword [esp + 0x498], xmm2
movsd xmm2, qword [esp + 0x560]
movq qword [esp + 0x4a0], xmm3
mov dword [esp + 0x4c0], edx
movsd xmm1, qword [esp + 0x4a0]
mov eax, dword [esp + 0x4c0]
movq xmm0, qword [esp + 0x498]
movsd qword [esp + 0x4a8], xmm2
movsd xmm2, qword [esp + 0x568]
movsd qword [esp + 0x558], xmm1
movsd xmm1, qword [esp + 0x4a8]
mov dword [esp + 0x578], eax
mov eax, dword [0x6b6a34]
movq qword [esp + 0x550], xmm0
movsd qword [esp + 0x4b0], xmm2
movsd xmm2, qword [esp + 0x570]
movsd qword [esp + 0x560], xmm1
movsd qword [esp + 0x4b8], xmm2
movq xmm2, qword [esp + 0x4b0]
movq xmm1, qword [esp + 0x4b8]
movq qword [esp + 0x568], xmm2
movq qword [esp + 0x570], xmm1
movzx eax, byte [eax]
push 8
push 0x70
call fcn.004ed010
add esp, 8
test eax, eax
je 0x463c4e
movaps xmm1, xmmword [esp + 0x100]
mov dword [eax + 0x1c], 0x5be0cd19
mov dword [eax + 0x18], 0x1f83d9ab
mov dword [eax + 0x14], 0x9b05688c
mov dword [eax + 0x10], 0x510e527f
mov dword [eax + 0xc], 0xa54ff53a
mov dword [eax + 8], 0x3c6ef372
mov dword [eax + 4], 0xbb67ae85
mov dword [eax], 0x6a09e667
mov dword [eax + 0x64], 0
mov dword [eax + 0x60], 0
mov byte [eax + 0x68], 0
mov dword [eax + 0x5c], 0
mov dword [eax + 0x58], 0
mov dword [eax + 0x54], 0
mov dword [eax + 0x50], 0
mov dword [eax + 0x4c], 0
mov dword [eax + 0x48], 0
mov dword [eax + 0x44], 0
mov dword [eax + 0x40], 0
mov dword [eax + 0x3c], 0
mov dword [eax + 0x38], 0
mov dword [eax + 0x34], 0
mov dword [eax + 0x30], 0
mov dword [eax + 0x2c], 0
mov dword [eax + 0x28], 0
mov dword [eax + 0x24], 0
mov dword [esp + 0x2c], eax
mov dword [eax + 0x20], 0
mov eax, dword [esp + 0x290]
movaps xmm2, xmmword [esp + 0x10]
movq xmm0, qword [esp + 0x430]
mov bl, 1
mov dword [esp + 0x4e0], 0x6b3348
movaps xmmword [esp + 0x990], xmm1
movsd xmm1, qword [esp + 0x570]
mov dword [esp + 0x3c], eax
mov eax, dword [esp + 0x40]
movaps xmmword [esp + 0x9a0], xmm2
movsd xmm2, qword [esp + 0x568]
movq qword [esp + 0x4d8], xmm0
movsd qword [esp + 0xa00], xmm1
movsd xmm1, qword [esp + 0x560]
mov dword [esp + 0x38], eax
mov eax, dword [esp + 0x578]
movsd qword [esp + 0x9f8], xmm2
movsd xmm2, qword [esp + 0x550]
movsd qword [esp + 0x9f0], xmm1
movsd xmm1, qword [esp + 0x558]
mov dword [esp + 0xa08], eax
mov eax, 2
movsd qword [esp + 0x9e0], xmm2
movsd qword [esp + 0x9e8], xmm1
jmp 0x46307d
lea ebx, [esp + 0x2b0]
mov edx, dword [esp + 0x10]
pxor xmm0, xmm0
mov al, 2
movdqa xmmword [esp + 0x550], xmm0
movdqa xmmword [esp + 0x560], xmm0
movaps xmm0, xmmword [esp + 0x550]
movaps xmmword [esp + 0x260], xmm0
movaps xmm0, xmmword [esp + 0x560]
movaps xmmword [esp + 0x270], xmm0
jmp 0x460cc1
movups xmm1, xmmword [esp + 0x1e7]
movzx eax, byte [esp + 0x1f7]
movdqu xmm3, xmmword [esp + 0x430]
movdqa xmm2, xmmword [0x6b26b0]
movups xmm0, xmmword [esp + 0x1d7]
movzx ebx, byte [esp + 0x45f]
mov byte [esp + 0x36], 4
movaps xmmword [esp + 0xa70], xmm1
mov byte [esp + 0x35], al
movups xmm1, xmmword [esp + 0x43f]
movzx eax, byte [esp + 0x43e]
pinsrw xmm3, word [esp + 0x43c], 6
movaps xmmword [esp + 0xa80], xmm0
movaps xmmword [esp + 0xa60], xmm1
movd xmm1, eax
pand xmm3, xmm2
pslldq xmm1, 0xe
pandn xmm2, xmm1
movdqu xmm1, xmmword [esp + 0x44f]
por xmm2, xmm3
movdqa xmmword [esp + 0xa40], xmm2
movdqa xmmword [esp + 0xa50], xmm1
movdqu xmm0, xmmword [esp + 0x1c8]
movzx esi, byte [esp + 0x1d6]
pinsrw xmm0, word [esp + 0x1d4], 6
movdqa xmmword [esp + 0xbb0], xmm0
push dword [esp + 0x5b0]
call fcn.0052fee0
add esp, 4
movzx ecx, byte [esp + 0x35]
movdqa xmm2, xmmword [0x6b26c0]
movdqa xmm3, xmmword [esp + 0xbb0]
movd xmm1, ecx
movdqa xmm0, xmm2
movzx ecx, byte [esp + 0x36]
pslldq xmm3, 1
pandn xmm0, xmm1
movdqa xmm1, xmmword [esp + 0xa40]
pslldq xmm1, 1
por xmm0, xmm1
movd xmm1, ecx
mov ecx, eax
dec al
neg cl
pandn xmm2, xmm1
movd xmm1, esi
and bl, al
por xmm3, xmm2
movzx ecx, cl
pslldq xmm1, 0xf
movd xmm2, ecx
pand xmm3, xmmword [0x6b26d0]
mov ecx, dword [esp + 0x10]
punpcklbw xmm2, xmm2
pshuflw xmm2, xmm2, 0
pshufd xmm4, xmm2, 0
movdqa xmm2, xmm4
movdqa xmm7, xmm4
movdqa xmm6, xmm4
por xmm1, xmm3
movdqa xmm3, xmm4
movdqa xmm5, xmm4
cmp cl, 6
pandn xmm2, xmmword [esp + 0xa50]
pandn xmm3, xmmword [esp + 0xa60]
pandn xmm7, xmmword [esp + 0xa70]
pandn xmm6, xmmword [esp + 0xa80]
pandn xmm4, xmm1
pandn xmm5, xmm0
movdqu xmmword [esp + 0x2b0], xmm4
movdqu xmmword [esp + 0x2c0], xmm6
movdqu xmmword [esp + 0x2d0], xmm7
movdqu xmmword [esp + 0x2e0], xmm5
movdqu xmmword [esp + 0x2f0], xmm3
movdqu xmmword [esp + 0x300], xmm2
mov byte [esp + 0x310], bl
jae 0x463c6d
mov eax, 0x3d
bt eax, ecx
jae 0x463c6d
movsx eax, byte [esp + 0x2b0]
cmp eax, 6
jae 0x463c6d
mov ecx, 0x3d
bt ecx, eax
jae 0x463c6d
mov ecx, dword [esp + 0x10]
mov ecx, dword [ecx*4 + 0x6b6a1c]
cmp ecx, dword [eax*4 + 0x6b6a1c]
jne 0x4628ce
push ecx
lea eax, [esp + 0x2b4]
push eax
push edi
call sub.msvcrt.dll_memcmp
add esp, 0xc
test eax, eax
je 0x462d0a
mov dword [esp + 0x550], 0
mov byte [esp + 0x4c8], 0
mov byte [esp + 0x90], 0
mov word [esp + 0x540], 0
mov dword [esp + 0x2b0], 0
mov dword [esp + 0x100], 0
mov dword [esp + 0x430], 0
mov dword [esp + 0x1c8], 0
mov dword [esp + 0x218], 0
mov dword [esp + 0x290], 0
mov dword [esp + 0x40], 0
mov dword [esp + 0x260], 0
mov dword [esp + 0x520], 0
mov dword [esp + 0x500], 0
mov eax, dword [esp + 0x550]
mov dword [esp + 0x8c], eax
movzx eax, byte [esp + 0x4c8]
mov byte [esp + 0x34], al
movzx eax, byte [esp + 0x90]
mov byte [esp + 0x37], al
movzx eax, word [esp + 0x540]
mov word [esp + 0x216], ax
mov eax, dword [esp + 0x2b0]
mov dword [esp + 0x88], eax
mov eax, dword [esp + 0x100]
mov dword [esp + 0x84], eax
mov eax, dword [esp + 0x430]
mov dword [esp + 0x80], eax
mov eax, dword [esp + 0x1c8]
mov dword [esp + 0x7c], eax
mov eax, dword [esp + 0x218]
mov dword [esp + 0x78], eax
mov eax, dword [esp + 0x290]
mov dword [esp + 0x74], eax
mov eax, dword [esp + 0x40]
mov dword [esp + 0x70], eax
mov eax, dword [esp + 0x260]
mov dword [esp + 0x210], eax
mov eax, dword [esp + 0x520]
mov dword [esp + 0x20c], eax
mov eax, dword [esp + 0x500]
mov dword [esp + 0x89c], eax
mov dword [esp + 0x550], 0x6b596c
mov dword [esp + 0x554], 1
mov dword [esp + 0x560], 0
mov dword [esp + 0x558], 0x6b2790
mov dword [esp + 0x55c], 0
lea eax, [esp + 0x550]
push eax
push 1
call fcn.00472f10
add esp, 8
cmp dword [esp + 0x728], 2
je 0x462a70
lea ecx, [esp + 0x728]
call fcn.0042d9f0
lea ecx, [esp + 0xd28]
call fcn.0042e3a0
cmp byte [esp + 0xe7c], 0x17
je 0x462aa3
mov eax, dword [esp + 0xe74]
test eax, eax
je 0x462aa3
push 1
push eax
push dword [esp + 0xe78]
call fcn.004ed020
add esp, 0xc
mov eax, dword [esp + 0xe80]
test eax, eax
je 0x462ac0
push 1
push eax
push dword [esp + 0xe8c]
call fcn.004ed020
add esp, 0xc
cmp dword [esp + 0x890], 0
jne 0x45f897
lea eax, [esp + 0x894]
push eax
call fcn.00472d20
add esp, 4
jmp 0x45f897
xor esi, esi
mov edi, 1
mov dword [esp + 0x40], edi
mov dword [esp + 0x44], esi
mov byte [esp + 0x4c], 0
mov dword [esp + 0x268], esi
mov dword [esp + 0x48], 0
lea esi, [esp + 0x2b0]
lea edx, [esp + 0x550]
mov ecx, esi
call fcn.004687a0
mov eax, dword [esp + 0x2b0]
cmp eax, 2
mov dword [esp + 0x10], eax
jne 0x463f4a
mov eax, dword [esp + 0x2b4]
mov dword [esp + 0x104], 9
mov dword [esp + 0x100], eax
lea edx, [esp + 0x100]
lea eax, [esp + 0x40]
lea ecx, [esp + 0x728]
mov ebx, edx
push eax
call fcn.00437770
add esp, 4
mov eax, dword [esp + 0x728]
cmp eax, 2
mov dword [esp + 0x10], eax
jne 0x462c61
lea eax, [esp + 0x71c]
push eax
push esi
call fcn.004e96d0
add esp, 8
mov eax, dword [esp + 0x2b0]
cmp eax, 2
jne 0x463125
mov eax, dword [esp + 0x2b4]
mov dword [esp + 0x8a4], 1
mov dword [esp + 0x8a0], eax
lea edx, [esp + 0x8a0]
lea eax, [esp + 0x40]
lea ecx, [esp + 0x728]
push eax
call fcn.00437770
add esp, 4
mov eax, dword [esp + 0x728]
cmp eax, 2
jne 0x4631a7
mov eax, dword [esp + 0x71c]
test eax, eax
bswap eax
js 0x46321c
mov edi, 0xfffffffb
mov dword [esp + 0x728], eax
movzx eax, byte [esp + edi + 0x72d]
cmp edi, 0xfffffffe
lea edi, [edi + 1]
je 0x462c0f
test al, al
je 0x462bfb
test al, al
jns 0x462c43
mov byte [esp + 0x8a0], 0
push 1
lea eax, [esp + 0x8a4]
push eax
lea eax, [esp + 0x48]
push eax
push esi
call fcn.004e7a80
add esp, 0x10
mov eax, dword [esp + 0x2b0]
cmp eax, 2
jne 0x4633ee
lea eax, [esp + edi + 0x72c]
neg edi
push edi
push eax
lea eax, [esp + 0x48]
push eax
push ebx
call fcn.004e7a80
add esp, 0x10
jmp 0x46323e
movsd xmm2, qword [esp + 0x73c]
movsd xmm1, qword [esp + 0x744]
movsd xmm0, qword [esp + 0x734]
mov eax, dword [esp + 0x72c]
mov ecx, dword [esp + 0x730]
movsd qword [esp + 0x4a0], xmm2
movsd qword [esp + 0x4a8], xmm1
movsd xmm2, qword [esp + 0x74c]
movsd xmm1, qword [esp + 0x754]
jmp 0x463f97
test ebx, ebx
je 0x461651
mov dword [esp + 0x550], 7
push 0x6b3644
push 0x6b3584
push dword [esp + 0x488]
push 0xb
push 0x6b3639
call fcn.004faf90
add esp, 0x14
jmp 0x463c9f
test ebx, ebx
je 0x4610fa
mov dword [esp + 0x430], 7
mov dword [esp + 0x88c], esi
jmp 0x463c78
mov edx, dword [esp + 0x428]
mov ecx, dword [esp + 0x42c]
movzx eax, byte [esp + 0x9d0]
mov esi, ecx
movzx ecx, byte [esp + 0x9b0]
movzx eax, al
mov ebx, dword [esp + 0x208]
mov dword [esp + 0x8c], edx
shl eax, 8
mov dword [esp + 0x88], esi
or eax, ecx
movzx ecx, word [esp + 0x9c0]
mov dword [esp + 0x550], ebx
mov dword [esp + 0x9c], ebx
shl ecx, 0x10
or eax, ecx
mov dword [esp + 0x554], eax
mov dword [esp + 0x98], eax
mov eax, dword [esp + 0x250]
mov dword [esp + 0x558], edx
mov dword [esp + 0x55c], esi
mov dword [esp + 0x560], eax
mov dword [esp + 0x84], eax
mov eax, dword [esp + 0x280]
mov dword [esp + 0x564], eax
mov dword [esp + 0x80], eax
mov eax, dword [esp + 0x480]
mov dword [esp + 0x568], eax
mov dword [esp + 0x7c], eax
mov eax, dword [esp + 0x870]
mov dword [esp + 0x56c], eax
mov dword [esp + 0x78], eax
mov eax, dword [esp + 0x2c]
mov dword [esp + 0x570], eax
mov dword [esp + 0x74], eax
mov eax, dword [esp + 0x980]
mov dword [esp + 0x574], eax
mov dword [esp + 0x70], eax
mov eax, dword [esp + 0x970]
mov dword [esp + 0x578], eax
mov dword [esp + 0x210], eax
mov eax, dword [esp + 0x4e0]
mov dword [esp + 0x57c], eax
mov dword [esp + 0x20c], eax
lea eax, [esp + 0x550]
push eax
push edi
call fcn.00523dd0
add esp, 8
lea ecx, [esp + 0x550]
lea edx, [esp + 0x100]
call fcn.0040fb30
movups xmm1, xmmword [esp + 0x110]
mov eax, dword [esp + 0x10c]
movq xmm0, qword [esp + 0x100]
movdqu xmm2, xmmword [esp + 0x120]
lea esi, [esp + 0x558]
mov ecx, 0x17
mov ebx, dword [esp + 0x108]
movaps xmmword [esp + 0x280], xmm1
movq xmm1, qword [esp + 0x550]
mov dword [esp + 0x250], eax
lea eax, [esp + 0x2b0]
movdqa xmmword [esp + 0x10], xmm0
movdqa xmmword [esp + 0x480], xmm2
mov edi, eax
movdqa xmmword [esp + 0x980], xmm1
rep movsd dword es:[edi], dword [esi]
mov dword [esp + 0x550], 0
mov dword [esp + 0x100], 0
mov dword [esp + 0x430], 0
mov dword [esp + 0x1c8], 0
mov dword [esp + 0x218], 0
mov dword [esp + 0x290], 0
mov dword [esp + 0x40], 0
mov dword [esp + 0x260], 0
mov dword [esp + 0x520], 0
mov dword [esp + 0x500], 0
mov dword [esp + 0x540], 0
mov dword [esp + 0x4c8], 0
mov esi, eax
mov eax, dword [0x6b6a34]
lea edi, [esp + 0x550]
mov ecx, dword [esp + 0x550]
mov dword [esp + 0x9c], ecx
mov ecx, dword [esp + 0x100]
mov dword [esp + 0x98], ecx
mov ecx, dword [esp + 0x430]
mov dword [esp + 0x8c], ecx
mov ecx, dword [esp + 0x1c8]
mov dword [esp + 0x88], ecx
mov ecx, dword [esp + 0x218]
mov dword [esp + 0x84], ecx
mov ecx, dword [esp + 0x290]
mov dword [esp + 0x80], ecx
mov ecx, dword [esp + 0x40]
mov dword [esp + 0x7c], ecx
mov ecx, dword [esp + 0x260]
mov dword [esp + 0x78], ecx
mov ecx, dword [esp + 0x520]
mov dword [esp + 0x74], ecx
mov ecx, dword [esp + 0x500]
mov dword [esp + 0x70], ecx
mov ecx, dword [esp + 0x540]
mov dword [esp + 0x210], ecx
mov ecx, dword [esp + 0x4c8]
mov dword [esp + 0x20c], ecx
mov ecx, 0x17
rep movsd dword es:[edi], dword [esi]
movzx eax, byte [eax]
push 8
push 0xd8
call fcn.004ed010
add esp, 8
test eax, eax
je 0x463c5c
mov ecx, 0x10
mov edi, eax
mov esi, 0x6b4400
rep movsd dword es:[edi], dword [esi]
mov dword [esp + 0x2c], eax
add eax, 0x40
push 0x91
push 0
push eax
call sub.msvcrt.dll_memset
add esp, 0xc
lea edi, [esp + 0x9e0]
lea esi, [esp + 0x550]
mov ecx, 0x17
rep movsd dword es:[edi], dword [esi]
mov dword [esp + 0x3c], ebx
mov dword [esp + 0x4e0], 0x6b3374
xor ebx, ebx
movdqa xmm0, xmmword [esp + 0x10]
mov eax, dword [esp + 0x250]
movaps xmm2, xmmword [esp + 0x280]
movaps xmm1, xmmword [esp + 0x480]
mov dword [esp + 0x38], eax
movq qword [esp + 0x4d8], xmm0
movaps xmmword [esp + 0x990], xmm2
movaps xmmword [esp + 0x9a0], xmm1
mov eax, 3
cmp dword [esp + 0x728], 2
mov dword [esp + 0x10], eax
je 0x463097
lea ecx, [esp + 0x728]
call fcn.0042d9f0
mov eax, dword [esp + 0x3c]
movq xmm0, qword [esp + 0x4d8]
movdqa xmm2, xmmword [esp + 0x990]
movdqa xmm1, xmmword [esp + 0x9a0]
lea edi, [esp + 0xa90]
lea esi, [esp + 0x9e0]
mov ecx, 0x17
mov dword [esp + 0x280], eax
mov eax, dword [esp + 0x38]
movdqa xmmword [esp + 0x250], xmm0
movdqa xmmword [esp + 0x870], xmm2
movdqa xmmword [esp + 0x970], xmm1
mov dword [esp + 0x480], eax
rep movsd dword es:[edi], dword [esi]
lea eax, [esp + 0x8a0]
lea ecx, [esp + 0xaf0]
push 0xc0
push eax
push ecx
call sub.msvcrt.dll_memcpy
add esp, 0xc
mov ebx, dword [esp + 0x4e0]
mov eax, dword [esp + 0x10]
jmp 0x460554
movsd xmm2, qword [esp + 0x2c4]
movsd xmm1, qword [esp + 0x2cc]
movq xmm0, qword [esp + 0x2bc]
mov ecx, dword [esp + 0x2b4]
mov edx, dword [esp + 0x2b8]
movsd qword [esp + 0x114], xmm2
movsd qword [esp + 0x11c], xmm1
movq xmm2, qword [esp + 0x2d4]
movq xmm1, qword [esp + 0x2dc]
movq qword [esp + 0x10c], xmm0
movq qword [esp + 0x124], xmm2
movq qword [esp + 0x12c], xmm1
mov dword [esp + 0x100], eax
mov dword [esp + 0x108], edx
mov dword [esp + 0x104], ecx
jmp 0x46323e
movsd xmm0, qword [esp + 0x754]
movq xmm1, qword [esp + 0x734]
movsd qword [esp + 0x12c], xmm0
movsd xmm0, qword [esp + 0x74c]
movsd qword [esp + 0x124], xmm0
movsd xmm0, qword [esp + 0x744]
movsd qword [esp + 0x11c], xmm0
movsd xmm0, qword [esp + 0x73c]
movsd qword [esp + 0x114], xmm0
movq xmm0, qword [esp + 0x72c]
movq qword [esp + 0x10c], xmm1
movq qword [esp + 0x104], xmm0
mov dword [esp + 0x100], eax
jmp 0x46323e
mov dword [esp + 0x2b0], eax
push 4
push esi
call fcn.004e2060
add esp, 8
push edx
push eax
lea eax, [esp + 0x48]
push eax
push ebx
call fcn.004e7a80
add esp, 0x10
mov eax, dword [esp + 0x100]
cmp eax, 2
mov dword [esp + 0x10], eax
jne 0x464bba
lea ecx, [esp + 0x2b0]
lea edx, [esp + 0x550]
call fcn.0043df60
mov eax, dword [esp + 0x2b0]
cmp eax, 2
mov dword [esp + 0x10], eax
jne 0x46421a
mov eax, dword [esp + 0x2b4]
mov ecx, 9
mov dword [esp + 0x104], ecx
mov dword [esp + 0x100], eax
lea edx, [esp + 0x100]
lea eax, [esp + 0x40]
lea ecx, [esp + 0x728]
push eax
call fcn.00437770
add esp, 4
mov eax, dword [esp + 0x728]
cmp eax, 2
mov dword [esp + 0x10], eax
jne 0x463381
lea esi, [esp + 0x2b0]
lea edi, [esp + 0x550]
mov ecx, esi
mov edx, edi
call fcn.0043e470
mov eax, dword [esp + 0x2b0]
cmp eax, 2
mov dword [esp + 0x10], eax
jne 0x464287
mov eax, dword [esp + 0x2b4]
mov dword [esp + 0x100], eax
mov eax, 9
mov dword [esp + 0x104], eax
lea edx, [esp + 0x100]
lea eax, [esp + 0x40]
lea ecx, [esp + 0x728]
push eax
call fcn.00437770
add esp, 4
mov eax, dword [esp + 0x728]
cmp eax, 2
mov dword [esp + 0x10], eax
jne 0x463966
movzx ebx, byte [esp + 0x66c]
test bl, bl
je 0x4635c3
lea eax, [esp + 0x66c]
push eax
push esi
call fcn.004cc3c0
add esp, 8
cmp dword [esp + 0x2b0], 2
jne 0x46344d
push dword [esp + 0x2b4]
lea eax, [esp + 0x72c]
push eax
call fcn.004e5450
add esp, 8
jmp 0x4634c7
movsd xmm2, qword [esp + 0x73c]
movsd xmm1, qword [esp + 0x744]
movq xmm0, qword [esp + 0x734]
mov eax, dword [esp + 0x72c]
mov ecx, dword [esp + 0x730]
movsd qword [esp + 0x220], xmm2
movsd qword [esp + 0x228], xmm1
movq xmm2, qword [esp + 0x74c]
movq xmm1, qword [esp + 0x754]
movq qword [esp + 0x218], xmm0
movq qword [esp + 0x230], xmm2
movq qword [esp + 0x238], xmm1
jmp 0x464349
movsd xmm0, qword [esp + 0x2dc]
movq xmm1, qword [esp + 0x2bc]
movsd qword [esp + 0x12c], xmm0
movsd xmm0, qword [esp + 0x2d4]
movsd qword [esp + 0x124], xmm0
movsd xmm0, qword [esp + 0x2cc]
movsd qword [esp + 0x11c], xmm0
movsd xmm0, qword [esp + 0x2c4]
movsd qword [esp + 0x114], xmm0
movq xmm0, qword [esp + 0x2b4]
jmp 0x463201
movsd xmm1, qword [esp + 0x2d0]
movsd xmm2, qword [esp + 0x2c8]
mov eax, dword [esp + 0x2e0]
movq xmm0, qword [esp + 0x2d8]
movsd qword [esp + 0x748], xmm1
movsd xmm1, qword [esp + 0x2c0]
movsd qword [esp + 0x740], xmm2
movq xmm2, qword [esp + 0x2b0]
mov dword [esp + 0x758], eax
movq qword [esp + 0x750], xmm0
movsd qword [esp + 0x738], xmm1
movq xmm1, qword [esp + 0x2b8]
movq qword [esp + 0x728], xmm2
movq qword [esp + 0x730], xmm1
mov eax, dword [esp + 0x728]
cmp eax, 2
mov dword [esp + 0x10], eax
jne 0x46387f
mov eax, dword [esp + 0x72c]
mov dword [esp + 0xaf4], 0x10015
mov dword [esp + 0xaf0], eax
lea edx, [esp + 0xaf0]
lea eax, [esp + 0x40]
lea ecx, [esp + 0x100]
push eax
call fcn.00437770
add esp, 4
mov eax, dword [esp + 0x100]
cmp eax, 2
mov dword [esp + 0x10], eax
jne 0x4639b8
lea eax, [esp + 0x66c]
push eax
push esi
call fcn.004cc3c0
add esp, 8
mov eax, dword [esp + 0x2b0]
cmp eax, 2
mov dword [esp + 0x10], eax
jne 0x463a76
mov eax, dword [esp + 0x2b4]
mov dword [esp + 0x104], 1
mov dword [esp + 0x100], eax
lea edx, [esp + 0x100]
lea eax, [esp + 0x40]
lea ecx, [esp + 0x728]
push eax
call fcn.00437770
add esp, 4
mov eax, dword [esp + 0x728]
cmp eax, 2
mov dword [esp + 0x10], eax
jne 0x463ac8
mov byte [esp + 0x2b0], bl
lea eax, [esp + 0x8a0]
push 1
push esi
lea ecx, [esp + 0x48]
push ecx
push eax
call fcn.004e7a80
add esp, 0x10
mov eax, dword [esp + 0x8a0]
cmp eax, 2
mov dword [esp + 0x10], eax
jne 0x463a24
mov eax, dword [esp + 0x668]
mov dword [esp + 0x104], 1
mov dword [esp + 0x100], eax
lea edx, [esp + 0x100]
lea eax, [esp + 0x40]
lea ecx, [esp + 0x2b0]
push eax
call fcn.00437770
add esp, 4
mov eax, dword [esp + 0x2b0]
cmp eax, 2
mov dword [esp + 0x10], eax
jne 0x4638fa
push dword [esp + 0x664]
push dword [esp + 0x664]
lea eax, [esp + 0x48]
push eax
lea eax, [esp + 0x734]
push eax
call fcn.004e7a80
add esp, 0x10
mov eax, dword [esp + 0x728]
cmp eax, 2
mov dword [esp + 0x10], eax
jne 0x463966
lea edx, [esp + 0x590]
lea eax, [esp + 0x40]
lea ecx, [esp + 0x2b0]
push eax
call fcn.0042afa0
add esp, 4
mov eax, dword [esp + 0x2b0]
cmp eax, 2
mov dword [esp + 0x10], eax
jne 0x464287
lea edx, [esp + 0x5c8]
lea esi, [esp + 0x2b0]
lea eax, [esp + 0x40]
mov ecx, esi
push eax
call fcn.0042aac0
add esp, 4
mov eax, dword [esp + 0x2b0]
cmp eax, 2
mov dword [esp + 0x10], eax
jne 0x464287
push edi
push esi
call fcn.004dced0
add esp, 8
mov eax, dword [esp + 0x2b0]
cmp eax, 2
mov dword [esp + 0x10], eax
jne 0x463b38
mov eax, dword [esp + 0x2b4]
mov dword [esp + 0x8a0], eax
mov eax, 9
mov dword [esp + 0x8a4], eax
lea edx, [esp + 0x8a0]
lea eax, [esp + 0x40]
lea ecx, [esp + 0x728]
push eax
call fcn.00437770
add esp, 4
mov eax, dword [esp + 0x728]
cmp eax, 2
mov dword [esp + 0x10], eax
jne 0x463b87
lea edx, [esp + 0x550]
lea eax, [esp + 0x40]
lea ecx, [esp + 0x2b0]
push eax
call fcn.00429dc0
add esp, 4
mov eax, dword [esp + 0x2b0]
cmp eax, 2
mov dword [esp + 0x10], eax
jne 0x463b38
lea edx, [esp + 0x570]
lea eax, [esp + 0x40]
lea ecx, [esp + 0x2b0]
push eax
call fcn.00429dc0
add esp, 4
mov eax, dword [esp + 0x2b0]
cmp eax, 2
mov dword [esp + 0x10], eax
jne 0x463b38
lea edx, [esp + 0x5d4]
lea eax, [esp + 0x40]
lea ecx, [esp + 0x2b0]
push eax
call fcn.0042aac0
add esp, 4
mov eax, dword [esp + 0x2b0]
cmp eax, 2
mov dword [esp + 0x10], eax
jne 0x464287
lea esi, [esp + 0x5e0]
lea ecx, [esp + 0x2b0]
mov edx, esi
call fcn.0043e310
mov eax, dword [esp + 0x2b0]
cmp eax, 2
mov dword [esp + 0x10], eax
jne 0x463b38
mov eax, dword [esp + 0x2b4]
mov dword [esp + 0x8a0], eax
mov eax, 9
mov dword [esp + 0x8a4], eax
lea edx, [esp + 0x8a0]
lea eax, [esp + 0x40]
lea ecx, [esp + 0x728]
push eax
call fcn.00437770
add esp, 4
mov eax, dword [esp + 0x728]
cmp eax, 2
mov dword [esp + 0x10], eax
jne 0x463b87
lea edx, [esp + 0x5f4]
lea eax, [esp + 0x40]
lea ecx, [esp + 0x2b0]
push eax
call fcn.0042afa0
add esp, 4
mov eax, dword [esp + 0x2b0]
cmp eax, 2
mov dword [esp + 0x10], eax
jne 0x463b38
mov edx, esi
lea eax, [esp + 0x40]
lea ecx, [esp + 0x2b0]
push eax
call fcn.0042a610
add esp, 4
mov eax, dword [esp + 0x2b0]
cmp eax, 2
mov dword [esp + 0x10], eax
jne 0x463b38
cmp dword [esp + 0x62c], 0x80000000
jne 0x463ca1
mov byte [esp + 0x72d], 2
jmp 0x463cb9
movsd xmm2, qword [esp + 0x73c]
movsd xmm1, qword [esp + 0x744]
movq xmm0, qword [esp + 0x734]
mov eax, dword [esp + 0x72c]
mov ecx, dword [esp + 0x730]
movsd qword [esp + 0x8b4], xmm2
movsd qword [esp + 0x8bc], xmm1
movq xmm2, qword [esp + 0x74c]
movq xmm1, qword [esp + 0x754]
movq qword [esp + 0x8ac], xmm0
movq qword [esp + 0x8c4], xmm2
movq qword [esp + 0x8cc], xmm1
mov dword [esp + 0x8a8], ecx
mov dword [esp + 0x8a4], eax
jmp 0x463a24
movsd xmm1, qword [esp + 0x2d4]
movsd xmm2, qword [esp + 0x2cc]
movq xmm0, qword [esp + 0x2dc]
movsd qword [esp + 0x74c], xmm1
movsd xmm1, qword [esp + 0x2c4]
movsd qword [esp + 0x744], xmm2
movq xmm2, qword [esp + 0x2b4]
movq qword [esp + 0x754], xmm0
movsd qword [esp + 0x73c], xmm1
movq xmm1, qword [esp + 0x2bc]
movq qword [esp + 0x72c], xmm2
movq qword [esp + 0x734], xmm1
movsd xmm2, qword [esp + 0x73c]
movsd xmm1, qword [esp + 0x744]
movq xmm0, qword [esp + 0x734]
mov eax, dword [esp + 0x72c]
mov ecx, dword [esp + 0x730]
movsd qword [esp + 0x1d0], xmm2
movsd qword [esp + 0x1d8], xmm1
movq xmm2, qword [esp + 0x74c]
movq xmm1, qword [esp + 0x754]
jmp 0x4642d4
movsd xmm0, qword [esp + 0x12c]
movq xmm1, qword [esp + 0x10c]
movsd qword [esp + 0x8cc], xmm0
movsd xmm0, qword [esp + 0x124]
movsd qword [esp + 0x8c4], xmm0
movsd xmm0, qword [esp + 0x11c]
movsd qword [esp + 0x8bc], xmm0
movsd xmm0, qword [esp + 0x114]
movsd qword [esp + 0x8b4], xmm0
movq xmm0, qword [esp + 0x104]
movq qword [esp + 0x8ac], xmm1
movq qword [esp + 0x8a4], xmm0
movsd xmm2, qword [esp + 0x8b4]
movsd xmm1, qword [esp + 0x8bc]
movq xmm0, qword [esp + 0x8ac]
mov eax, dword [esp + 0x8a4]
mov ecx, dword [esp + 0x8a8]
movsd qword [esp + 0x1d0], xmm2
movsd qword [esp + 0x1d8], xmm1
movq xmm2, qword [esp + 0x8c4]
movq xmm1, qword [esp + 0x8cc]
jmp 0x4642d4
movsd xmm2, qword [esp + 0x2c4]
movsd xmm1, qword [esp + 0x2cc]
movq xmm0, qword [esp + 0x2bc]
mov eax, dword [esp + 0x2b4]
mov ecx, dword [esp + 0x2b8]
movsd qword [esp + 0x8b4], xmm2
movsd qword [esp + 0x8bc], xmm1
movq xmm2, qword [esp + 0x2d4]
movq xmm1, qword [esp + 0x2dc]
jmp 0x4638cc
movsd xmm0, qword [esp + 0x754]
movq xmm1, qword [esp + 0x734]
movsd qword [esp + 0x8cc], xmm0
movsd xmm0, qword [esp + 0x74c]
movsd qword [esp + 0x8c4], xmm0
movsd xmm0, qword [esp + 0x744]
movsd qword [esp + 0x8bc], xmm0
movsd xmm0, qword [esp + 0x73c]
movsd qword [esp + 0x8b4], xmm0
movq xmm0, qword [esp + 0x72c]
jmp 0x463a12
push 0x70
push 8
call fcn.004ed3a0
add esp, 8
jmp 0x463c9f
movsd xmm2, qword [esp + 0x2c4]
movsd xmm1, qword [esp + 0x2cc]
movsd xmm0, qword [esp + 0x2bc]
mov eax, dword [esp + 0x2b4]
mov ecx, dword [esp + 0x2b8]
movsd qword [esp + 0x108], xmm2
movsd qword [esp + 0x110], xmm1
movq xmm2, qword [esp + 0x2d4]
movsd xmm1, qword [esp + 0x2dc]
jmp 0x463bd4
movsd xmm2, qword [esp + 0x73c]
movsd xmm1, qword [esp + 0x744]
movsd xmm0, qword [esp + 0x734]
mov eax, dword [esp + 0x72c]
mov ecx, dword [esp + 0x730]
movsd qword [esp + 0x108], xmm2
movsd qword [esp + 0x110], xmm1
movq xmm2, qword [esp + 0x74c]
movsd xmm1, qword [esp + 0x754]
movsd qword [esp + 0x100], xmm0
movq qword [esp + 0x118], xmm2
movsd qword [esp + 0x120], xmm1
movsd xmm0, qword [esp + 0x120]
movq xmm1, qword [esp + 0x108]
movsd qword [esp + 0x1e8], xmm0
movsd xmm0, qword [esp + 0x118]
movsd qword [esp + 0x1e0], xmm0
movsd xmm0, qword [esp + 0x110]
movsd qword [esp + 0x1d8], xmm0
movq xmm0, qword [esp + 0x100]
movq qword [esp + 0x1d0], xmm1
movq qword [esp + 0x1c8], xmm0
jmp 0x4642ef
push 0x70
push 8
call fcn.004ed3a0
add esp, 8
jmp 0x463c9f
push 0xd8
push 8
call fcn.004ed3a0
add esp, 8
jmp 0x463c9f
mov dword [esp + 0x550], 7
push 0x6b3644
push 0x6b3584
push dword [esp + 0x894]
push 0xb
push 0x6b3639
call fcn.004faf90
add esp, 0x14
jmp 0x463c9f
call fcn.004ed360
ud2
lea eax, [esp + 0x62c]
mov dword [esp + 0x728], eax
mov word [esp + 0x72c], 0x101
lea edx, [esp + 0x728]
lea eax, [esp + 0x40]
lea ecx, [esp + 0x2b0]
push eax
call fcn.004120e0
add esp, 4
mov eax, dword [esp + 0x2b0]
cmp eax, 2
mov dword [esp + 0x10], eax
jne 0x464287
cmp dword [esp + 0x640], 0x80000000
jne 0x463cff
mov byte [esp + 0x72d], 2
jmp 0x463d17
lea eax, [esp + 0x640]
mov dword [esp + 0x728], eax
mov word [esp + 0x72c], 0x102
lea edx, [esp + 0x728]
lea eax, [esp + 0x40]
lea ecx, [esp + 0x2b0]
push eax
call fcn.004120e0
add esp, 4
mov eax, dword [esp + 0x2b0]
cmp eax, 2
mov dword [esp + 0x10], eax
jne 0x464287
cmp dword [esp + 0x654], 0x80000000
jne 0x4643a8
lea edx, [esp + 0x670]
lea eax, [esp + 0x40]
lea ecx, [esp + 0x2b0]
push eax
call fcn.0042afa0
add esp, 4
mov eax, dword [esp + 0x2b0]
cmp eax, 2
mov dword [esp + 0x10], eax
jne 0x46421a
lea edx, [esp + 0x6a8]
lea eax, [esp + 0x40]
lea ecx, [esp + 0x2b0]
push eax
call fcn.0042a610
add esp, 4
mov eax, dword [esp + 0x2b0]
cmp eax, 2
mov dword [esp + 0x10], eax
jne 0x46421a
lea edx, [esp + 0x6d8]
lea eax, [esp + 0x40]
lea ecx, [esp + 0x2b0]
push eax
call fcn.0042afa0
add esp, 4
mov eax, dword [esp + 0x2b0]
cmp eax, 2
mov dword [esp + 0x10], eax
jne 0x463f4a
lea edx, [esp + 0x6c0]
lea esi, [esp + 0x2b0]
lea eax, [esp + 0x40]
mov ecx, esi
push eax
call fcn.0042a750
add esp, 4
mov eax, dword [esp + 0x2b0]
cmp eax, 2
mov dword [esp + 0x10], eax
jne 0x463f4a
lea eax, [esp + 0x710]
push eax
push esi
call fcn.004e25f0
add esp, 8
mov eax, dword [esp + 0x2b0]
cmp eax, 2
mov dword [esp + 0x10], eax
jne 0x464ad6
mov eax, dword [esp + 0x2b4]
mov dword [esp + 0x8a4], 3
mov dword [esp + 0x8a0], eax
lea edi, [esp + 0x728]
lea edx, [esp + 0x8a0]
lea eax, [esp + 0x40]
mov ecx, edi
push eax
call fcn.00437770
add esp, 4
mov eax, dword [esp + 0x728]
cmp eax, 2
mov dword [esp + 0x10], eax
jne 0x464b4e
push dword [esp + 0x718]
push dword [esp + 0x718]
lea eax, [esp + 0x48]
push eax
lea eax, [esp + 0x10c]
push eax
call fcn.004e7a80
add esp, 0x10
mov eax, dword [esp + 0x100]
cmp eax, 2
mov dword [esp + 0x10], eax
jne 0x464bba
movq xmm0, qword [esp + 0x40]
movq xmm1, qword [esp + 0x48]
movq qword [esp + 0x730], xmm1
movq qword [esp + 0x728], xmm0
push edi
push esi
call fcn.004e7a30
add esp, 8
mov eax, dword [esp + 0x2b0]
cmp eax, 2
mov dword [esp + 0x10], eax
jne 0x464f25
mov edi, dword [esp + 0x2b8]
cmp dword [esp + 0xc], edi
jne 0x464f92
lea eax, [esp + 0xa0]
push dword [esp + 0xc]
push eax
call fcn.004e5780
add esp, 8
mov eax, dword [esp + 0xa0]
mov ebx, dword [esp + 0x260]
cmp eax, 2
mov dword [esp + 0x10], eax
jne 0x464021
mov esi, dword [esp + 0x264]
mov edi, dword [esp + 0x268]
jmp 0x4641d7
movsd xmm2, qword [esp + 0x2c4]
movsd xmm1, qword [esp + 0x2cc]
movsd xmm0, qword [esp + 0x2bc]
mov eax, dword [esp + 0x2b4]
mov ecx, dword [esp + 0x2b8]
movsd qword [esp + 0x4a0], xmm2
movsd qword [esp + 0x4a8], xmm1
movsd xmm2, qword [esp + 0x2d4]
movsd xmm1, qword [esp + 0x2dc]
movsd qword [esp + 0x498], xmm0
movsd qword [esp + 0x4b0], xmm2
movsd qword [esp + 0x4b8], xmm1
movsd xmm2, qword [esp + 0x4b0]
movsd xmm1, qword [esp + 0x4a8]
movq xmm0, qword [esp + 0x4b8]
movsd qword [esp + 0xc4], xmm2
movsd qword [esp + 0xbc], xmm1
movq xmm2, qword [esp + 0x498]
movq xmm1, qword [esp + 0x4a0]
movq qword [esp + 0xcc], xmm0
movq qword [esp + 0xb4], xmm1
movq qword [esp + 0xac], xmm2
mov dword [esp + 0xa4], eax
mov dword [esp + 0xa8], ecx
mov ebx, dword [esp + 0x260]
mov eax, dword [esp + 0xa4]
movsd xmm1, qword [esp + 0xb8]
movsd xmm0, qword [esp + 0xb0]
movsd xmm2, qword [esp + 0xc0]
mov edi, dword [esp + 0xa8]
mov esi, dword [esp + 0xac]
test ebx, ebx
mov dword [esp + 0xc], eax
movsd qword [esp + 0x730], xmm1
movsd xmm1, qword [esp + 0xc8]
mov eax, dword [esp + 0xd0]
movsd qword [esp + 0x728], xmm0
movsd qword [esp + 0x738], xmm2
movsd qword [esp + 0x740], xmm1
mov dword [esp + 0x748], eax
je 0x4640a6
push 1
push ebx
push dword [esp + 0x26c]
call fcn.004ed020
add esp, 0xc
mov ecx, dword [esp + 0x10]
mov edx, dword [esp + 0xc]
movsd xmm1, qword [esp + 0x730]
mov eax, dword [esp + 0x748]
mov dword [esp + 0x2b0], ecx
mov dword [esp + 0x2b4], edx
mov dword [esp + 0x2bc], esi
mov dword [esp + 0x2b8], edi
movq xmm0, qword [esp + 0x728]
movq xmm2, qword [esp + 0x738]
mov dword [esp + 0x8a0], 0x6b2794
mov dword [esp + 0x8a4], 2
mov dword [esp + 0x100], 2
mov dword [esp + 0x108], 2
mov dword [esp + 0x110], 0x20
mov dword [esp + 0x114], 0
mov dword [esp + 0x118], 4
mov byte [esp + 0x11c], 3
movsd qword [esp + 0x2c8], xmm1
movq xmm1, qword [esp + 0x740]
mov dword [esp + 0x2e0], eax
lea eax, [esp + 0x2b0]
movq qword [esp + 0x2c0], xmm0
movq qword [esp + 0x2d0], xmm2
mov dword [esp + 0xaf0], eax
lea eax, [esp + 0x100]
mov dword [esp + 0xaf4], 0x4e42f0
mov dword [esp + 0x8b0], eax
lea eax, [esp + 0xaf0]
mov dword [esp + 0x8b4], 1
mov dword [esp + 0x8a8], eax
mov dword [esp + 0x8ac], 1
movq qword [esp + 0x2d8], xmm1
lea eax, [esp + 0x8a0]
push eax
push 1
call fcn.00472f10
add esp, 8
mov ebx, 0x80000000
lea ecx, [esp + 0x550]
call fcn.0042e190
cmp dword [esp + 0x890], 0
jne 0x4641fd
lea eax, [esp + 0x894]
push eax
call fcn.00472d20
add esp, 4
cmp ebx, 0x80000000
je 0x45f897
mov eax, dword [esp + 8]
mov dword [eax], ebx
mov dword [eax + 4], esi
mov dword [eax + 8], edi
jmp 0x45f8af
movsd xmm2, qword [esp + 0x2c4]
movsd xmm1, qword [esp + 0x2cc]
movq xmm0, qword [esp + 0x2bc]
mov eax, dword [esp + 0x2b4]
mov ecx, dword [esp + 0x2b8]
movsd qword [esp + 0x220], xmm2
movsd qword [esp + 0x228], xmm1
movq xmm2, qword [esp + 0x2d4]
movq xmm1, qword [esp + 0x2dc]
movq qword [esp + 0x218], xmm0
movq qword [esp + 0x230], xmm2
movq qword [esp + 0x238], xmm1
jmp 0x464349
movsd xmm2, qword [esp + 0x2c4]
movsd xmm1, qword [esp + 0x2cc]
movq xmm0, qword [esp + 0x2bc]
mov eax, dword [esp + 0x2b4]
mov ecx, dword [esp + 0x2b8]
movsd qword [esp + 0x1d0], xmm2
movsd qword [esp + 0x1d8], xmm1
movq xmm2, qword [esp + 0x2d4]
movq xmm1, qword [esp + 0x2dc]
movq qword [esp + 0x1c8], xmm0
movq qword [esp + 0x1e0], xmm2
movq qword [esp + 0x1e8], xmm1
movsd xmm2, qword [esp + 0x1e0]
movsd xmm1, qword [esp + 0x1d8]
movsd xmm0, qword [esp + 0x1e8]
movsd qword [esp + 0x230], xmm2
movsd qword [esp + 0x228], xmm1
movsd xmm2, qword [esp + 0x1c8]
movsd xmm1, qword [esp + 0x1d0]
movsd qword [esp + 0x238], xmm0
movsd qword [esp + 0x220], xmm1
movsd qword [esp + 0x218], xmm2
movsd xmm2, qword [esp + 0x230]
movsd xmm1, qword [esp + 0x228]
movsd xmm0, qword [esp + 0x238]
movsd qword [esp + 0x4b0], xmm2
movsd qword [esp + 0x4a8], xmm1
movsd xmm2, qword [esp + 0x218]
movsd xmm1, qword [esp + 0x220]
movsd qword [esp + 0x4b8], xmm0
movsd qword [esp + 0x4a0], xmm1
movsd qword [esp + 0x498], xmm2
jmp 0x463fb2
lea eax, [esp + 0x654]
mov dword [esp + 0x500], eax
mov word [esp + 0x504], 3
lea ecx, [esp + 0x2b0]
lea edx, [esp + 0x500]
call fcn.0040cce0
mov eax, dword [esp + 0x2b0]
cmp eax, 2
mov dword [esp + 0x10], eax
jne 0x4646a0
mov eax, dword [esp + 0x2b4]
mov dword [esp + 0x104], 0x10315
mov dword [esp + 0x100], eax
lea edx, [esp + 0x100]
lea eax, [esp + 0x40]
lea ecx, [esp + 0x728]
push eax
call fcn.00437770
add esp, 4
mov eax, dword [esp + 0x728]
cmp eax, 2
mov dword [esp + 0x10], eax
jne 0x46470d
mov ecx, dword [esp + 0x65c]
mov eax, dword [esp + 0x658]
test ecx, ecx
mov dword [esp + 0x28], eax
mov dword [esp + 0x30], ecx
je 0x46482d
mov ecx, dword [esp + 0x30]
mov esi, dword [esp + 0x28]
xor eax, eax
mov dword [esp + 0x10], 2
mov dword [esp + 0x250], ecx
jmp 0x464529
lea edx, [esp + 0x108]
lea edi, [esp + 0x8a8]
movsd xmm2, qword [edx + 0x18]
movsd xmm1, qword [edx + 0x10]
mov ecx, dword [edx + 0x28]
movsd xmm0, qword [edx + 0x20]
movsd qword [edi + 0x18], xmm2
movsd qword [edi + 0x10], xmm1
movsd xmm2, qword [edx]
movsd xmm1, qword [edx + 8]
mov dword [edi + 0x28], ecx
movsd qword [edi + 0x20], xmm0
movsd qword [edi + 8], xmm1
movsd qword [edi], xmm2
lea edi, [esp + 0x8a8]
movzx edx, byte [esp + 0x8aa]
movzx ecx, word [esp + 0x8a8]
add esi, 0x38
movsd xmm1, qword [edi + 0xc]
movq xmm0, qword [edi + 4]
movq xmm2, qword [edi + 0x1c]
shl edx, 0x10
movsd qword [esp + 0x9e8], xmm1
movsd xmm1, qword [edi + 0x14]
or ecx, edx
movzx edx, byte [esp + 0x8ab]
dec dword [esp + 0x250]
movq qword [esp + 0x9e0], xmm0
movq qword [esp + 0x9f8], xmm2
movsd qword [esp + 0x9f0], xmm1
movq xmm1, qword [edi + 0x24]
movq qword [esp + 0xa00], xmm1
je 0x46477a
mov edi, dword [esp + 0x10]
movsd xmm2, qword [esp + 0x9f0]
movsd xmm0, qword [esp + 0x9e0]
movsd xmm1, qword [esp + 0x9e8]
movq xmm3, qword [esp + 0x9f8]
mov dword [esp + 0x2b0], edi
mov dword [esp + 0x2b4], eax
mov word [esp + 0x2b8], cx
shr ecx, 0x10
lea eax, [esp + 0x2bc]
mov byte [esp + 0x2ba], cl
mov byte [esp + 0x2bb], dl
movsd qword [eax + 0x10], xmm2
movsd xmm2, qword [esp + 0xa00]
movsd qword [eax + 8], xmm1
movq qword [eax + 0x18], xmm3
movsd qword [eax], xmm0
movsd qword [eax + 0x20], xmm2
mov dword [esp + 0x2e4], esi
push esi
lea eax, [esp + 0x72c]
push eax
call fcn.004d4d70
add esp, 8
cmp dword [esp + 0x728], 2
jne 0x4645db
push dword [esp + 0x72c]
lea eax, [esp + 0x104]
push eax
call fcn.004e5450
add esp, 8
jmp 0x464655
movsd xmm1, qword [esp + 0x748]
movsd xmm2, qword [esp + 0x740]
mov eax, dword [esp + 0x758]
movsd xmm0, qword [esp + 0x750]
movsd qword [esp + 0x120], xmm1
movsd xmm1, qword [esp + 0x738]
movsd qword [esp + 0x118], xmm2
movsd xmm2, qword [esp + 0x728]
mov dword [esp + 0x130], eax
movsd qword [esp + 0x128], xmm0
movsd qword [esp + 0x110], xmm1
movsd xmm1, qword [esp + 0x730]
movsd qword [esp + 0x100], xmm2
movsd qword [esp + 0x108], xmm1
mov ecx, dword [esp + 0x100]
mov eax, dword [esp + 0x104]
cmp ecx, 2
mov dword [esp + 0x10], ecx
jne 0x46446b
push eax
lea eax, [esp + 0x2b4]
push eax
lea eax, [esp + 0x8a8]
push eax
call fcn.004e5610
add esp, 0xc
mov eax, dword [esp + 0x8a0]
mov dword [esp + 0x10], eax
mov eax, dword [esp + 0x8a4]
jmp 0x4644af
movsd xmm2, qword [esp + 0x2c4]
movsd xmm1, qword [esp + 0x2cc]
movq xmm0, qword [esp + 0x2bc]
mov eax, dword [esp + 0x2b4]
mov ecx, dword [esp + 0x2b8]
movsd qword [esp + 0x438], xmm2
movsd qword [esp + 0x440], xmm1
movq xmm2, qword [esp + 0x2d4]
movq xmm1, qword [esp + 0x2dc]
movq qword [esp + 0x430], xmm0
movq qword [esp + 0x448], xmm2
movq qword [esp + 0x450], xmm1
jmp 0x464ed8
movsd xmm2, qword [esp + 0x73c]
movsd xmm1, qword [esp + 0x744]
movq xmm0, qword [esp + 0x734]
mov eax, dword [esp + 0x72c]
mov ecx, dword [esp + 0x730]
movsd qword [esp + 0x438], xmm2
movsd qword [esp + 0x440], xmm1
movq xmm2, qword [esp + 0x74c]
movq xmm1, qword [esp + 0x754]
movq qword [esp + 0x430], xmm0
movq qword [esp + 0x448], xmm2
movq qword [esp + 0x450], xmm1
jmp 0x464ed8
movsd xmm2, qword [esp + 0x9f8]
movsd xmm1, qword [esp + 0x9f0]
movq xmm0, qword [esp + 0xa00]
cmp dword [esp + 0x10], 2
movsd qword [esp + 0xaa8], xmm2
movsd qword [esp + 0xaa0], xmm1
movq xmm2, qword [esp + 0x9e0]
movq xmm1, qword [esp + 0x9e8]
movq qword [esp + 0xab0], xmm0
movq qword [esp + 0xa98], xmm1
movq qword [esp + 0xa90], xmm2
je 0x46482f
movsd xmm2, qword [esp + 0xaa8]
movsd xmm1, qword [esp + 0xaa0]
movq xmm0, qword [esp + 0xab0]
movzx edx, dl
and ecx, 0xffffff
shl edx, 0x18
or ecx, edx
movsd qword [esp + 0x448], xmm2
movsd qword [esp + 0x440], xmm1
movq xmm2, qword [esp + 0xa90]
movq xmm1, qword [esp + 0xa98]
jmp 0x464ebd
xor eax, eax
mov dword [esp + 0x520], eax
mov eax, 9
mov dword [esp + 0x524], eax
lea edx, [esp + 0x520]
lea eax, [esp + 0x40]
lea ecx, [esp + 0xaf0]
push eax
call fcn.00437770
add esp, 4
mov eax, dword [esp + 0xaf0]
cmp eax, 2
mov dword [esp + 0x10], eax
jne 0x464a69
cmp dword [esp + 0x30], 0
je 0x463d57
imul esi, dword [esp + 0x30], 0x38
add esi, dword [esp + 0x28]
push dword [esp + 0x28]
lea eax, [esp + 0x2b4]
push eax
call fcn.004d4d70
add esp, 8
mov ecx, dword [esp + 0x2b0]
mov eax, dword [esp + 0x2b4]
cmp ecx, 2
mov dword [esp + 0x10], ecx
jne 0x464c0c
mov dword [esp + 0x100], eax
mov eax, 9
mov dword [esp + 0x104], eax
lea edx, [esp + 0x100]
lea eax, [esp + 0x40]
lea ecx, [esp + 0x728]
push eax
call fcn.00437770
add esp, 4
mov eax, dword [esp + 0x728]
cmp eax, 2
mov dword [esp + 0x10], eax
jne 0x464e16
mov edx, dword [esp + 0x28]
add edx, 0xc
mov edi, edx
lea eax, [esp + 0x40]
lea ecx, [esp + 0x2b0]
push eax
call fcn.00429cd0
add esp, 4
mov eax, dword [esp + 0x2b0]
cmp eax, 2
mov dword [esp + 0x10], eax
jne 0x464c29
cmp byte [edi + 0x28], 0
je 0x4649b1
mov dword [esp + 0x104], 0
mov dword [esp + 0x100], 1
lea edx, [esp + 0x100]
lea eax, [esp + 0x40]
lea ecx, [esp + 0x2b0]
push eax
call fcn.00437770
add esp, 4
mov eax, dword [esp + 0x2b0]
cmp eax, 2
mov dword [esp + 0x10], eax
jne 0x464daa
mov byte [esp + 0x2b0], 0xff
push 1
lea eax, [esp + 0x2b4]
push eax
lea eax, [esp + 0x48]
push eax
lea eax, [esp + 0x734]
push eax
call fcn.004e7a80
add esp, 0x10
mov eax, dword [esp + 0x728]
cmp eax, 2
mov dword [esp + 0x10], eax
jne 0x464e16
mov eax, edi
add eax, 0xfffffff4
mov edi, eax
push eax
lea eax, [esp + 0x2b4]
push eax
call fcn.004e25f0
add esp, 8
mov ecx, dword [esp + 0x2b0]
mov eax, dword [esp + 0x2b4]
cmp ecx, 2
mov dword [esp + 0x10], ecx
jne 0x464c7b
mov dword [esp + 0xaf0], eax
mov eax, 3
mov dword [esp + 0xaf4], eax
lea edx, [esp + 0xaf0]
lea eax, [esp + 0x40]
lea ecx, [esp + 0x728]
push eax
call fcn.00437770
add esp, 4
mov eax, dword [esp + 0x728]
cmp eax, 2
mov dword [esp + 0x10], eax
jne 0x464cec
push dword [edi + 8]
push dword [edi + 4]
lea eax, [esp + 0x48]
push eax
lea eax, [esp + 0x10c]
push eax
call fcn.004e7a80
add esp, 0x10
mov eax, dword [esp + 0x100]
cmp eax, 2
mov dword [esp + 0x10], eax
jne 0x464d58
add edi, 0x38
cmp edi, esi
mov dword [esp + 0x28], edi
jne 0x464885
jmp 0x463d57
movsd xmm2, qword [esp + 0xb04]
movsd xmm1, qword [esp + 0xb0c]
movq xmm0, qword [esp + 0xafc]
mov eax, dword [esp + 0xaf4]
mov ecx, dword [esp + 0xaf8]
movsd qword [esp + 0x438], xmm2
movsd qword [esp + 0x440], xmm1
movq xmm2, qword [esp + 0xb14]
movq xmm1, qword [esp + 0xb1c]
movq qword [esp + 0x430], xmm0
movq qword [esp + 0x448], xmm2
movq qword [esp + 0x450], xmm1
jmp 0x464ed8
movsd xmm2, qword [esp + 0x2c4]
movsd xmm1, qword [esp + 0x2cc]
movq xmm0, qword [esp + 0x2bc]
mov eax, dword [esp + 0x2b4]
mov ecx, dword [esp + 0x2b8]
movsd qword [esp + 0x114], xmm2
movsd qword [esp + 0x11c], xmm1
movq xmm2, qword [esp + 0x2d4]
movq xmm1, qword [esp + 0x2dc]
movq qword [esp + 0x10c], xmm0
movq qword [esp + 0x124], xmm2
movq qword [esp + 0x12c], xmm1
mov dword [esp + 0x108], ecx
mov dword [esp + 0x104], eax
jmp 0x464bba
movsd xmm1, qword [esp + 0x74c]
movsd xmm2, qword [esp + 0x744]
movq xmm0, qword [esp + 0x754]
movsd qword [esp + 0x124], xmm1
movsd xmm1, qword [esp + 0x73c]
movsd qword [esp + 0x11c], xmm2
movq xmm2, qword [esp + 0x72c]
movq qword [esp + 0x12c], xmm0
movsd qword [esp + 0x114], xmm1
movq xmm1, qword [esp + 0x734]
movq qword [esp + 0x104], xmm2
movq qword [esp + 0x10c], xmm1
movsd xmm2, qword [esp + 0x114]
movsd xmm1, qword [esp + 0x11c]
movsd xmm0, qword [esp + 0x10c]
mov eax, dword [esp + 0x104]
mov ecx, dword [esp + 0x108]
movsd qword [esp + 0x4a0], xmm2
movsd qword [esp + 0x4a8], xmm1
movsd xmm2, qword [esp + 0x124]
movsd xmm1, qword [esp + 0x12c]
jmp 0x463f97
movsd xmm2, qword [esp + 0x2c4]
movsd xmm1, qword [esp + 0x2cc]
movsd xmm0, qword [esp + 0x2bc]
jmp 0x464c4b
movsd xmm2, qword [esp + 0x2c4]
movsd xmm1, qword [esp + 0x2cc]
movsd xmm0, qword [esp + 0x2bc]
mov eax, dword [esp + 0x2b4]
mov ecx, dword [esp + 0x2b8]
movsd qword [esp + 0x8a8], xmm2
movsd qword [esp + 0x8b0], xmm1
movsd xmm2, qword [esp + 0x2d4]
movsd xmm1, qword [esp + 0x2dc]
jmp 0x464e63
movsd xmm2, qword [esp + 0x2c4]
movsd xmm1, qword [esp + 0x2cc]
movq xmm0, qword [esp + 0x2bc]
mov ecx, dword [esp + 0x2b8]
movsd qword [esp + 0x114], xmm2
movsd qword [esp + 0x11c], xmm1
movq xmm2, qword [esp + 0x2d4]
movq xmm1, qword [esp + 0x2dc]
movq qword [esp + 0x10c], xmm0
movq qword [esp + 0x124], xmm2
movq qword [esp + 0x12c], xmm1
mov dword [esp + 0x108], ecx
mov dword [esp + 0x104], eax
jmp 0x464d58
movsd xmm1, qword [esp + 0x74c]
movsd xmm2, qword [esp + 0x744]
movq xmm0, qword [esp + 0x754]
movsd qword [esp + 0x124], xmm1
movsd xmm1, qword [esp + 0x73c]
movsd qword [esp + 0x11c], xmm2
movq xmm2, qword [esp + 0x72c]
movq qword [esp + 0x12c], xmm0
movsd qword [esp + 0x114], xmm1
movq xmm1, qword [esp + 0x734]
movq qword [esp + 0x104], xmm2
movq qword [esp + 0x10c], xmm1
movsd xmm2, qword [esp + 0x114]
movsd xmm1, qword [esp + 0x11c]
movsd xmm0, qword [esp + 0x10c]
mov eax, dword [esp + 0x104]
mov ecx, dword [esp + 0x108]
movsd qword [esp + 0x8a8], xmm2
movsd qword [esp + 0x8b0], xmm1
movsd xmm2, qword [esp + 0x124]
movsd xmm1, qword [esp + 0x12c]
jmp 0x464e63
movsd xmm1, qword [esp + 0x2d4]
movsd xmm2, qword [esp + 0x2cc]
movq xmm0, qword [esp + 0x2dc]
movsd qword [esp + 0x74c], xmm1
movsd xmm1, qword [esp + 0x2c4]
movsd qword [esp + 0x744], xmm2
movq xmm2, qword [esp + 0x2b4]
movq qword [esp + 0x754], xmm0
movsd qword [esp + 0x73c], xmm1
movq xmm1, qword [esp + 0x2bc]
movq qword [esp + 0x72c], xmm2
movq qword [esp + 0x734], xmm1
movsd xmm2, qword [esp + 0x73c]
movsd xmm1, qword [esp + 0x744]
movsd xmm0, qword [esp + 0x734]
mov eax, dword [esp + 0x72c]
mov ecx, dword [esp + 0x730]
movsd qword [esp + 0x8a8], xmm2
movsd qword [esp + 0x8b0], xmm1
movsd xmm2, qword [esp + 0x74c]
movsd xmm1, qword [esp + 0x754]
movsd qword [esp + 0x8a0], xmm0
movsd qword [esp + 0x8b8], xmm2
movsd qword [esp + 0x8c0], xmm1
movsd xmm2, qword [esp + 0x8b8]
movsd xmm1, qword [esp + 0x8b0]
movq xmm0, qword [esp + 0x8c0]
movsd qword [esp + 0x448], xmm2
movsd qword [esp + 0x440], xmm1
movq xmm2, qword [esp + 0x8a0]
movq xmm1, qword [esp + 0x8a8]
movq qword [esp + 0x450], xmm0
movq qword [esp + 0x438], xmm1
movq qword [esp + 0x430], xmm2
movsd xmm0, qword [esp + 0x450]
movq xmm1, qword [esp + 0x438]
movsd qword [esp + 0x1e8], xmm0
movsd xmm0, qword [esp + 0x448]
movsd qword [esp + 0x1e0], xmm0
movsd xmm0, qword [esp + 0x440]
movsd qword [esp + 0x1d8], xmm0
movq xmm0, qword [esp + 0x430]
jmp 0x463c37
movsd xmm2, qword [esp + 0x2c4]
movsd xmm1, qword [esp + 0x2cc]
movq xmm0, qword [esp + 0x2bc]
mov eax, dword [esp + 0x2b4]
mov ecx, dword [esp + 0x2b8]
movsd qword [esp + 0xb4], xmm2
movsd qword [esp + 0xbc], xmm1
movq xmm2, qword [esp + 0x2d4]
movq xmm1, qword [esp + 0x2dc]
movq qword [esp + 0xac], xmm0
movq qword [esp + 0xc4], xmm2
movq qword [esp + 0xcc], xmm1
jmp 0x46400c
push dword [esp + 0xc]
push esi
call fcn.004e5780
add esp, 8
mov eax, dword [esp + 0x2b0]
cmp eax, 2
mov dword [esp + 0x10], eax
jne 0x465003
mov ebx, dword [esp + 0x2b4]
push edi
push esi
call fcn.004e5780
add esp, 8
mov eax, dword [esp + 0x2b0]
cmp eax, 2
mov dword [esp + 0x10], eax
jne 0x46507e
mov eax, dword [esp + 0x2b4]
mov ecx, 0x10
mov byte [esp + 0xa8], 3
mov dword [esp + 0xac], ebx
mov dword [esp + 0x10], 0
mov dword [esp + ecx + 0xa0], eax
jmp 0x46401a
movsd xmm2, qword [esp + 0x2c0]
movsd xmm1, qword [esp + 0x2c8]
movq xmm0, qword [esp + 0x2b8]
mov ecx, dword [esp + 0x2e0]
mov eax, dword [esp + 0x2b4]
movsd qword [esp + 0xb0], xmm2
movsd qword [esp + 0xb8], xmm1
movq xmm2, qword [esp + 0x2d0]
movq xmm1, qword [esp + 0x2d8]
movq qword [esp + 0xa8], xmm0
mov dword [esp + 0xd0], ecx
movq qword [esp + 0xc0], xmm2
movq qword [esp + 0xc8], xmm1
mov dword [esp + 0xa4], eax
jmp 0x46401a
movsd xmm2, qword [esp + 0x2d0]
movsd xmm1, qword [esp + 0x2c8]
lea ecx, [esp + 0xa8]
mov edx, dword [esp + 0x2e0]
movq xmm0, qword [esp + 0x2d8]
mov eax, dword [esp + 0x2b4]
movsd qword [ecx + 0x18], xmm2
movsd qword [ecx + 0x10], xmm1
movq xmm2, qword [esp + 0x2c0]
movq xmm1, qword [esp + 0x2b8]
mov dword [ecx + 0x28], edx
movq qword [ecx + 0x20], xmm0
movq qword [ecx + 8], xmm2
movq qword [ecx], xmm1
mov ecx, 4
mov dword [esp + ecx + 0xa0], eax
jmp 0x46401a