Function at 0x406280
Capabilities:
Check for software breakpoints

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
mov eax, 0x15918
call fcn.0046bc78
sub rsp, rax
movaps xmmword [rsp + 0x15900], xmm11
movaps xmmword [rsp + 0x158f0], xmm10
movaps xmmword [rsp + 0x158e0], xmm9
movdqa xmmword [rsp + 0x158d0], xmm8
movaps xmmword [rsp + 0x158c0], xmm7
movaps xmmword [rsp + 0x158b0], xmm6
mov rbx, rcx
lea r14, [rcx + 0x148]
lea r12, [rsp + 0x328]
lea rax, [rcx + 0x108]
mov qword [rsp + 0x110], rax
lea rax, [rcx + 0x10]
mov qword [rsp + 0x108], rax
lea rax, [rcx + 0x30]
mov qword [rsp + 0x180], rax
lea rax, [rcx + 0x50]
mov qword [rsp + 0x100], rax
mov eax, 0x88
lea rcx, [rsp + 0x3f8]
add rcx, rax
mov qword [rsp + 0xa8], rcx
lea rcx, [rbx + 0xe8]
mov qword [rsp + 0x160], rcx
add rax, rbx
mov qword [rsp + 0x178], rax
movdqa xmm6, xmmword [0x0046d030]
movdqa xmm7, xmmword [0x0046d040]
pxor xmm8, xmm8
movdqa xmm9, xmmword [str._n_n_n_nd_n]
movdqa xmm10, xmmword [0x0046d060]
lea rax, [rbx + 0x12c10]
mov qword [rsp + 0x158], rax
lea rax, [rbx + 0x60]
mov qword [rsp + 0x170], rax
lea rax, [rbx + 0xcb]
mov qword [rsp + 0x168], rax
lea rax, [rbx + 0x168]
mov qword [rsp + 0xf8], rax
lea r15, [rsp + 0x48]
mov rsi, qword [rbx + 0xd8]
mov rcx, rsi
call fcn.00409d5f
test ax, ax
jne 0x407520
mov rcx, rsi
call fcn.00409dd8
mov r9, rdx
mov rcx, r15
mov rdx, r14
mov r8, rax
call fcn.00409df9
movzx edi, word [rsp + 0x4c]
test di, di
jne 0x407528
mov eax, dword [rsp + 0x48]
add ax, word [rsi + 0x22]
and eax, 0x7fff
mov word [rsi + 0x22], ax
mov al, byte [rbx + 0x164]
and al, 0xf
cmp al, 6
jb 0x4063b1
mov rax, qword [rbx + 0x148]
mov ecx, dword [rbx + 0x160]
mov qword [rsp + 0x318], rax
mov qword [rsp + 0x320], rcx
movups xmm11, xmmword [0x00494920]
movups xmmword [r12], xmm11
lea rax, [0x00480860]
mov qword [rsp + 0x338], rax
mov qword [rsp + 0x340], 2
lea rcx, [rsp + 0x318]
call fcn.0040e0c1
cmp rdx, 0xc
jb 0x407524
mov rdi, rax
mov r12, rdx
mov rax, qword [rax]
movabs rcx, 0x312e312f50545448
cmp rax, rcx
je 0x406491
movabs rcx, 0x302e312f50545448
cmp rax, rcx
jne 0x407524
xor ebp, ebp
jmp 0x406494
mov bpl, 1
cmp byte [rdi + 8], 0x20
jne 0x407524
movzx eax, word [rdi + 9]
movd xmm0, eax
pand xmm0, xmm6
movzx eax, byte [rdi + 0xb]
movd xmm1, eax
pslld xmm1, 0x10
movdqa xmm2, xmm6
pandn xmm2, xmm1
por xmm2, xmm0
paddb xmm2, xmm7
punpcklbw xmm2, xmm8
punpcklwd xmm2, xmm8
pshufd xmm0, xmm2, 0xf5
pmuludq xmm0, xmm9
pmuludq xmm2, xmm10
movd eax, xmm2
movd ecx, xmm0
add ecx, eax
pshufd xmm0, xmm2, 0xee
movd r13d, xmm0
add r13d, ecx
add rdi, 0xc
add r12, 0xfffffffffffffff4
xor r15d, r15d
cmp r12, r15
je 0x406534
mov r9b, byte [rdi + r15]
mov r8d, 1
lea rcx, [rsp + 0x80]
lea rdx, [0x00494790]
call fcn.0040b490
cmp byte [rsp + 0x88], 0
je 0x406537
inc r15
jmp 0x406502
mov r15, r12
add rdi, r15
sub r12, r15
mov byte [rbx + 0x12b92], bpl
and r13d, 0x3ff
mov word [rbx + 0x12b90], r13w
mov qword [rbx + 0xf8], rdi
mov qword [rbx + 0x100], r12
mov byte [rbx + 0x12b93], bpl
lea r12, [rsp + 0x328]
lea rcx, [rsp + 0x318]
call fcn.0040e0c1
test rax, rax
je 0x407524
test rdx, rdx
je 0x406a5c
movzx ecx, byte [rax]
mov di, 0x21
cmp ecx, 9
je 0x407528
cmp ecx, 0x20
je 0x407528
mov qword [rsp + 0xb0], rax
mov qword [rsp + 0xb8], rdx
lea rax, [rsp + 0xc0]
movups xmmword [rax], xmm11
mov byte [rsp + 0xd0], 0x3a
lea rcx, [rsp + 0xb0]
call fcn.0040e14f
mov r15, rax
mov rbp, rdx
mov rdx, qword [rsp + 0xb8]
cmp byte [rsp + 0xc8], 0
mov rcx, rdx
je 0x4065fc
mov rcx, qword [rsp + 0xc0]
sub rdx, rcx
add rcx, qword [rsp + 0xb0]
mov r9d, 2
lea r8, [0x00494792]
call fcn.0040e1cf
test rbp, rbp
je 0x407524
mov r13, rax
mov rdi, rdx
mov r9d, 0xa
mov rcx, r15
mov rdx, rbp
lea r8, str.connection
call fcn.00409d09
test al, 1
je 0x40666b
mov r9d, 5
mov rcx, r13
mov rdx, rdi
lea r8, str.close
call fcn.00409d09
not al
and al, 1
mov byte [rbx + 0x12b93], al
jmp 0x406570
mov r9d, 0xc
mov rcx, r15
mov rdx, rbp
lea r8, str.content_type
call fcn.00409d09
test al, 1
je 0x40669a
mov qword [rbx + 0x118], r13
mov qword [rbx + 0x120], rdi
jmp 0x406570
mov r9d, 8
mov rcx, r15
mov rdx, rbp
lea r8, str.location
call fcn.00409d09
test al, 1
je 0x4066c9
mov qword [rbx + 0x108], r13
mov qword [rbx + 0x110], rdi
jmp 0x406570
mov r9d, 0x13
mov rcx, r15
mov rdx, rbp
lea r8, str.content_disposition
call fcn.00409d09
test al, 1
je 0x4066f8
mov qword [rbx + 0x128], r13
mov qword [rbx + 0x130], rdi
jmp 0x406570
mov r9d, 0x11
mov rcx, r15
mov rdx, rbp
lea r8, str.transfer_encoding
call fcn.00409d09
test al, 1
je 0x406844
mov qword [rsp + 0x1a8], r13
mov qword [rsp + 0x1b0], rdi
mov qword [rsp + 0x1b8], rdi
mov byte [rsp + 0x1c0], 1
mov byte [rsp + 0x1c8], 0x2c
lea rcx, [rsp + 0x1a8]
call fcn.0040e25b
mov rdi, rax
mov r15, rdx
mov r9d, 1
mov rcx, rax
lea r8, [0x00494790]
call fcn.0040e1cf
mov r13, rax
mov rax, rdx
and rax, 0xfffffffffffffffc
cmp rax, 4
lea rcx, str.none
jne 0x4067c4
mov rbp, rdx
lea rax, [0x00494960]
mov r12d, dword [rax + rdx*4]
mov rax, r12
shl rax, 4
cmp qword [rax + rcx + 8], rbp
jne 0x4067c4
mov rcx, qword [rax + rcx]
mov rdx, rbp
mov r8, r13
call fcn.0040ea38
test al, 1
jne 0x406914
test r12, r12
mov r12d, 1
lea rcx, str.none
je 0x40678d
lea r13, [rsp + 0x1a8]
test rdi, rdi
lea r12, [rsp + 0x328]
je 0x40682e
mov r9d, 1
mov rcx, rdi
mov rdx, r15
lea r8, [0x00494790]
call fcn.0040e1cf
mov r8, rdx
lea rcx, [rsp + 0x118]
mov rdx, rax
call fcn.0040e2cc
cmp byte [rsp + 0x119], 0
je 0x407572
test byte [rbx + 0x12b95], 7
jne 0x407524
mov al, byte [rsp + 0x118]
and al, 7
mov byte [rbx + 0x12b95], al
mov rcx, r13
call fcn.0040e25b
test rax, rax
je 0x406570
jmp 0x407572
mov r9d, 0xe
mov rcx, r15
mov rdx, rbp
lea r8, str.content_length
call fcn.00409d09
test al, 1
je 0x4068a3
test rdi, rdi
je 0x407578
movzx eax, byte [r13]
cmp eax, 0x2d
je 0x40694f
cmp eax, 0x2b
jne 0x406962
inc r13
lea r8, [rdi - 1]
lea rcx, [rsp + 0x50]
mov rdx, r13
call fcn.00423089
mov r15, qword [rsp + 0x50]
movzx eax, word [rsp + 0x58]
jmp 0x406985
mov r9d, 0x10
mov rcx, r15
mov rdx, rbp
lea r8, str.content_encoding
call fcn.00409d09
test al, 1
je 0x406570
test byte [rbx + 0x12b95], 7
jne 0x407524
mov r9d, 1
mov rcx, r13
mov rdx, rdi
lea r8, [0x00494790]
call fcn.0040e1cf
mov r8, rdx
lea rcx, [rsp + 0x68]
mov rdx, rax
call fcn.0040e2cc
cmp byte [rsp + 0x69], 0
je 0x407572
mov al, byte [rsp + 0x68]
and al, 7
mov byte [rbx + 0x12b95], al
jmp 0x406570
test byte [rbx + 0x12b94], 1
je 0x407524
lea rax, [0x0049495d]
mov al, byte [r12 + rax]
and al, 1
mov byte [rbx + 0x12b94], al
lea r13, [rsp + 0x1a8]
mov rcx, r13
call fcn.0040e25b
mov rdi, rax
mov r15, rdx
jmp 0x4067cc
mov ax, 0x14
cmp rdi, 1
je 0x406960
cmp byte [r13 + 1], 0x5f
jne 0x4069b7
jmp 0x406985
lea rcx, [rsp + 0x80]
mov rdx, r13
mov r8, rdi
call fcn.00423089
mov r15, qword [rsp + 0x80]
movzx eax, word [rsp + 0x88]
test ax, ax
jne 0x407578
cmp byte [rbx + 0x140], 0
je 0x4069a4
cmp qword [rbx + 0x138], r15
jne 0x407524
mov qword [rbx + 0x138], r15
mov byte [rbx + 0x140], 1
jmp 0x406570
cmp byte [r13 + rdi - 1], 0x5f
je 0x406985
mov ebp, 1
xor r15d, r15d
cmp rdi, rbp
je 0x406a40
mov dl, byte [r13 + rbp]
cmp dl, 0x5f
je 0x406a3b
lea rcx, [rsp + 0x138]
mov r8b, 0xa
call fcn.00423250
movzx eax, word [rsp + 0x138]
test ax, ax
jne 0x406985
movzx ecx, byte [rsp + 0x13a]
test r15, r15
je 0x406a31
mov rax, r15
mov edx, 0xa
mul rdx
seto byte [rsp + 0x128]
seto dl
test dl, dl
jne 0x406a47
mov r15, rax
sub r15, rcx
setb al
setb byte [rsp + 0x128]
test al, al
je 0x406a3b
jmp 0x406a47
test cl, cl
jg 0x406a50
neg cl
movzx r15d, cl
inc rbp
jmp 0x4069c7
xor eax, eax
jmp 0x406985
mov ax, 0x13
jmp 0x406960
mov ax, 0x13
xor r15d, r15d
jmp 0x406985
movzx ecx, word [rbx + 0x12b90]
mov eax, ecx
and eax, 0x3ff
cmp ax, 0x64
lea r15, [rsp + 0x48]
lea r13, [rsp + 0x1a8]
jne 0x406aa7
mov word [rbx + 0x164], 1
and dword [rbx + 0x160], 0
and qword [rbx + 0x158], 0
cmp byte [rbx + 0x12c4c], 0
jne 0x4063aa
jmp case.default.0x4075ae
movabs rax, 0x5443454e4e4f43
cmp qword [rbx + 0xe0], rax
jne 0x406ac9
call fcn.0040a610
and al, 7
cmp al, 1
je 0x407710
mov al, 1
cmp byte [rbx + 0x12b93], 0
je 0x406adc
mov al, byte [rbx + 0x12c4a]
xor al, 1
and al, 1
mov byte [rsi + 0x2a], al
cmp qword [rbx + 0xe0], 0x44414548
je 0x407714
movzx esi, word [rbx + 0x12b90]
mov ecx, esi
call fcn.0040a610
test al, 7
je 0x407714
and esi, 0x3ff
cmp si, 0x130
je 0x407714
cmp esi, 0xcc
je 0x407714
test byte [rbx + 0x12b94], 1
jne 0x406b3f
and qword [rbx + 0x158], 0
mov byte [rbx + 0x164], 7
jmp 0x406b6c
cmp byte [rbx + 0x140], 0
je 0x406b64
mov rcx, qword [rbx + 0x138]
mov qword [rbx + 0x158], rcx
test rcx, rcx
jne 0x406b6c
mov byte [rbx + 0x165], 1
jmp 0x406b6c
or qword [rbx + 0x158], 0xffffffffffffffff
and al, 7
cmp al, 2
jne 0x40757e
cmp word [rbx + 0x12c48], 0xffff
je 0x40757e
mov byte [rbx + 0x12b96], 1
lea rcx, [rsp + 0x308]
mov rdx, rbx
movabs r8, 0xaaaaaaaaaaaaaaaa
xor r9d, r9d
call fcn.0040a66a
movzx edi, word [rsp + 0x310]
test di, di
jne 0x407528
cmp word [rbx + 0x12c48], 0
je 0x4076c9
mov rax, qword [rsp + 0x110]
mov rax, qword [rax]
test rax, rax
je 0x4076d2
mov rsi, qword [rbx + 0x110]
mov rcx, qword [rbx]
mov qword [rsp + 0x40], rcx
mov rcx, qword [rbx + 8]
mov qword [rsp + 0x30], rcx
mov rcx, qword [rsp + 0x108]
movups xmm0, xmmword [rcx]
movups xmm1, xmmword [rcx + 0x10]
movaps xmmword [rsp + 0x2f0], xmm1
movaps xmmword [rsp + 0x2e0], xmm0
mov rcx, qword [rsp + 0x180]
movups xmm0, xmmword [rcx]
movups xmm1, xmmword [rcx + 0x10]
movaps xmmword [rsp + 0x2d0], xmm1
movaps xmmword [rsp + 0x2c0], xmm0
mov rcx, qword [rsp + 0x100]
movups xmm0, xmmword [rcx]
movups xmm1, xmmword [rcx + 0x10]
movaps xmmword [rsp + 0x2a0], xmm0
movaps xmmword [rsp + 0x2b0], xmm1
mov rcx, qword [rbx + 0x70]
mov qword [rsp + 0xe0], rcx
mov rcx, qword [rbx + 0x78]
mov qword [rsp + 0xf0], rcx
mov rcx, qword [rbx + 0x80]
mov qword [rsp + 0xe8], rcx
mov rcx, qword [rsp + 0x178]
movdqu xmm0, xmmword [rcx]
movdqu xmm1, xmmword [rcx + 0x10]
movdqa xmmword [rsp + 0x290], xmm1
movdqa xmmword [rsp + 0x280], xmm0
mov ecx, dword [rbx + 0xc8]
mov dword [rsp + 0x3c], ecx
mov rcx, qword [rbx + 0x148]
xor edx, edx
cmp rsi, rdx
je 0x406cbf
mov r8b, byte [rax + rdx]
mov byte [rcx + rdx], r8b
inc rdx
jmp 0x406cad
mov rdi, qword [rbx + 0x148]
mov r15, r13
mov r13, qword [rbx + 0x150]
lea rax, [rdi + rsi]
sub r13, rsi
mov qword [rsp + 0x150], rax
mov qword [rbx + 0x148], rax
mov qword [rbx + 0x150], r13
mov rcx, r15
mov rdx, rdi
mov r8, rsi
call fcn.00404512
movzx ebp, word [rsp + 0x278]
test bp, bp
je 0x406d39
mov qword [rsp + 0x20], rsi
lea r15, [rsp + 0x318]
mov rcx, r15
lea rdx, [0x004a6050]
xor r8d, r8d
mov r9, rdi
call fcn.00407f5f
cmp word [rsp + 0x3e8], 0
jne 0x40783b
mov rax, qword [r15 + 8]
mov rdi, qword [r15 + 0x70]
mov rsi, qword [r15 + 0x78]
test rax, rax
je 0x406dab
and word [rsp + 0x4c8], 0
mov rcx, qword [r15]
mov qword [rsp + 0x3f8], rcx
mov qword [rsp + 0x400], rax
movups xmm0, xmmword [r15 + 0x10]
movups xmm1, xmmword [r15 + 0x20]
lea r9, [rsp + 0x408]
movups xmmword [r9 + 0x10], xmm1
movups xmmword [r9], xmm0
movups xmm0, xmmword [r15 + 0x30]
movups xmm1, xmmword [r15 + 0x40]
movups xmmword [r9 + 0x30], xmm1
movups xmmword [r9 + 0x20], xmm0
movups xmm0, xmmword [r15 + 0x50]
movups xmm1, xmmword [r15 + 0x60]
movups xmmword [r9 + 0x50], xmm1
movups xmmword [r9 + 0x40], xmm0
jmp 0x406e22
cmp byte [r15 + 0x68], 0
je 0x4071d4
and word [rsp + 0x4c8], 0
mov rax, qword [rsp + 0x40]
mov qword [rsp + 0x3f8], rax
mov rax, qword [rsp + 0x30]
mov qword [rsp + 0x400], rax
movups xmm0, xmmword [r15 + 0x10]
movups xmm1, xmmword [r15 + 0x20]
lea r9, [rsp + 0x408]
movups xmmword [r9 + 0x10], xmm1
movups xmmword [r9], xmm0
movups xmm0, xmmword [r15 + 0x30]
movups xmm1, xmmword [r15 + 0x40]
movups xmmword [r9 + 0x30], xmm1
movups xmmword [r9 + 0x20], xmm0
mov rax, qword [r15 + 0x60]
mov qword [r9 + 0x50], rax
movups xmm0, xmmword [r15 + 0x50]
movups xmmword [r9 + 0x40], xmm0
mov byte [rsp + 0x460], 1
mov eax, dword [r15 + 0xc8]
mov dword [rsp + 0x4c0], eax
lea rcx, [rsp + 0x468]
mov rdx, rdi
mov r8, rsi
mov rsi, r9
call fcn.0040e586
movups xmm0, xmmword [r15 + 0x88]
movups xmm1, xmmword [r15 + 0x98]
mov rax, qword [rsp + 0xa8]
movups xmmword [rax + 0x10], xmm1
movups xmmword [rax], xmm0
lea rdi, [rsp + 0x1a8]
movups xmm0, xmmword [r15 + 0xa8]
movdqu xmm1, xmmword [r15 + 0xb8]
movdqu xmmword [rsi + 0xa8], xmm1
movups xmmword [rsi + 0x98], xmm0
mov rdx, qword [rbx + 0xd0]
mov r8, qword [rbx + 0xd8]
lea rcx, [rdx + 0x38]
call fcn.00409c1e
and qword [rbx + 0xd8], 0
movdqu xmm0, xmmword [rbx + 0x148]
and qword [rsp + 0x1a8], 0
movdqu xmmword [rsp + 0x1b0], xmm0
mov qword [rsp + 0x80], rdi
lea rax, [0x004935b0]
mov qword [rsp + 0x88], rax
lea rcx, [rsp + 0x318]
lea rdx, [rsp + 0x3f8]
lea r8, [rsp + 0x80]
call fcn.00408ece
movzx edi, word [rsp + 0x3f0]
test di, di
jne 0x4076df
mov al, byte [rsp + 0x318]
mov rsi, qword [rsp + 0x320]
mov rdi, qword [rsp + 0x328]
mov rcx, qword [rsp + 0x370]
mov qword [rsp + 0x30], rcx
mov r13, qword [rsp + 0x378]
movzx r15d, word [rsp + 0x3e8]
mov cl, byte [rsp + 0x3ea]
mov byte [rsp + 0x40], cl
and al, 1
mov byte [rsp + 0x50], al
mov rbp, qword [rbx + 0x58]
mov r8, qword [rbx]
mov r9, qword [rbx + 8]
mov rcx, rsi
mov rdx, rdi
call fcn.00409d09
test al, 1
je 0x406fa9
mov rcx, r13
sub rcx, rbp
jb 0x406fa9
mov rax, qword [rsp + 0x100]
mov r8, qword [rax]
add rcx, qword [rsp + 0x30]
mov rdx, rbp
mov r9, rbp
call fcn.00409d09
test al, 1
je 0x406fa9
cmp r13, rbp
je 0x406fc2
not rbp
mov rax, qword [rsp + 0x30]
add rax, r13
cmp byte [rbp + rax], 0x2e
je 0x406fc2
movabs rax, 0xaaaaaaaaaaaaaaaa
mov qword [rbx + 0x12c38], rax
and qword [rbx + 0x12c40], 0
movzx eax, word [rbx + 0x12b90]
and eax, 0x3ff
lea ecx, [rax - 0x12d]
cmp ecx, 2
jae 0x406fe8
cmp qword [rbx + 0xe0], 0x54534f50
je 0x406fef
jmp 0x40702b
cmp eax, 0x12f
jne 0x40702b
mov qword [rbx + 0xe0], 0x544547
movups xmm0, xmmword [0x00480980]
mov rax, qword [rsp + 0x160]
movups xmmword [rax], xmm0
movdqu xmm0, xmmword [0x00480990]
mov rcx, qword [rsp + 0x158]
movdqu xmmword [rcx], xmm0
mov rax, qword [0x004809a0]
mov qword [rcx + 0x10], rax
cmp byte [rbx + 0xf0], 2
jne 0x4076db
mov qword [rbx], rsi
mov qword [rbx + 8], rdi
movdqu xmm0, xmmword [r12 + 8]
movdqu xmm1, xmmword [r12 + 0x18]
movdqu xmm2, xmmword [r12 + 0x28]
movups xmm3, xmmword [r12 + 0x38]
mov rax, qword [rsp + 0x108]
movups xmmword [rax + 0x30], xmm3
movdqu xmmword [rax + 0x20], xmm2
movdqu xmmword [rax + 0x10], xmm1
movdqu xmmword [rax], xmm0
mov r8, qword [rsp + 0x30]
mov qword [rbx + 0x50], r8
mov qword [rbx + 0x58], r13
mov ecx, 0xd
mov rdi, qword [rsp + 0x170]
lea rsi, [rsp + 0x380]
rep movsq qword [rdi], qword [rsi]
mov word [rbx + 0xc8], r15w
mov r9b, byte [rsp + 0x40]
mov byte [rbx + 0xca], r9b
mov al, byte [r12 + 0xc7]
mov rcx, qword [rsp + 0x168]
mov byte [rcx + 4], al
mov eax, dword [r12 + 0xc3]
mov dword [rcx], eax
mov al, byte [rsp + 0x50]
test al, 1
mov ecx, 0x50
mov edx, 0x1bb
cmovne ecx, edx
mov rdx, qword [rbx + 0xd0]
test r9b, r9b
cmove r15d, ecx
mov byte [rsp + 0x28], al
mov word [rsp + 0x20], r15w
lea rcx, [rsp + 0xb0]
mov r9, r13
call fcn.0040914a
movzx edi, word [rsp + 0xb8]
test di, di
jne 0x4076df
mov rax, qword [rsp + 0xb0]
mov qword [rbx + 0xd8], rax
dec word [rbx + 0x12c48]
mov cx, 1
mov word [rbx + 0x164], cx
and dword [rbx + 0x160], 0
and qword [rbx + 0x158], 0
mov rax, qword [rsp + 0x110]
movdqu xmmword [rax + 0x20], xmm8
movdqu xmmword [rax + 0x10], xmm8
movdqu xmmword [rax], xmm8
movdqu xmmword [rax + 0x30], xmm8
mov word [rbx + 0x12b94], cx
mov r8d, 0x12a28
mov rcx, qword [rsp + 0xf8]
lea rdx, [0x004809a8]
call fcn.0046bf16
mov byte [rbx + 0x12b96], 0
mov rax, qword [rsp + 0x1a8]
mov rcx, qword [rsp + 0x1b8]
mov rdx, qword [rsp + 0x1b0]
add rdx, rax
sub rcx, rax
mov qword [rbx + 0x148], rdx
mov qword [rbx + 0x150], rcx
mov rcx, rbx
call fcn.004052ef
test ax, ax
lea r15, [rsp + 0x48]
je 0x4063aa
jmp 0x407520
test rsi, rsi
je 0x40721d
cmp byte [rdi], 0x2f
jne 0x40728d
lea rcx, [rsp + 0x50]
mov rdx, rdi
mov r8, rsi
call fcn.0040e586
lea rax, [r15 + 0x88]
lea rsi, [rsp + 0x408]
lea rdi, [rsp + 0x1a8]
mov rcx, qword [rsp + 0x30]
mov rdx, qword [rsp + 0x40]
mov r8d, dword [rsp + 0x3c]
jmp 0x407484
mov rax, qword [rsp + 0xe0]
mov qword [rsp + 0x50], rax
mov rax, qword [rsp + 0xf0]
mov qword [rsp + 0x58], rax
mov rax, qword [rsp + 0xe8]
mov qword [rsp + 0x60], rax
cmp byte [r15 + 0xa0], 0
mov r8d, dword [rsp + 0x3c]
je 0x407406
mov rax, qword [r15 + 0x98]
mov qword [rsp + 0x90], rax
movdqu xmm0, xmmword [r15 + 0x88]
movdqa xmmword [rsp + 0x80], xmm0
mov byte [rsp + 0x98], 1
lea rax, [rsp + 0x80]
jmp 0x407432
mov rax, qword [rsp + 0x150]
mov qword [rsp + 0x68], rax
mov qword [rsp + 0x70], r13
and qword [rsp + 0x78], 0
mov rax, qword [rsp + 0xf0]
test rax, rax
je 0x40735d
mov rcx, qword [rsp + 0xe0]
mov qword [rsp + 0x138], rcx
mov qword [rsp + 0x140], rax
mov rax, qword [rsp + 0xe8]
mov qword [rsp + 0x148], rax
lea rax, [rsp + 0x68]
mov qword [rsp + 0x188], rax
lea rax, [rsp + 0x188]
mov qword [rsp + 0x198], rax
lea rax, [0x0040c5fa]
mov qword [rsp + 0x1a0], rax
lea rcx, [rsp + 0x198]
lea rdx, [rsp + 0x138]
call fcn.0040c531
test ax, ax
jne 0x407839
mov rdx, qword [rsp + 0x68]
mov r8, qword [rsp + 0x78]
lea rcx, [rsp + 0x128]
mov r9b, 0x2f
call fcn.00415fc2
cmp byte [rsp + 0x130], 0
je 0x40744e
mov rax, qword [rsp + 0x128]
mov qword [rsp + 0x78], rax
lea rax, [rsp + 0x68]
mov qword [rsp + 0x190], rax
lea rax, [rsp + 0x190]
mov qword [rsp + 0x118], rax
lea rax, [0x0040c5fa]
mov qword [rsp + 0x120], rax
mov r8d, 1
lea r13, [rsp + 0x118]
mov rcx, r13
lea rdx, str._s
call fcn.004095e6
test ax, ax
jne 0x407839
mov rcx, rdi
mov rdx, rsi
lea r8, [0x004ceac0]
mov r9, r13
call fcn.0044c5c9
test ax, ax
lea rdi, [rsp + 0x1a8]
jne 0x407839
mov rdx, qword [rsp + 0x68]
mov r8, qword [rsp + 0x78]
lea rcx, [rsp + 0x50]
call fcn.0040e586
mov rax, qword [rsp + 0x58]
add qword [rbx + 0x148], rax
sub qword [rbx + 0x150], rax
lea rsi, [rsp + 0x408]
jmp 0x40746e
movdqa xmm0, xmmword [rsp + 0x280]
movdqa xmm1, xmmword [rsp + 0x290]
movdqa xmmword [rsp + 0xc0], xmm1
movdqa xmmword [rsp + 0xb0], xmm0
lea rax, [rsp + 0xb0]
lea rsi, [rsp + 0x408]
lea rdi, [rsp + 0x1a8]
mov rcx, qword [rsp + 0x30]
mov rdx, qword [rsp + 0x40]
jmp 0x407484
lea rcx, [rsp + 0x50]
mov rdx, rdi
mov r8, rsi
call fcn.0040e586
lea rsi, [rsp + 0x408]
lea rdi, [rsp + 0x1a8]
mov rcx, qword [rsp + 0x30]
mov rdx, qword [rsp + 0x40]
mov r8d, dword [rsp + 0x3c]
lea rax, [r15 + 0x88]
movups xmm0, xmmword [rax]
movups xmm1, xmmword [rax + 0x10]
mov rax, qword [rsp + 0xa8]
movups xmmword [rax + 0x10], xmm1
movups xmmword [rax], xmm0
and word [rsp + 0x4c8], 0
mov qword [rsp + 0x3f8], rdx
mov qword [rsp + 0x400], rcx
movaps xmm0, xmmword [rsp + 0x2e0]
movaps xmm1, xmmword [rsp + 0x2f0]
movups xmmword [rsi + 0x10], xmm1
movups xmmword [rsi], xmm0
movaps xmm0, xmmword [rsp + 0x2c0]
movaps xmm1, xmmword [rsp + 0x2d0]
movups xmmword [rsi + 0x30], xmm1
movups xmmword [rsi + 0x20], xmm0
movaps xmm0, xmmword [rsp + 0x2a0]
movaps xmm1, xmmword [rsp + 0x2b0]
movups xmmword [rsi + 0x50], xmm1
movups xmmword [rsi + 0x40], xmm0
mov dword [rsp + 0x4c0], r8d
mov rax, qword [rsp + 0x60]
lea rcx, [rsp + 0x468]
mov qword [rcx + 0x10], rax
movups xmm0, xmmword [rsp + 0x50]
movups xmmword [rcx], xmm0
jmp 0x406e6d
mov edi, eax
jmp 0x407528
mov di, 0x20
mov eax, edi
movaps xmm6, xmmword [rsp + 0x158b0]
movaps xmm7, xmmword [rsp + 0x158c0]
movaps xmm8, xmmword [rsp + 0x158d0]
movaps xmm9, xmmword [rsp + 0x158e0]
movaps xmm10, xmmword [rsp + 0x158f0]
movaps xmm11, xmmword [rsp + 0x15900]
add rsp, 0x15918
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
mov di, 0x22
jmp 0x407528
mov di, 0x11
jmp 0x407528
mov byte [rbx + 0x12b96], 0
cmp byte [rbx + 0x165], 0
jne case.default.0x4075ae
mov di, 0x24
movzx eax, byte [rbx + 0x12b95]
and eax, 7
lea rcx, [0x0046d070]
movsxd rax, dword [rcx + rax*4]
add rax, rcx
jmp rax
mov di, 0x25
jmp 0x407528
mov di, 0x27
jmp 0x407528
mov di, 0x26
mov rax, qword [rsp + 0x1a8]
mov rcx, qword [rsp + 0x1b8]
mov rdx, qword [rsp + 0x1b0]
add rdx, rax
sub rcx, rax
mov qword [rbx + 0x148], rdx
mov qword [rbx + 0x150], rcx
jmp 0x407528
mov byte [rsi + 0x2a], 0
mov byte [rbx + 0x165], 1
xor edi, edi
jmp 0x407528
lea rdx, [0x004809a8]
mov r8d, 0x12a28
mov rcx, qword [rsp + 0xf8]
call fcn.0046bf16
jmp case.default.0x4075ae
mov ebp, eax
xor eax, eax
cmp bp, 4
setb al
lea edi, [rax + rax*8]
add edi, 0x1f
jmp 0x407528