Function at 0x140123580
Capabilities:
Encrypt data using rc4 ksa
Hash data using murmur3

Disassembly:
mov rax, rsp
mov qword [rax + 0x10], rbx
mov qword [rax + 0x18], rsi
mov qword [rax + 0x20], rdi
push rbp
push r12
push r13
push r14
push r15
lea rbp, [rax - 0x588]
sub rsp, 0x660
vmovaps xmmword [rax - 0x38], xmm6
vmovaps xmmword [rax - 0x48], xmm7
vmovaps xmmword [rax - 0x58], xmm8
vmovaps xmmword [rax - 0x68], xmm9
vmovaps xmmword [rax - 0x78], xmm10
vmovaps xmmword [rax - 0x88], xmm11
vmovaps xmmword [rax - 0x98], xmm12
vmovaps xmmword [rax - 0xa8], xmm13
vmovaps xmmword [rax - 0xb8], xmm14
mov rax, qword [0x14143b040]
xor rax, rsp
mov qword [rbp + 0x4c0], rax
mov rdi, rcx
mov qword [rsp + 0x48], rcx
xor r14d, r14d
mov dword [rsp + 0x40], r14d
mov rax, qword [0x141443c60]
vmovss xmm0, dword [rax + 0x3e80]
vdivss xmm1, xmm0, dword [0x14140ea74]
vmulss xmm2, xmm1, dword [0x14140eb60]
vmulss xmm0, xmm1, dword [0x14140eb34]
or dword [rax + 0x4b58], 2
vunpcklps xmm0, xmm2, xmm0
vmovsd qword [rax + 0x4b7c], xmm0
mov dword [rax + 0x4b60], 4
lea rdx, [rcx + 0x2faa]
mov r8d, 0x18
lea rcx, [0x1413cc2c0]
call fcn.1401ef0a0
mov rax, qword [0x141443c60]
mov rcx, qword [rax + 0x4150]
cmp byte [rcx + 0xf8], r14b
jne 0x1401236a0
cmp byte [rdi + 0xf98], r14b
jne 0x1401236aa
cmp byte [rdi + 0x13f1], r14b
je 0x14012368f
cmp qword [rdi + 0xd68], r14
jne 0x1401236aa
lea rcx, [0x1413c9090]
call fcn.1402167c0
call fcn.1400873d0
call fcn.1401f2010
jmp 0x140129d2a
cmp byte [rdi + 0x43e8], r14b
je 0x1401236cb
mov rcx, qword [rdi + 0x43e0]
test rcx, rcx
je 0x1401236cb
lea rdx, [0x1413a3f70]
call fcn.140025ba0
vmovss xmm0, dword [0x14140e940]
vmovss dword [rbp + 0x1d0], xmm0
vmovss dword [rbp + 0x1d4], xmm0
lea rdx, [rbp + 0x1d0]
mov ecx, 0xb
call fcn.1401e3960
cmp dword [rdi + 0x2fb8], r14d
sete dl
lea rcx, [0x1413cc230]
call fcn.1402193c0
test al, al
je 0x140123715
mov dword [rdi + 0x2fb8], r14d
mov esi, 1
vmovss xmm13, dword [0x14140ebbc]
vxorps xmm12, xmm12, xmm12
cmp byte [rdi + 0x13f1], r14b
je 0x140123824
vmovaps xmm1, xmm13
vxorps xmm0, xmm0, xmm0
call fcn.1401f6d00
cmp qword [rdi + 0xd68], r14
jbe 0x1401237a8
mov rcx, qword [0x141443c60]
mov rax, qword [rcx + 0x4150]
mov byte [rax + 0xf5], sil
mov rax, qword [rcx + 0x4150]
cmp byte [rax + 0xf8], r14b
jne 0x140123791
vmovss dword [rbp + 0x1d8], xmm12
vmovss dword [rbp + 0x1dc], xmm12
vmovaps xmm1, xmm13
lea rcx, [rbp + 0x1d8]
call fcn.1401f6b70
vmovaps xmm1, xmm13
vxorps xmm0, xmm0, xmm0
call fcn.1401f6d00
lea rcx, [0x1413cc248]
jmp 0x14012380c
cmp qword [rdi + 0x10d8], r14
jbe 0x140123824
mov rcx, qword [0x141443c60]
mov rax, qword [rcx + 0x4150]
mov byte [rax + 0xf5], sil
mov rax, qword [rcx + 0x4150]
cmp byte [rax + 0xf8], r14b
jne 0x1401237f7
vmovss dword [rbp + 0x1e0], xmm12
vmovss dword [rbp + 0x1e4], xmm12
vmovaps xmm1, xmm13
lea rcx, [rbp + 0x1e0]
call fcn.1401f6b70
vmovaps xmm1, xmm13
vxorps xmm0, xmm0, xmm0
call fcn.1401f6d00
lea rcx, [0x1413cc258]
cmp dword [rdi + 0x2fb8], esi
sete dl
call fcn.1402193c0
test al, al
je 0x140123824
mov dword [rdi + 0x2fb8], esi
cmp qword [rdi + 0xd60], r14
jbe 0x1401238b7
vmovaps xmm1, xmm13
vxorps xmm0, xmm0, xmm0
call fcn.1401f6d00
mov rdx, qword [0x141443c60]
mov rax, qword [rdx + 0x4150]
mov byte [rax + 0xf5], sil
mov rax, qword [rdx + 0x4150]
cmp byte [rax + 0xf8], r14b
jne 0x140123885
vmovss dword [rbp + 0x1e8], xmm12
vmovss dword [rbp + 0x1ec], xmm12
vmovaps xmm1, xmm13
lea rcx, [rbp + 0x1e8]
call fcn.1401f6b70
vmovaps xmm1, xmm13
vxorps xmm0, xmm0, xmm0
call fcn.1401f6d00
cmp dword [rdi + 0x2fb8], 2
sete dl
lea rcx, [0x1413cc268]
call fcn.1402193c0
test al, al
je 0x1401238b7
mov dword [rdi + 0x2fb8], 2
vmovaps xmm1, xmm13
vxorps xmm0, xmm0, xmm0
call fcn.1401f6d00
mov rdx, qword [0x141443c60]
mov rax, qword [rdx + 0x4150]
mov byte [rax + 0xf5], sil
mov rax, qword [rdx + 0x4150]
cmp byte [rax + 0xf8], r14b
jne 0x14012390b
vmovss dword [rbp + 0x1f0], xmm12
vmovss dword [rbp + 0x1f4], xmm12
vmovaps xmm1, xmm13
lea rcx, [rbp + 0x1f0]
call fcn.1401f6b70
vmovaps xmm1, xmm13
vxorps xmm0, xmm0, xmm0
call fcn.1401f6d00
vmovss xmm14, dword [0x14140e870]
vmovaps xmm1, xmm14
mov ecx, 2
call fcn.14021a1b0
vmovaps xmm1, xmm13
vxorps xmm0, xmm0, xmm0
call fcn.1401f6d00
mov rdx, qword [0x141443c60]
mov rax, qword [rdx + 0x4150]
mov byte [rax + 0xf5], sil
mov rax, qword [rdx + 0x4150]
cmp byte [rax + 0xf8], r14b
jne 0x140123984
vmovss dword [rbp + 0x200], xmm12
vmovss dword [rbp + 0x204], xmm12
vmovaps xmm1, xmm13
lea rcx, [rbp + 0x200]
call fcn.1401f6b70
vmovaps xmm1, xmm13
vxorps xmm0, xmm0, xmm0
call fcn.1401f6d00
xor edx, edx
mov qword [rbp + 0x440], rdx
mov word [rbp + 0x448], dx
mov byte [rbp + 0x44a], dl
xor r15b, r15b
mov byte [rsp + 0x58], r15b
mov eax, dword [rdi + 0x2fb8]
movabs r12, 0xc4ceb9fe1a85ec53
mov r13, 0xffffffffffffffff
test eax, eax
jne 0x140124dd3
cmp byte [rdi + 0xf98], r15b
jne 0x140123a1d
mov rcx, qword [0x141443c60]
mov rax, qword [rcx + 0x4150]
mov byte [rax + 0xf5], 1
mov rax, qword [rcx + 0x4150]
cmp byte [rax + 0xf8], r15b
jne 0x140125241
vmovss dword [rbp + 0x208], xmm12
vmovss dword [rbp + 0x20c], xmm12
lea rcx, [rbp + 0x208]
jmp 0x140125237
mov r10d, dword [rdi + 0x2cc8]
mov dword [rsp + 0x40], r10d
mov rdx, qword [rdi + 0xf78]
test rdx, rdx
je 0x140123a46
lea rcx, [rbp + 0x440]
call fcn.14012a030
mov r10d, dword [rsp + 0x40]
mov r15d, r14d
mov dword [rsp + 0x50], r14d
cmp byte [rdi + 0x18], r14b
je 0x1401249b6
mov rcx, qword [rdi + 8]
mov qword [rsp + 0x68], rcx
mov rax, qword [rdi + 0x10]
mov qword [rbp + 0x50], rax
mov r9, rax
sub r9, rcx
mov qword [rsp + 0x78], r9
mov rbx, qword [rdi + 0xf70]
cmp qword [rdi + 0xf78], r15
je 0x140124c4f
mov rsi, qword [rdi + 0xf68]
mov rax, qword [rbx]
mov r8, rbx
test rax, rax
jne 0x140123aba
nop word [rax + rax]
add rbx, 8
add rsi, 0x580
mov rax, qword [rbx]
test rax, rax
je 0x140123aa0
mov r8, qword [rdi + 0xf70]
bsf rcx, rax
mov dword [rsp + 0x70], ecx
mov eax, 0x40
cmovne eax, ecx
cdq
and edx, 7
add eax, edx
sar eax, 3
movsxd rcx, eax
add rbx, rcx
mov qword [rsp + 0x70], rbx
imul rax, rcx, 0xb0
add rsi, rax
mov qword [rsp + 0x60], rsi
cmp rsi, r8
je 0x140124c4a
nop word [rax + rax]
cmp qword [rsi + 0x28], 0
je 0x1401242a2
cmp qword [rsi + 0x18], r9
jg 0x1401242a2
test r10d, r10d
jne 0x1401241b5
lea rcx, [rdi + 0x3270]
mov r8, rsi
lea rdx, [rbp - 0x40]
vzeroupper
call fcn.140129f00
mov rcx, qword [rbp - 0x40]
cmp rcx, qword [rdi + 0x3288]
je 0x140123bff
movzx eax, byte [rcx + 0x18]
cmp byte [rdi + 0x18], al
jne 0x140123bff
mov rax, qword [rcx + 8]
cmp qword [rdi + 8], rax
jne 0x140123bff
mov rax, qword [rcx + 0x10]
cmp qword [rdi + 0x10], rax
jne 0x140123bff
mov eax, dword [rdi + 0x2fb0]
cmp dword [rcx + 0x20], eax
jne 0x140123bff
mov eax, dword [rsi + 0xe]
cmp qword [rcx + 0x28], rax
jne 0x140123bff
mov rdx, qword [rcx + 0x30]
mov r9, qword [rsp + 0x78]
test rdx, rdx
je 0x1401242a2
inc r15d
mov dword [rsp + 0x50], r15d
movzx eax, word [rsi]
mov word [rbp + 0x70], ax
movzx eax, word [rcx + 0x40]
mov word [rbp + 0x72], ax
mov qword [rbp + 0x78], rdx
mov rax, qword [rcx + 0x38]
mov qword [rbp + 0x80], rax
movzx edx, word [rbp + 0x444]
shl rdx, 0x20
mov eax, dword [rbp + 0x440]
or rdx, rax
mov eax, dword [rbp + 0x446]
lea rcx, [rax + rax*2]
vmovups xmm0, xmmword [rbp + 0x70]
vmovups xmmword [rdx + rcx*8], xmm0
vmovsd xmm1, qword [rbp + 0x80]
vmovsd qword [rdx + rcx*8 + 0x10], xmm1
inc dword [rbp + 0x446]
jmp 0x1401242a2
mov qword [rbp - 0x28], r12
lea rax, [rbp - 8]
mov qword [rbp - 0x20], rax
lea r11, [rbp - 8]
mov qword [rbp - 0x18], r11
mov qword [rbp - 0x10], r14
mov qword [rbp - 8], r14
mov qword [rbp], r14
mov edi, 0x20
mov qword [rbp + 8], rdi
mov r12, r14
mov r13, r14
movzx r15d, word [rsi + 0xc]
shl r15, 0x20
mov eax, dword [rsi + 8]
or r15, rax
mov eax, dword [rsi + 0xe]
lea rax, [r15 + rax*8]
mov qword [rbp - 0x78], rax
cmp r15, rax
je 0x140124095
mov rcx, qword [rsp + 0x68]
nop word [rax + rax]
mov rsi, qword [r15]
mov rdx, rsi
shr rdx, 0x10
mov rax, qword [rdx]
sar rax, 0x10
mov rbx, qword [rdx + 0xa]
sar rbx, 0x10
cmp rax, rcx
jl 0x14012407d
cmp rbx, qword [rbp + 0x50]
jg 0x14012407d
sub rbx, rax
mov rcx, qword [rsp + 0x48]
mov eax, dword [rcx + 0x2fb0]
test eax, eax
jne 0x140123e80
call fcn.14014c5f0
sub rbx, rax
add r13, rbx
inc r12
mov ebx, r14d
movzx eax, si
mov ecx, eax
shr rcx, 0x21
xor rcx, rax
movabs rax, 0xff51afd7ed558ccd
imul rcx, rax
mov r14, rcx
shr r14, 0x21
xor r14, rcx
nop word [rax + rax]
mov rdx, r14
imul rdx, qword [rbp - 0x28]
mov rax, rdx
shr rax, 0x21
xor rdx, rax
mov rcx, rdx
and ecx, 0x1f
mov eax, dword [rbp + 0xc]
shrx r8, rcx, rax
add r8d, edi
shr rdx, 5
and rdx, qword [rbp - 8]
movzx eax, byte [rdx + r11]
cmp r8d, eax
jae 0x140123d30
nop word [rax + rax]
inc rdx
add r8d, edi
movzx eax, byte [rdx + r11]
cmp r8d, eax
jb 0x140123d20
movzx eax, byte [rdx + r11]
cmp r8d, eax
jne 0x140123d5e
nop word [rax + rax]
mov rax, qword [rbp - 0x20]
cmp si, word [rax + rdx*2]
je 0x140124075
inc rdx
add r8d, edi
movzx eax, byte [rdx + r11]
cmp r8d, eax
je 0x140123d40
mov rax, qword [rbp]
cmp qword [rbp - 0x10], rax
jb 0x140123d93
lea rcx, [rbp - 0x30]
call fcn.14013ba30
test al, al
je 0x140129d99
inc ebx
cmp ebx, 0x100
jge 0x140129d99
mov edi, dword [rbp + 8]
mov r11, qword [rbp - 0x18]
jmp 0x140123ce0
mov r10, rdx
lea eax, [r8 + rdi]
mov rcx, qword [rbp]
cmp eax, 0xff
mov r14d, 0
cmova rcx, r14
mov qword [rbp], rcx
cmp byte [rdx + r11], r14b
je 0x140123e42
nop dword [rax + rax]
mov r9, rdx
inc rdx
cmp byte [rdx + r11], r14b
jne 0x140123dc0
cmp rdx, r10
je 0x140123e42
mov rcx, qword [rbp - 0x20]
movzx eax, word [rcx + rdx*2 - 2]
mov word [rcx + rdx*2], ax
cmp r9, r10
je 0x140123e07
nop dword [rax]
nop word [rax + rax]
mov rcx, qword [rbp - 0x20]
movzx eax, word [rcx + r9*2 - 2]
mov word [rcx + r9*2], ax
dec r9
cmp r9, r10
jne 0x140123df0
mov r9, rdx
mov r11, qword [rbp - 0x18]
nop
movzx eax, byte [rbp + 8]
add al, byte [r9 + r11 - 1]
mov byte [r9 + r11], al
mov r11, qword [rbp - 0x18]
movzx eax, byte [r9 + r11]
add eax, dword [rbp + 8]
mov rcx, qword [rbp]
cmp eax, 0xff
cmova rcx, r14
mov qword [rbp], rcx
dec r9
cmp r9, r10
jne 0x140123e10
mov byte [r10 + r11], r8b
inc qword [rbp - 0x10]
mov ecx, r14d
cmp rdx, r10
setne cl
add ecx, 2
je 0x140129d99
sub ecx, 1
je 0x140123e74
sub ecx, 1
je 0x140123e6b
cmp ecx, 1
jne 0x140123e74
mov rax, qword [rbp - 0x20]
mov word [rax + r10*2], si
mov edi, dword [rbp + 8]
mov r11, qword [rbp - 0x18]
jmp 0x140124078
cmp eax, 1
je 0x140123e99
call fcn.14014b370
mov edi, dword [rbp + 8]
mov r11, qword [rbp - 0x18]
test al, al
jne 0x140124078
add r13, rbx
inc r12
movzx ebx, word [r15]
mov esi, r14d
mov ecx, ebx
shr rcx, 0x21
xor rcx, rbx
movabs rax, 0xff51afd7ed558ccd
imul rcx, rax
mov r14, rcx
shr r14, 0x21
xor r14, rcx
nop word [rax + rax]
mov rdx, r14
imul rdx, qword [rbp - 0x28]
mov rax, rdx
shr rax, 0x21
xor rdx, rax
mov rcx, rdx
and ecx, 0x1f
mov eax, dword [rbp + 0xc]
shrx r8, rcx, rax
add r8d, edi
shr rdx, 5
and rdx, qword [rbp - 8]
movzx eax, byte [rdx + r11]
cmp r8d, eax
jae 0x140123f20
nop word [rax + rax]
inc rdx
add r8d, edi
movzx eax, byte [rdx + r11]
cmp r8d, eax
jb 0x140123f10
movzx eax, byte [rdx + r11]
cmp r8d, eax
jne 0x140123f4e
nop word [rax + rax]
mov rax, qword [rbp - 0x20]
cmp bx, word [rax + rdx*2]
je 0x140124075
inc rdx
add r8d, edi
movzx eax, byte [rdx + r11]
cmp r8d, eax
je 0x140123f30
mov rax, qword [rbp]
cmp qword [rbp - 0x10], rax
jb 0x140123f83
lea rcx, [rbp - 0x30]
call fcn.14013ba30
test al, al
je 0x140129d9f
inc esi
cmp esi, 0x100
jge 0x140129d9f
mov edi, dword [rbp + 8]
mov r11, qword [rbp - 0x18]
jmp 0x140123ed0
mov r10, rdx
lea eax, [r8 + rdi]
mov rcx, qword [rbp]
cmp eax, 0xff
mov r14d, 0
cmova rcx, r14
mov qword [rbp], rcx
cmp byte [rdx + r11], r14b
je 0x140124032
nop dword [rax + rax]
mov r9, rdx
inc rdx
cmp byte [rdx + r11], r14b
jne 0x140123fb0
cmp rdx, r10
je 0x140124032
mov rcx, qword [rbp - 0x20]
movzx eax, word [rcx + rdx*2 - 2]
mov word [rcx + rdx*2], ax
cmp r9, r10
je 0x140123ff7
nop dword [rax]
nop word [rax + rax]
mov rcx, qword [rbp - 0x20]
movzx eax, word [rcx + r9*2 - 2]
mov word [rcx + r9*2], ax
dec r9
cmp r9, r10
jne 0x140123fe0
mov r9, rdx
mov r11, qword [rbp - 0x18]
nop
movzx eax, byte [rbp + 8]
add al, byte [r9 + r11 - 1]
mov byte [r9 + r11], al
mov r11, qword [rbp - 0x18]
movzx eax, byte [r9 + r11]
add eax, dword [rbp + 8]
mov rcx, qword [rbp]
cmp eax, 0xff
cmova rcx, r14
mov qword [rbp], rcx
dec r9
cmp r9, r10
jne 0x140124000
mov byte [r10 + r11], r8b
inc qword [rbp - 0x10]
mov ecx, r14d
cmp rdx, r10
setne cl
add ecx, 2
je 0x140129d9f
sub ecx, 1
je 0x140123e74
sub ecx, 1
je 0x140124063
cmp ecx, 1
jne 0x140123e74
mov rax, qword [rbp - 0x20]
mov word [rax + r10*2], bx
mov edi, dword [rbp + 8]
mov r11, qword [rbp - 0x18]
jmp 0x140124078
xor r14d, r14d
mov rcx, qword [rsp + 0x68]
add r15, 8
cmp r15, qword [rbp - 0x78]
jne 0x140123c60
mov rsi, qword [rsp + 0x60]
mov rbx, qword [rsp + 0x70]
movzx r8d, word [rbp - 0x10]
mov r15d, dword [rsp + 0x50]
test r12, r12
je 0x14012410b
inc r15d
mov dword [rsp + 0x50], r15d
movzx eax, word [rsi]
mov word [rbp + 0x88], ax
mov word [rbp + 0x8a], r8w
mov qword [rbp + 0x90], r12
mov qword [rbp + 0x98], r13
movzx edx, word [rbp + 0x444]
shl rdx, 0x20
mov eax, dword [rbp + 0x440]
or rdx, rax
mov eax, dword [rbp + 0x446]
lea rcx, [rax + rax*2]
vmovups xmm0, xmmword [rbp + 0x88]
vmovups xmmword [rdx + rcx*8], xmm0
vmovsd xmm1, qword [rbp + 0x98]
vmovsd qword [rdx + rcx*8 + 0x10], xmm1
inc dword [rbp + 0x446]
mov rdi, qword [rsp + 0x48]
mov rax, qword [rdi + 8]
mov qword [rbp + 0x230], rax
mov rax, qword [rdi + 0x10]
mov qword [rbp + 0x238], rax
movzx eax, byte [rdi + 0x18]
mov byte [rbp + 0x240], al
mov eax, dword [rdi + 0x2fb0]
mov dword [rbp + 0x248], eax
mov eax, dword [rsi + 0xe]
mov qword [rbp + 0x250], rax
mov qword [rbp + 0x258], r12
mov qword [rbp + 0x260], r13
mov word [rbp + 0x268], r8w
lea rcx, [rdi + 0x3270]
mov rdx, rsi
call fcn.14012a130
vmovups ymm0, ymmword [rbp + 0x230]
vmovups ymmword [rax], ymm0
vmovups ymm1, ymmword [rbp + 0x250]
vmovups ymmword [rax + 0x20], ymm1
cmp qword [rbp - 8], 0
je 0x1401241a6
mov qword [rbp - 0x10], r14
lea rax, [rbp - 8]
mov rcx, qword [rbp - 0x20]
cmp rcx, rax
je 0x1401241a6
vzeroupper
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
nop
movabs r12, 0xc4ceb9fe1a85ec53
jmp 0x14012429d
inc r15d
mov dword [rsp + 0x50], r15d
movzx edx, word [rsi]
lea rcx, [rdi + 0x150]
vzeroupper
call fcn.140184c20
mov rdx, rax
test byte [rax + 8], 2
jne 0x1401241dc
add rdx, 9
movzx eax, byte [rdx + 8]
test al, 1
je 0x140124201
movzx ecx, word [rdi + 0xdec]
shl rcx, 0x20
mov eax, dword [rdi + 0xde8]
or rcx, rax
mov rax, qword [rdx]
mov rax, qword [rcx + rax*8]
jmp 0x14012421d
test al, 2
je 0x140124216
mov rdx, qword [rdx]
lea rcx, [rdi + 0x150]
call fcn.140184990
jmp 0x14012421d
lea rax, [0x1413ca658]
movsxd rcx, dword [rdi + 0x2cc8]
test ecx, ecx
je 0x140124352
lea rdi, [0x1413a1907]
test rax, rax
cmovne rdi, rax
mov rdx, qword [rsp + 0x48]
mov rbx, qword [rdx + 0x2cd0]
mov rsi, rcx
shl rsi, 4
add rsi, rbx
cmp rbx, rsi
je 0x140124334
nop dword [rax]
mov r9, qword [rbx + 8]
mov r8, qword [rbx]
cmp r8, r9
je 0x140124327
mov rcx, rdi
cmp byte [r8], 0x2d
jne 0x14012431d
inc r8
call fcn.1401e1510
test rax, rax
je 0x140124327
mov rdi, qword [rsp + 0x48]
mov rsi, qword [rsp + 0x60]
mov rbx, qword [rsp + 0x70]
mov r9, qword [rsp + 0x78]
inc rbx
add rsi, 0xb0
mov rax, qword [rbx]
test rax, rax
jne 0x1401242d3
nop dword [rax]
nop dword [rax + rax]
add rbx, 8
add rsi, 0x580
mov rax, qword [rbx]
test rax, rax
je 0x1401242c0
bsf rcx, rax
mov dword [rsp + 0x70], ecx
mov eax, 0x40
cmovne eax, ecx
cdq
and edx, 7
add eax, edx
sar eax, 3
movsxd rcx, eax
add rbx, rcx
mov qword [rsp + 0x70], rbx
imul rax, rcx, 0xb0
add rsi, rax
mov qword [rsp + 0x60], rsi
cmp rsi, qword [rdi + 0xf70]
je 0x140124c43
mov r10d, dword [rsp + 0x40]
jmp 0x140123b00
call fcn.1401e1510
test rax, rax
jne 0x140124348
add rbx, 0x10
cmp rbx, rsi
jne 0x140124260
mov rdi, qword [rsp + 0x48]
cmp dword [rdi + 0x2cd8], 0
jne 0x140124293
jmp 0x14012434d
mov rdi, qword [rsp + 0x48]
mov rsi, qword [rsp + 0x60]
lea rcx, [rdi + 0x3270]
mov r8, rsi
lea rdx, [rbp + 0x58]
call fcn.140129f00
mov rcx, qword [rbp + 0x58]
cmp rcx, qword [rdi + 0x3288]
je 0x140124423
movzx eax, byte [rcx + 0x18]
cmp byte [rdi + 0x18], al
jne 0x140124423
mov rax, qword [rcx + 8]
cmp qword [rdi + 8], rax
jne 0x140124423
mov rax, qword [rcx + 0x10]
cmp qword [rdi + 0x10], rax
jne 0x140124423
mov eax, dword [rdi + 0x2fb0]
cmp dword [rcx + 0x20], eax
jne 0x140124423
mov eax, dword [rsi + 0xe]
cmp qword [rcx + 0x28], rax
jne 0x140124423
mov rdx, qword [rcx + 0x30]
mov rbx, qword [rsp + 0x70]
mov r9, qword [rsp + 0x78]
test rdx, rdx
je 0x1401242a2
movzx eax, word [rsi]
mov word [rbp - 0x58], ax
movzx eax, word [rcx + 0x40]
mov word [rbp - 0x56], ax
mov qword [rbp - 0x50], rdx
mov rax, qword [rcx + 0x38]
mov qword [rbp - 0x48], rax
movzx edx, word [rbp + 0x444]
shl rdx, 0x20
mov eax, dword [rbp + 0x440]
or rdx, rax
mov eax, dword [rbp + 0x446]
lea rcx, [rax + rax*2]
vmovups xmm0, xmmword [rbp - 0x58]
vmovups xmmword [rdx + rcx*8], xmm0
vmovsd xmm1, qword [rbp - 0x48]
vmovsd qword [rdx + rcx*8 + 0x10], xmm1
inc dword [rbp + 0x446]
jmp 0x1401242a2
mov qword [rbp + 0x18], r12
lea rax, [rbp + 0x38]
mov qword [rbp + 0x20], rax
lea r11, [rbp + 0x38]
mov qword [rbp + 0x28], r11
mov qword [rbp + 0x30], r14
mov qword [rbp + 0x38], r14
mov qword [rbp + 0x40], r14
mov edi, 0x20
mov qword [rbp + 0x48], rdi
mov r12, r14
mov r13, r14
movzx r15d, word [rsi + 0xc]
shl r15, 0x20
mov eax, dword [rsi + 8]
or r15, rax
mov eax, dword [rsi + 0xe]
lea rax, [r15 + rax*8]
mov qword [rbp - 0x78], rax
cmp r15, rax
je 0x1401248b0
mov rcx, qword [rsp + 0x68]
nop word [rax + rax]
mov rsi, qword [r15]
mov rdx, rsi
shr rdx, 0x10
mov rax, qword [rdx]
sar rax, 0x10
mov rbx, qword [rdx + 0xa]
sar rbx, 0x10
cmp rax, rcx
jl 0x14012489d
cmp rbx, qword [rbp + 0x50]
jg 0x14012489d
sub rbx, rax
mov rcx, qword [rsp + 0x48]
mov eax, dword [rcx + 0x2fb0]
test eax, eax
jne 0x1401246a0
call fcn.14014c5f0
sub rbx, rax
add r13, rbx
inc r12
mov ebx, r14d
movzx eax, si
mov ecx, eax
shr rcx, 0x21
xor rcx, rax
movabs rax, 0xff51afd7ed558ccd
imul rcx, rax
mov r14, rcx
shr r14, 0x21
xor r14, rcx
nop word [rax + rax]
mov rdx, r14
imul rdx, qword [rbp + 0x18]
mov rax, rdx
shr rax, 0x21
xor rdx, rax
mov rcx, rdx
and ecx, 0x1f
mov eax, dword [rbp + 0x4c]
shrx r8, rcx, rax
add r8d, edi
shr rdx, 5
and rdx, qword [rbp + 0x38]
movzx eax, byte [rdx + r11]
cmp r8d, eax
jae 0x140124550
nop word [rax + rax]
inc rdx
add r8d, edi
movzx eax, byte [rdx + r11]
cmp r8d, eax
jb 0x140124540
movzx eax, byte [rdx + r11]
cmp r8d, eax
jne 0x14012457e
nop word [rax + rax]
mov rax, qword [rbp + 0x20]
cmp si, word [rax + rdx*2]
je 0x140124895
inc rdx
add r8d, edi
movzx eax, byte [rdx + r11]
cmp r8d, eax
je 0x140124560
mov rax, qword [rbp + 0x40]
cmp qword [rbp + 0x30], rax
jb 0x1401245b3
lea rcx, [rbp + 0x10]
call fcn.14013ba30
test al, al
je 0x140129da5
inc ebx
cmp ebx, 0x100
jge 0x140129da5
mov edi, dword [rbp + 0x48]
mov r11, qword [rbp + 0x28]
jmp 0x140124500
mov r10, rdx
lea eax, [r8 + rdi]
mov rcx, qword [rbp + 0x40]
cmp eax, 0xff
mov r14d, 0
cmova rcx, r14
mov qword [rbp + 0x40], rcx
cmp byte [rdx + r11], r14b
je 0x140124662
nop dword [rax + rax]
mov r9, rdx
inc rdx
cmp byte [rdx + r11], r14b
jne 0x1401245e0
cmp rdx, r10
je 0x140124662
mov rcx, qword [rbp + 0x20]
movzx eax, word [rcx + rdx*2 - 2]
mov word [rcx + rdx*2], ax
cmp r9, r10
je 0x140124627
nop dword [rax]
nop word [rax + rax]
mov rcx, qword [rbp + 0x20]
movzx eax, word [rcx + r9*2 - 2]
mov word [rcx + r9*2], ax
dec r9
cmp r9, r10
jne 0x140124610
mov r9, rdx
mov r11, qword [rbp + 0x28]
nop
movzx eax, byte [rbp + 0x48]
add al, byte [r9 + r11 - 1]
mov byte [r9 + r11], al
mov r11, qword [rbp + 0x28]
movzx eax, byte [r9 + r11]
add eax, dword [rbp + 0x48]
mov rcx, qword [rbp + 0x40]
cmp eax, 0xff
cmova rcx, r14
mov qword [rbp + 0x40], rcx
dec r9
cmp r9, r10
jne 0x140124630
mov byte [r10 + r11], r8b
inc qword [rbp + 0x30]
mov ecx, r14d
cmp rdx, r10
setne cl
add ecx, 2
je 0x140129da5
sub ecx, 1
je 0x140124694
sub ecx, 1
je 0x14012468b
cmp ecx, 1
jne 0x140124694
mov rax, qword [rbp + 0x20]
mov word [rax + r10*2], si
mov edi, dword [rbp + 0x48]
mov r11, qword [rbp + 0x28]
jmp 0x140124898
cmp eax, 1
je 0x1401246b9
call fcn.14014b370
mov edi, dword [rbp + 0x48]
mov r11, qword [rbp + 0x28]
test al, al
jne 0x140124898
add r13, rbx
inc r12
movzx ebx, word [r15]
mov esi, r14d
mov ecx, ebx
shr rcx, 0x21
xor rcx, rbx
movabs rax, 0xff51afd7ed558ccd
imul rcx, rax
mov r14, rcx
shr r14, 0x21
xor r14, rcx
nop word [rax + rax]
mov rdx, r14
imul rdx, qword [rbp + 0x18]
mov rax, rdx
shr rax, 0x21
xor rdx, rax
mov rcx, rdx
and ecx, 0x1f
mov eax, dword [rbp + 0x4c]
shrx r8, rcx, rax
add r8d, edi
shr rdx, 5
and rdx, qword [rbp + 0x38]
movzx eax, byte [rdx + r11]
cmp r8d, eax
jae 0x140124740
nop word [rax + rax]
inc rdx
add r8d, edi
movzx eax, byte [rdx + r11]
cmp r8d, eax
jb 0x140124730
movzx eax, byte [rdx + r11]
cmp r8d, eax
jne 0x14012476e
nop word [rax + rax]
mov rax, qword [rbp + 0x20]
cmp bx, word [rax + rdx*2]
je 0x140124895
inc rdx
add r8d, edi
movzx eax, byte [rdx + r11]
cmp r8d, eax
je 0x140124750
mov rax, qword [rbp + 0x40]
cmp qword [rbp + 0x30], rax
jb 0x1401247a3
lea rcx, [rbp + 0x10]
call fcn.14013ba30
test al, al
je 0x140129dab
inc esi
cmp esi, 0x100
jge 0x140129dab
mov edi, dword [rbp + 0x48]
mov r11, qword [rbp + 0x28]
jmp 0x1401246f0
mov r10, rdx
lea eax, [r8 + rdi]
mov rcx, qword [rbp + 0x40]
cmp eax, 0xff
mov r14d, 0
cmova rcx, r14
mov qword [rbp + 0x40], rcx
cmp byte [rdx + r11], r14b
je 0x140124852
nop dword [rax + rax]
mov r9, rdx
inc rdx
cmp byte [rdx + r11], r14b
jne 0x1401247d0
cmp rdx, r10
je 0x140124852
mov rcx, qword [rbp + 0x20]
movzx eax, word [rcx + rdx*2 - 2]
mov word [rcx + rdx*2], ax
cmp r9, r10
je 0x140124817
nop dword [rax]
nop word [rax + rax]
mov rcx, qword [rbp + 0x20]
movzx eax, word [rcx + r9*2 - 2]
mov word [rcx + r9*2], ax
dec r9
cmp r9, r10
jne 0x140124800
mov r9, rdx
mov r11, qword [rbp + 0x28]
nop
movzx eax, byte [rbp + 0x48]
add al, byte [r9 + r11 - 1]
mov byte [r9 + r11], al
mov r11, qword [rbp + 0x28]
movzx eax, byte [r9 + r11]
add eax, dword [rbp + 0x48]
mov rcx, qword [rbp + 0x40]
cmp eax, 0xff
cmova rcx, r14
mov qword [rbp + 0x40], rcx
dec r9
cmp r9, r10
jne 0x140124820
mov byte [r10 + r11], r8b
inc qword [rbp + 0x30]
mov ecx, r14d
cmp rdx, r10
setne cl
add ecx, 2
je 0x140129dab
sub ecx, 1
je 0x140124694
sub ecx, 1
je 0x140124883
cmp ecx, 1
jne 0x140124694
mov rax, qword [rbp + 0x20]
mov word [rax + r10*2], bx
mov edi, dword [rbp + 0x48]
mov r11, qword [rbp + 0x28]
jmp 0x140124898
xor r14d, r14d
mov rcx, qword [rsp + 0x68]
add r15, 8
cmp r15, qword [rbp - 0x78]
jne 0x140124480
mov rsi, qword [rsp + 0x60]
movzx r8d, word [rbp + 0x30]
test r12, r12
je 0x140124907
movzx eax, word [rsi]
mov word [rbp - 0x70], ax
mov word [rbp - 0x6e], r8w
mov qword [rbp - 0x68], r12
mov qword [rbp - 0x60], r13
movzx edx, word [rbp + 0x444]
shl rdx, 0x20
mov eax, dword [rbp + 0x440]
or rdx, rax
mov eax, dword [rbp + 0x446]
lea rcx, [rax + rax*2]
vmovups xmm0, xmmword [rbp - 0x70]
vmovups xmmword [rdx + rcx*8], xmm0
vmovsd xmm1, qword [rbp - 0x60]
vmovsd qword [rdx + rcx*8 + 0x10], xmm1
inc dword [rbp + 0x446]
mov rdi, qword [rsp + 0x48]
mov rax, qword [rdi + 8]
mov qword [rbp + 0x270], rax
mov rax, qword [rdi + 0x10]
mov qword [rbp + 0x278], rax
movzx eax, byte [rdi + 0x18]
mov byte [rbp + 0x280], al
mov eax, dword [rdi + 0x2fb0]
mov dword [rbp + 0x288], eax
mov eax, dword [rsi + 0xe]
mov qword [rbp + 0x290], rax
mov qword [rbp + 0x298], r12
mov qword [rbp + 0x2a0], r13
mov word [rbp + 0x2a8], r8w
lea rcx, [rdi + 0x3270]
mov rdx, rsi
call fcn.14012a130
vmovups ymm0, ymmword [rbp + 0x270]
vmovups ymmword [rax], ymm0
vmovups ymm1, ymmword [rbp + 0x290]
vmovups ymmword [rax + 0x20], ymm1
cmp qword [rbp + 0x38], 0
je 0x1401249a2
mov qword [rbp + 0x30], r14
lea rax, [rbp + 0x38]
mov rcx, qword [rbp + 0x20]
cmp rcx, rax
je 0x1401249a2
vzeroupper
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
nop
mov r15d, dword [rsp + 0x50]
movabs r12, 0xc4ceb9fe1a85ec53
jmp 0x140124298
mov rsi, qword [rdi + 0xf70]
cmp qword [rdi + 0xf78], r15
je 0x140124c4a
mov rbx, qword [rdi + 0xf68]
mov rax, qword [rsi]
mov r8, rsi
test rax, rax
jne 0x1401249fa
nop dword [rax]
add rsi, 8
add rbx, 0x580
mov rax, qword [rsi]
test rax, rax
je 0x1401249e0
mov r8, qword [rdi + 0xf70]
bsf rcx, rax
mov dword [rsp + 0x70], ecx
mov eax, 0x40
cmovne eax, ecx
cdq
and edx, 7
add eax, edx
sar eax, 3
movsxd rcx, eax
add rsi, rcx
imul rax, rcx, 0xb0
add rbx, rax
cmp rbx, r8
je 0x140124c4a
mov r12d, dword [rbp + 0x446]
mov r13, qword [rbp - 0x40]
nop word [rax + rax]
mov rdx, qword [rbx + 0x28]
test rdx, rdx
je 0x140124bd3
inc r15d
mov dword [rsp + 0x50], r15d
mov ecx, dword [rdi + 0x2fb0]
test ecx, ecx
je 0x140124a86
sub ecx, 1
je 0x140124a78
cmp ecx, 1
jne 0x140124a95
mov r13, qword [rbx + 0x50]
mov rcx, qword [rbx + 0x68]
mov qword [rsp + 0x60], rcx
jmp 0x140124a9a
mov r13d, dword [rbx + 0xe]
mov rcx, rdx
mov qword [rsp + 0x60], rdx
jmp 0x140124a9a
mov r13d, dword [rbx + 0xe]
mov rcx, qword [rbx + 0x48]
mov qword [rsp + 0x60], rcx
jmp 0x140124a9a
mov rcx, qword [rsp + 0x60]
movzx edx, word [rbx]
test r10d, r10d
jne 0x140124aff
mov word [rbp - 0x70], dx
movzx eax, word [rbx + 0x90]
mov word [rbp - 0x6e], ax
mov qword [rbp - 0x68], r13
mov qword [rbp - 0x60], rcx
vmovups xmm0, xmmword [rbp - 0x70]
vmovsd xmm1, qword [rbp - 0x60]
movzx edx, word [rbp + 0x444]
mov eax, dword [rbp + 0x440]
shl rdx, 0x20
or rdx, rax
mov eax, r12d
lea rcx, [rax + rax*2]
vmovups xmmword [rdx + rcx*8], xmm0
vmovsd qword [rdx + rcx*8 + 0x10], xmm1
mov r12d, dword [rbp + 0x446]
inc r12d
mov dword [rbp + 0x446], r12d
jmp 0x140124bd3
lea rcx, [rdi + 0x150]
call fcn.140184c20
mov rdx, rax
test byte [rax + 8], 2
jne 0x140124b18
add rdx, 9
movzx eax, byte [rdx + 8]
test al, 1
je 0x140124b3d
movzx ecx, word [rdi + 0xdec]
shl rcx, 0x20
mov eax, dword [rdi + 0xde8]
or rcx, rax
mov rax, qword [rdx]
mov rax, qword [rcx + rax*8]
jmp 0x140124b59
test al, 2
je 0x140124b52
mov rdx, qword [rdx]
lea rcx, [rdi + 0x150]
call fcn.140184990
jmp 0x140124b59
lea rax, [0x1413ca658]
mov rdi, qword [rsp + 0x48]
movsxd rcx, dword [rdi + 0x2cc8]
test ecx, ecx
je 0x140124da5
lea r14, [0x1413a1907]
test rax, rax
cmovne r14, rax
mov rdi, qword [rdi + 0x2cd0]
mov r15, rcx
shl r15, 4
add r15, rdi
cmp rdi, r15
je 0x140124d8c
nop word [rax + rax]
mov r9, qword [rdi + 8]
mov r8, qword [rdi]
cmp r8, r9
je 0x140124d7f
mov rcx, r14
cmp byte [r8], 0x2d
jne 0x140124d75
inc r8
call fcn.1401e1510
test rax, rax
je 0x140124d7f
mov rdi, qword [rsp + 0x48]
inc rsi
add rbx, 0xb0
mov rax, qword [rsi]
test rax, rax
jne 0x140124c03
nop word [rax + rax]
add rsi, 8
add rbx, 0x580
mov rax, qword [rsi]
test rax, rax
je 0x140124bf0
bsf rcx, rax
mov dword [rsp + 0x70], ecx
mov eax, 0x40
cmovne eax, ecx
cdq
and edx, 7
add eax, edx
sar eax, 3
movsxd rcx, eax
add rsi, rcx
imul rax, rcx, 0xb0
add rbx, rax
cmp rbx, qword [rdi + 0xf70]
mov r15d, dword [rsp + 0x50]
mov r10d, dword [rsp + 0x40]
jne 0x140124a40
mov r13, 0xffffffffffffffff
mov esi, 1
mov ecx, dword [rsp + 0x50]
vzeroupper
call fcn.14004a890
mov rdx, rax
lea rcx, [0x1413cc310]
call fcn.140077b10
vmovaps xmm1, xmm13
vmovaps xmm0, xmm12
call fcn.1401f6d00
mov rdx, qword [0x141443c60]
mov rax, qword [rdx + 0x4150]
mov byte [rax + 0xf5], 1
mov rax, qword [rdx + 0x4150]
cmp byte [rax + 0xf8], 0
jne 0x140124cbf
vmovss dword [rbp + 0x210], xmm12
vmovss dword [rbp + 0x214], xmm12
vmovaps xmm1, xmm13
lea rcx, [rbp + 0x210]
call fcn.1401f6b70
vmovaps xmm1, xmm13
vmovaps xmm0, xmm12
call fcn.1401f6d00
mov ecx, dword [rbp + 0x446]
call fcn.14004a750
mov rdx, rax
lea rcx, [0x1413cc328]
call fcn.140077b10
vmovaps xmm1, xmm13
vmovaps xmm0, xmm12
call fcn.1401f6d00
call fcn.14002d660
movzx r15d, al
mov byte [rsp + 0x58], al
vmovaps xmm1, xmm13
vmovaps xmm0, xmm12
call fcn.1401f6d00
mov rdx, qword [0x141443c60]
mov rcx, qword [rdx + 0x4150]
mov byte [rcx + 0xf5], 1
mov rcx, qword [rdx + 0x4150]
cmp byte [rcx + 0xf8], 0
jne 0x140124d59
vmovss dword [rbp + 0x218], xmm12
vmovss dword [rbp + 0x21c], xmm12
vmovaps xmm1, xmm13
lea rcx, [rbp + 0x218]
call fcn.1401f6b70
vmovaps xmm1, xmm13
vmovaps xmm0, xmm12
call fcn.1401f6d00
mov rcx, rdi
call fcn.140123410
jmp 0x140125775
call fcn.1401e1510
test rax, rax
jne 0x140124da0
add rdi, 0x10
cmp rdi, r15
jne 0x140124ba0
mov rdi, qword [rsp + 0x48]
cmp dword [rdi + 0x2cd8], 0
jne 0x140124bd3
jmp 0x140124da5
mov rdi, qword [rsp + 0x48]
movzx eax, word [rbx]
mov word [rbp - 0x58], ax
movzx eax, word [rbx + 0x90]
mov word [rbp - 0x56], ax
mov qword [rbp - 0x50], r13
mov rax, qword [rsp + 0x60]
mov qword [rbp - 0x48], rax
vmovups xmm0, xmmword [rbp - 0x58]
vmovsd xmm1, qword [rbp - 0x48]
jmp 0x140124ac3
cmp eax, 1
jne 0x1401251ee
lea rdx, [rdi + 0x2fb4]
lea rcx, [0x1413caa20]
call fcn.140218f00
vmovaps xmm1, xmm13
vxorps xmm0, xmm0, xmm0
call fcn.1401f6d00
mov rdx, qword [0x141443c60]
mov rax, qword [rdx + 0x4150]
mov byte [rax + 0xf5], 1
mov rax, qword [rdx + 0x4150]
cmp byte [rax + 0xf8], r15b
jne 0x140124e43
vmovss dword [rbp + 0x100], xmm12
vmovss dword [rbp + 0x104], xmm12
vmovaps xmm1, xmm13
lea rcx, [rbp + 0x100]
call fcn.1401f6b70
vmovaps xmm1, xmm13
vxorps xmm0, xmm0, xmm0
call fcn.1401f6d00
cmp byte [rdi + 0x18], r15b
je 0x140124ebd
call fcn.1401f2a10
mov dword [rdi + 0x2fb0], r14d
mov rcx, rdi
call fcn.140123410
mov rdx, qword [0x141443c60]
dec word [rdx + 0x6084]
mov eax, dword [rdx + 0x4ad4]
shr eax, 2
test al, 1
movsxd rcx, dword [rdx + 0x4c40]
lea eax, [rcx - 1]
mov dword [rdx + 0x4c40], eax
mov rax, qword [rdx + 0x4c48]
mov r8d, dword [rax + rcx*4 - 8]
mov dword [rdx + 0x4ad4], r8d
je 0x140124ec5
test r8b, 4
jne 0x140124ec5
mov eax, dword [rdx + 0x6080]
mov dword [rdx + 0x39f8], eax
jmp 0x140124ec5
mov rcx, rdi
call fcn.140123410
vmovaps xmm1, xmm13
vxorps xmm0, xmm0, xmm0
call fcn.1401f6d00
mov rdx, qword [0x141443c60]
mov rax, qword [rdx + 0x4150]
mov byte [rax + 0xf5], 1
mov rax, qword [rdx + 0x4150]
cmp byte [rax + 0xf8], r15b
jne 0x140124f19
vmovss dword [rbp + 0x108], xmm12
vmovss dword [rbp + 0x10c], xmm12
vmovaps xmm1, xmm13
lea rcx, [rbp + 0x108]
call fcn.1401f6b70
vmovaps xmm1, xmm13
vxorps xmm0, xmm0, xmm0
call fcn.1401f6d00
lea rdx, [rdi + 0x2fc0]
lea rcx, [0x1413caa08]
call fcn.140218f00
vmovaps xmm1, xmm13
vxorps xmm0, xmm0, xmm0
call fcn.1401f6d00
mov rdx, qword [0x141443c60]
mov rax, qword [rdx + 0x4150]
mov byte [rax + 0xf5], 1
mov rax, qword [rdx + 0x4150]
cmp byte [rax + 0xf8], r15b
jne 0x140124f8e
vmovss dword [rbp + 0x110], xmm12
vmovss dword [rbp + 0x114], xmm12
vmovaps xmm1, xmm13
lea rcx, [rbp + 0x110]
call fcn.1401f6b70
vmovaps xmm1, xmm13
vxorps xmm0, xmm0, xmm0
call fcn.1401f6d00
lea rdx, [rdi + 0x2fc1]
lea rcx, [0x1413cc338]
call fcn.140218f00
vmovaps xmm1, xmm13
vxorps xmm0, xmm0, xmm0
call fcn.1401f6d00
mov rdx, qword [0x141443c60]
mov rax, qword [rdx + 0x4150]
mov byte [rax + 0xf5], 1
mov rax, qword [rdx + 0x4150]
cmp byte [rax + 0xf8], r15b
jne 0x140125003
vmovss dword [rbp + 0x118], xmm12
vmovss dword [rbp + 0x11c], xmm12
vmovaps xmm1, xmm13
lea rcx, [rbp + 0x118]
call fcn.1401f6b70
vmovaps xmm1, xmm13
vxorps xmm0, xmm0, xmm0
call fcn.1401f6d00
lea rdx, [rdi + 0x2fca]
lea rcx, [0x1413caa78]
call fcn.140218f00
vmovaps xmm1, xmm13
vxorps xmm0, xmm0, xmm0
call fcn.1401f6d00
mov rdx, qword [0x141443c60]
mov rax, qword [rdx + 0x4150]
mov byte [rax + 0xf5], 1
mov rax, qword [rdx + 0x4150]
cmp byte [rax + 0xf8], r15b
jne 0x140125078
vmovss dword [rbp + 0x120], xmm12
vmovss dword [rbp + 0x124], xmm12
vmovaps xmm1, xmm13
lea rcx, [rbp + 0x120]
call fcn.1401f6b70
vmovaps xmm1, xmm13
vxorps xmm0, xmm0, xmm0
call fcn.1401f6d00
lea rdx, [rdi + 0x2fcd]
lea rcx, [0x1413caa68]
call fcn.140218f00
vmovaps xmm1, xmm13
vxorps xmm0, xmm0, xmm0
call fcn.1401f6d00
mov rdx, qword [0x141443c60]
mov rax, qword [rdx + 0x4150]
mov byte [rax + 0xf5], 1
mov rax, qword [rdx + 0x4150]
cmp byte [rax + 0xf8], r15b
jne 0x1401250ed
vmovss dword [rbp + 0x128], xmm12
vmovss dword [rbp + 0x12c], xmm12
vmovaps xmm1, xmm13
lea rcx, [rbp + 0x128]
call fcn.1401f6b70
vmovaps xmm1, xmm13
vxorps xmm0, xmm0, xmm0
call fcn.1401f6d00
mov r8d, esi
xor edx, edx
lea rcx, [0x1413c8550]
call fcn.140215e20
vmovaps xmm1, xmm13
vxorps xmm0, xmm0, xmm0
call fcn.1401f6d00
mov rdx, qword [0x141443c60]
mov rcx, qword [rdx + 0x3e78]
mov qword [rsp + 0x38], r14
mov qword [rsp + 0x30], r14
lea rax, [0x1413cc2cc]
mov qword [rsp + 0x28], rax
vmovss dword [rsp + 0x20], xmm13
vmovss xmm3, dword [0x14140eb90]
vmovss xmm2, dword [rdx + 0x3e80]
lea rdx, [rbp - 0x78]
call fcn.1401dc100
vmovss xmm0, dword [rbp - 0x78]
vaddss xmm1, xmm0, dword [0x14140e864]
vcvttss2si eax, xmm1
vxorps xmm2, xmm2, xmm2
vcvtsi2ss xmm2, xmm2, eax
mov rax, qword [0x141443c60]
vmovss xmm0, dword [rax + 0x3e80]
vaddss xmm1, xmm0, xmm0
vaddss xmm3, xmm1, xmm2
or dword [rax + 0x4ae0], 1
vmovss dword [rax + 0x4af0], xmm3
mov r8d, r14d
lea rcx, [0x1413cc348]
nop word [rax + rax]
mov rax, r13
inc rax
cmp byte [rcx + rax], r15b
jne 0x1401251b3
inc rcx
add rcx, rax
inc r8d
cmp byte [rcx], r15b
jne 0x1401251b0
lea rdx, [rdi + 0x2fbc]
mov dword [rsp + 0x20], r8d
lea r9, [0x1413cc348]
lea rcx, [0x1413cc2d8]
call fcn.14021ba80
jmp 0x140125778
cmp byte [rdi + 0xfe0], r15b
jne 0x1401252a2
mov rcx, qword [0x141443c60]
mov rax, qword [rcx + 0x4150]
mov byte [rax + 0xf5], 1
mov rax, qword [rcx + 0x4150]
cmp byte [rax + 0xf8], r15b
jne 0x140125241
vmovss dword [rbp + 0x130], xmm12
vmovss dword [rbp + 0x134], xmm12
lea rcx, [rbp + 0x130]
vmovaps xmm1, xmm13
call fcn.1401f6b70
mov rax, qword [0x141443c60]
mov rdx, qword [rax + 0x4150]
cmp byte [rdx + 0xf8], r15b
jne 0x140125285
mov r8d, dword [rdx + 0x1f4]
mov eax, r8d
neg eax
sbb ecx, ecx
add ecx, 2
cmp qword [rdx + 0x1e8], 0
je 0x14012527b
neg r8d
sbb ecx, ecx
add ecx, 6
vmovaps xmm1, xmm14
call fcn.14021a1b0
mov ecx, esi
call fcn.1401e39f0
lea rcx, [0x1413c9090]
call fcn.1402167c0
call fcn.1400873d0
jmp 0x140129ccd
mov r10d, dword [rdi + 0x2cc8]
mov dword [rsp + 0x40], r10d
mov rdx, qword [rdi + 0xfc0]
test rdx, rdx
je 0x1401252cb
lea rcx, [rbp + 0x440]
call fcn.14012a030
mov r10d, dword [rsp + 0x40]
mov r15d, r14d
mov dword [rsp + 0x50], r14d
cmp byte [rdi + 0x18], r14b
je 0x140125f3d
mov r14, qword [rdi + 8]
mov qword [rsp + 0x60], r14
mov r13, qword [rdi + 0x10]
mov r9, r13
sub r9, r14
mov qword [rsp + 0x78], r9
mov rsi, qword [rdi + 0xfb8]
cmp qword [rdi + 0xfc0], r15
je 0x1401256b5
mov rbx, qword [rdi + 0xfb0]
mov rax, qword [rsi]
mov r8, rsi
test rax, rax
jne 0x14012533a
nop dword [rax + rax]
add rsi, 8
add rbx, 0x1c0
mov rax, qword [rsi]
test rax, rax
je 0x140125320
mov r8, qword [rdi + 0xfb8]
bsf rcx, rax
mov dword [rsp + 0x70], ecx
mov eax, 0x40
cmovne eax, ecx
cdq
and edx, 7
add eax, edx
sar eax, 3
movsxd rcx, eax
add rsi, rcx
imul rax, rcx, 0x38
add rbx, rax
cmp rbx, r8
je 0x1401256b5
mov r12d, dword [rbp + 0x446]
cmp qword [rbx + 0x28], 0
je 0x140125648
cmp qword [rbx + 0x18], r9
jg 0x140125648
test r10d, r10d
jne 0x14012555f
lea rcx, [rdi + 0x32b0]
mov r8, rbx
lea rdx, [rbp + 0x58]
vzeroupper
call fcn.140129f00
mov rcx, qword [rbp + 0x58]
cmp rcx, qword [rdi + 0x32c8]
je 0x140125424
movzx eax, byte [rcx + 0x18]
cmp byte [rdi + 0x18], al
jne 0x140125424
mov rax, qword [rcx + 8]
cmp qword [rdi + 8], rax
jne 0x140125424
mov rax, qword [rcx + 0x10]
cmp qword [rdi + 0x10], rax
jne 0x140125424
mov eax, dword [rdi + 0x2fb0]
cmp dword [rcx + 0x20], eax
jne 0x140125424
mov eax, dword [rbx + 0xe]
cmp qword [rcx + 0x28], rax
jne 0x140125424
mov rdx, qword [rcx + 0x30]
mov r9, qword [rsp + 0x78]
test rdx, rdx
je 0x140125648
inc r15d
mov dword [rsp + 0x50], r15d
movzx eax, word [rbx]
mov word [rbp - 0x70], ax
xor eax, eax
mov word [rbp - 0x6e], ax
mov qword [rbp - 0x68], rdx
mov rax, qword [rcx + 0x38]
mov qword [rbp - 0x60], rax
vmovups xmm0, xmmword [rbp - 0x70]
vmovsd xmm1, qword [rbp - 0x60]
jmp 0x140125dc8
xor edi, edi
mov r9d, edi
mov r10d, edi
movzx edx, word [rbx + 0xc]
shl rdx, 0x20
mov eax, dword [rbx + 8]
or rdx, rax
mov eax, dword [rbx + 0xe]
lea r11, [rdx + rax*8]
cmp rdx, r11
je 0x1401254d9
nop word [rax + rax]
mov rax, qword [rdx]
shr rax, 0x10
mov r8, qword [rax + 0x10]
sar r8, 0x10
mov rcx, qword [rax + 0x18]
sar rcx, 0x10
cmp r8, r14
jl 0x14012547a
cmp rcx, r13
jg 0x14012547a
sub rcx, r8
add r10, rcx
inc r9
add rdx, 8
cmp rdx, r11
jne 0x140125450
test r9, r9
je 0x1401254d9
inc r15d
mov dword [rsp + 0x50], r15d
movzx eax, word [rbx]
mov word [rbp - 0x58], ax
mov word [rbp - 0x56], di
mov qword [rbp - 0x50], r9
mov qword [rbp - 0x48], r10
movzx edx, word [rbp + 0x444]
shl rdx, 0x20
mov eax, dword [rbp + 0x440]
or rdx, rax
mov eax, r12d
lea rcx, [rax + rax*2]
vmovups xmm0, xmmword [rbp - 0x58]
vmovups xmmword [rdx + rcx*8], xmm0
vmovsd xmm1, qword [rbp - 0x48]
vmovsd qword [rdx + rcx*8 + 0x10], xmm1
inc dword [rbp + 0x446]
mov rdi, qword [rsp + 0x48]
mov rax, qword [rdi + 8]
mov qword [rbp + 0x270], rax
mov rax, qword [rdi + 0x10]
mov qword [rbp + 0x278], rax
movzx eax, byte [rdi + 0x18]
mov byte [rbp + 0x280], al
mov eax, dword [rdi + 0x2fb0]
mov dword [rbp + 0x288], eax
mov eax, dword [rbx + 0xe]
mov qword [rbp + 0x290], rax
mov qword [rbp + 0x298], r9
mov qword [rbp + 0x2a0], r10
xor eax, eax
mov qword [rbp + 0x2a8], rax
lea rcx, [rdi + 0x32b0]
mov rdx, rbx
call fcn.14012a130
vmovups ymm0, ymmword [rbp + 0x270]
vmovups ymmword [rax], ymm0
vmovups ymm1, ymmword [rbp + 0x290]
vmovups ymmword [rax + 0x20], ymm1
mov r12d, dword [rbp + 0x446]
jmp 0x140125643
inc r15d
mov dword [rsp + 0x50], r15d
movzx edx, word [rbx]
lea rcx, [rdi + 0x150]
vzeroupper
call fcn.140184c20
mov rdx, rax
test byte [rax + 8], 2
jne 0x140125586
add rdx, 9
movzx eax, byte [rdx + 8]
test al, 1
je 0x1401255ab
movzx ecx, word [rdi + 0xdec]
shl rcx, 0x20
mov eax, dword [rdi + 0xde8]
or rcx, rax
mov rax, qword [rdx]
mov rax, qword [rcx + rax*8]
jmp 0x1401255c7
test al, 2
je 0x1401255c0
mov rdx, qword [rdx]
lea rcx, [rdi + 0x150]
call fcn.140184990
jmp 0x1401255c7
lea rax, [0x1413ca658]
mov rdi, qword [rsp + 0x48]
movsxd rcx, dword [rdi + 0x2cc8]
test ecx, ecx
je 0x140125d18
lea r14, [0x1413a1907]
test rax, rax
cmovne r14, rax
mov rdi, qword [rdi + 0x2cd0]
mov r15, rcx
shl r15, 4
add r15, rdi
cmp rdi, r15
je 0x140125cfa
nop dword [rax]
nop word [rax + rax]
mov r9, qword [rdi + 8]
mov r8, qword [rdi]
cmp r8, r9
je 0x140125ced
mov rcx, r14
cmp byte [r8], 0x2d
jne 0x140125ce3
inc r8
call fcn.1401e1510
test rax, rax
je 0x140125ced
mov rdi, qword [rsp + 0x48]
mov r9, qword [rsp + 0x78]
inc rsi
add rbx, 0x38
mov rax, qword [rsi]
test rax, rax
jne 0x140125673
nop word [rax + rax]
add rsi, 8
add rbx, 0x1c0
mov rax, qword [rsi]
test rax, rax
je 0x140125660
bsf rcx, rax
mov dword [rsp + 0x70], ecx
mov eax, 0x40
cmovne eax, ecx
cdq
and edx, 7
add eax, edx
sar eax, 3
movsxd rcx, eax
add rsi, rcx
imul rax, rcx, 0x38
add rbx, rax
cmp rbx, qword [rdi + 0xfb8]
mov r14, qword [rsp + 0x60]
mov r15d, dword [rsp + 0x50]
mov r10d, dword [rsp + 0x40]
jne 0x140125370
mov r13, 0xffffffffffffffff
mov esi, 1
mov ecx, r15d
vzeroupper
call fcn.14004a890
mov rdx, rax
lea rcx, [0x1413cc310]
call fcn.140077b10
vmovaps xmm1, xmm13
vmovaps xmm0, xmm12
call fcn.1401f6d00
mov rdx, qword [0x141443c60]
mov rax, qword [rdx + 0x4150]
mov byte [rax + 0xf5], 1
mov rax, qword [rdx + 0x4150]
cmp byte [rax + 0xf8], 0
jne 0x140125730
vmovss dword [rbp + 0x138], xmm12
vmovss dword [rbp + 0x13c], xmm12
vmovaps xmm1, xmm13
lea rcx, [rbp + 0x138]
call fcn.1401f6b70
vmovaps xmm1, xmm13
vmovaps xmm0, xmm12
call fcn.1401f6d00
mov ecx, dword [rbp + 0x446]
call fcn.14004a750
mov rdx, rax
lea rcx, [0x1413cc328]
call fcn.140077b10
vmovaps xmm1, xmm13
vmovaps xmm0, xmm12
call fcn.1401f6d00
call fcn.14002d660
movzx r15d, al
mov byte [rsp + 0x58], al
xor r14d, r14d
mov rdx, qword [0x141443c60]
mov r8, qword [rdx + 0x4150]
cmp byte [r8 + 0xf8], 0
jne 0x1401257c2
mov edx, dword [r8 + 0x1f4]
mov eax, edx
neg eax
sbb ecx, ecx
add ecx, 2
cmp qword [r8 + 0x1e8], 0
je 0x1401257b1
neg edx
sbb ecx, ecx
add ecx, 6
vmovaps xmm1, xmm14
call fcn.14021a1b0
mov rdx, qword [0x141443c60]
mov rax, qword [rdx + 0x4150]
mov byte [rax + 0xf5], 1
mov rax, qword [rdx + 0x4150]
cmp byte [rax + 0xf8], 0
jne 0x140125820
vmovss xmm0, dword [rdx + 0x3a38]
vaddss xmm1, xmm0, xmm0
vaddss xmm2, xmm1, dword [rdx + 0x3e80]
vmovss xmm0, dword [rax + 0x16c]
vmaxss xmm1, xmm0, xmm2
vmovss dword [rax + 0x16c], xmm1
vmovss xmm0, dword [rax + 0x178]
vmaxss xmm1, xmm0, dword [rdx + 0x3a38]
vmovss dword [rax + 0x178], xmm1
add rdx, 0x3af8
xor ecx, ecx
call fcn.1401e3800
mov r8d, esi
xor edx, edx
lea rcx, [0x1413c98bc]
call fcn.140215e20
mov r8, qword [0x141443c60]
movsxd rax, dword [r8 + 0x4c00]
cmp eax, 1
jl 0x14012587c
lea rdx, [rax + rax*4]
mov rcx, qword [r8 + 0x4c08]
movsxd rax, dword [rcx + rdx*4 - 0x14]
add rax, rax
vmovups xmm0, xmmword [rcx + rdx*4 - 0x10]
vmovups xmmword [r8 + rax*8 + 0x3ae8], xmm0
dec dword [r8 + 0x4c00]
vmovaps xmm1, xmm13
vmovaps xmm0, xmm12
call fcn.1401f6d00
mov rax, qword [0x141443c60]
or dword [rax + 0x4ae0], 1
mov dword [rax + 0x4af0], 0x43480000
vmovss dword [rbp + 0x1f8], xmm12
vmovss dword [rbp + 0x1fc], xmm12
mov qword [rsp + 0x38], r14
mov qword [rsp + 0x30], r14
mov dword [rsp + 0x28], r14d
lea rax, [rbp + 0x1f8]
mov qword [rsp + 0x20], rax
mov r9d, 0x100
lea r8, [rdi + 0x2bc8]
xor edx, edx
lea rcx, [0x1413ca848]
call fcn.140220450
test al, al
je 0x1401258f9
lea rcx, [rdi + 0x2bc8]
call fcn.1401e25a0
vmovaps xmm1, xmm13
vmovaps xmm0, xmm12
call fcn.1401f6d00
vmovss dword [rbp + 0x140], xmm12
vmovss dword [rbp + 0x144], xmm12
xor r8d, r8d
lea rdx, [rbp + 0x140]
lea rcx, [0x1413a2d38]
call fcn.140217480
test al, al
je 0x140125945
mov byte [rdi + 0x2bc8], 0
lea rcx, [rdi + 0x2bc8]
call fcn.1401e25a0
vmovaps xmm1, xmm13
vmovaps xmm0, xmm12
call fcn.1401f6d00
mov rdx, qword [0x141443c60]
mov rax, qword [rdx + 0x4150]
mov byte [rax + 0xf5], 1
mov rax, qword [rdx + 0x4150]
cmp byte [rax + 0xf8], 0
jne 0x14012599a
vmovss dword [rbp + 0x148], xmm12
vmovss dword [rbp + 0x14c], xmm12
vmovaps xmm1, xmm13
lea rcx, [rbp + 0x148]
call fcn.1401f6b70
vmovaps xmm1, xmm13
vmovaps xmm0, xmm12
call fcn.1401f6d00
cmp dword [rdi + 0x2fb8], 1
jne 0x140126970
mov rdx, qword [0x141443c60]
add rdx, 0x3af8
xor ecx, ecx
call fcn.1401e3800
mov r8d, esi
xor edx, edx
lea rcx, [0x1413c8634]
call fcn.140215e20
mov r8, qword [0x141443c60]
movsxd rax, dword [r8 + 0x4c00]
cmp eax, 1
jl 0x140125a19
lea rdx, [rax + rax*4]
mov rcx, qword [r8 + 0x4c08]
movsxd rax, dword [rcx + rdx*4 - 0x14]
add rax, rax
vmovups xmm0, xmmword [rcx + rdx*4 - 0x10]
vmovups xmmword [r8 + rax*8 + 0x3ae8], xmm0
dec dword [r8 + 0x4c00]
vmovaps xmm1, xmm13
vmovaps xmm0, xmm12
call fcn.1401f6d00
mov rax, qword [0x141443c60]
or dword [rax + 0x4ae0], 1
mov dword [rax + 0x4af0], 0x43480000
vmovss dword [rbp + 0x150], xmm12
vmovss dword [rbp + 0x154], xmm12
mov qword [rsp + 0x38], r14
mov qword [rsp + 0x30], r14
mov dword [rsp + 0x28], r14d
lea rax, [rbp + 0x150]
mov qword [rsp + 0x20], rax
mov r9d, 0x100
lea r8, [rdi + 0x2ce0]
xor edx, edx
lea rcx, [0x1413cc2e8]
call fcn.140220450
test al, al
je 0x140125a96
lea rcx, [rdi + 0x2ce0]
call fcn.1401e25a0
vmovaps xmm1, xmm13
vmovaps xmm0, xmm12
call fcn.1401f6d00
xor edx, edx
mov r8d, 0x48
lea rcx, [0x1413cc300]
call fcn.14021af00
test al, al
je 0x14012646d
movabs rax, 0xc4ceb9fe1a85ec53
mov qword [rbp + 0xc8], rax
lea rax, [rbp + 0xe8]
mov qword [rbp + 0xd0], rax
lea rax, [rbp + 0xe8]
mov qword [rbp + 0xd8], rax
mov r8, r14
mov qword [rbp + 0xe0], r14
mov qword [rbp + 0xe8], r14
mov qword [rbp + 0xf0], r14
mov qword [rbp + 0xf8], 0x20
vpxor xmm0, xmm0, xmm0
vmovdqu xmmword [rbp + 0xa0], xmm0
mov qword [rbp + 0xb0], r14
mov rbx, qword [rdi + 0x10d0]
cmp qword [rdi + 0x10d8], 0
je 0x140125c7c
mov rdi, qword [rdi + 0x10c8]
mov rax, qword [rbx]
mov r14, rbx
test rax, rax
jne 0x140125b6f
nop dword [rax + rax]
add rbx, 8
add rdi, 0x100
mov rax, qword [rbx]
test rax, rax
je 0x140125b50
mov rdx, qword [rsp + 0x48]
mov r14, qword [rdx + 0x10d0]
bsf rcx, rax
mov dword [rsp + 0x70], ecx
mov eax, 0x40
cmovne eax, ecx
cdq
and edx, 7
add eax, edx
sar eax, 3
movsxd rcx, eax
add rbx, rcx
shl rcx, 5
add rdi, rcx
cmp rdi, r14
je 0x140125c79
nop
lea r8, [rdi + 0x12]
lea rdx, [rbp + 0x58]
lea rcx, [rbp + 0xc0]
call fcn.140129dd0
mov rax, qword [rbp + 0xd8]
cmp qword [rbp + 0x58], rax
jne 0x140125c1d
movzx eax, word [rdi + 0x12]
mov word [rbp - 0x80], ax
movzx eax, byte [rdi + 0x14]
mov byte [rbp - 0x7e], al
lea r8, [rbp - 0x80]
lea rdx, [rbp - 0x40]
lea rcx, [rbp + 0xc0]
call fcn.14012a660
mov ecx, dword [rbp - 0x38]
test ecx, ecx
je 0x140129d93
sub ecx, 1
je 0x140125c1d
sub ecx, 1
je 0x140125bfe
cmp ecx, 1
jne 0x140125c1d
mov rdx, qword [rbp - 0x40]
mov rax, qword [rbp + 0xd0]
lea rcx, [rax + rdx*2]
movzx eax, word [rbp - 0x80]
mov word [rdx + rcx], ax
movzx eax, byte [rbp - 0x7e]
mov byte [rdx + rcx + 2], al
inc rbx
add rdi, 0x20
mov rax, qword [rbx]
test rax, rax
jne 0x140125c43
nop dword [rax]
add rbx, 8
add rdi, 0x100
mov rax, qword [rbx]
test rax, rax
je 0x140125c30
bsf rcx, rax
mov dword [rsp + 0x70], ecx
mov eax, 0x40
cmovne eax, ecx
cdq
and edx, 7
add eax, edx
sar eax, 3
movsxd rcx, eax
add rbx, rcx
shl rcx, 5
add rdi, rcx
cmp rdi, r14
jne 0x140125ba0
mov r8, qword [rbp + 0xe0]
xor r14d, r14d
mov qword [rbp - 0x78], r8
mov rax, qword [rbp + 0xb0]
mov r11, qword [rbp + 0xa0]
sub rax, r11
sar rax, 3
cmp r8, rax
jbe 0x140125ccb
movabs rax, 0x1fffffffffffffff
cmp r8, rax
ja 0x140129db1
lea rdx, [rbp - 0x78]
lea rcx, [rbp + 0xa0]
call fcn.140003e60
mov r8, qword [rbp + 0xe0]
mov r11, qword [rbp + 0xa0]
test r8, r8
jne 0x1401261d7
mov rdi, qword [rbp + 0xd8]
mov rbx, r14
jmp 0x140126227
call fcn.1401e1510
test rax, rax
jne 0x140125d0e
add rdi, 0x10
cmp rdi, r15
jne 0x140125610
mov rdi, qword [rsp + 0x48]
cmp dword [rdi + 0x2cd8], 0
jne 0x140125643
jmp 0x140125d13
mov rdi, qword [rsp + 0x48]
mov r14, qword [rsp + 0x60]
lea rcx, [rdi + 0x32b0]
mov r8, rbx
lea rdx, [rbp - 0x40]
call fcn.140129f00
mov rcx, qword [rbp - 0x40]
cmp rcx, qword [rdi + 0x32c8]
je 0x140125e04
movzx eax, byte [rcx + 0x18]
cmp byte [rdi + 0x18], al
jne 0x140125e04
mov rax, qword [rcx + 8]
cmp qword [rdi + 8], rax
jne 0x140125e04
mov rax, qword [rcx + 0x10]
cmp qword [rdi + 0x10], rax
jne 0x140125e04
mov eax, dword [rdi + 0x2fb0]
cmp dword [rcx + 0x20], eax
jne 0x140125e04
mov eax, dword [rbx + 0xe]
cmp qword [rcx + 0x28], rax
jne 0x140125e04
mov rdx, qword [rcx + 0x30]
mov r9, qword [rsp + 0x78]
test rdx, rdx
je 0x140125648
movzx eax, word [rbx]
mov word [rbp + 0x88], ax
xor eax, eax
mov word [rbp + 0x8a], ax
mov qword [rbp + 0x90], rdx
mov rax, qword [rcx + 0x38]
mov qword [rbp + 0x98], rax
vmovups xmm0, xmmword [rbp + 0x88]
vmovsd xmm1, qword [rbp + 0x98]
movzx edx, word [rbp + 0x444]
mov eax, dword [rbp + 0x440]
shl rdx, 0x20
or rdx, rax
mov eax, r12d
lea rcx, [rax + rax*2]
vmovups xmmword [rdx + rcx*8], xmm0
vmovsd qword [rdx + rcx*8 + 0x10], xmm1
mov r12d, dword [rbp + 0x446]
inc r12d
mov dword [rbp + 0x446], r12d
jmp 0x140125648
xor edi, edi
mov r9d, edi
mov r10d, edi
movzx edx, word [rbx + 0xc]
shl rdx, 0x20
mov eax, dword [rbx + 8]
or rdx, rax
mov eax, dword [rbx + 0xe]
lea r11, [rdx + rax*8]
cmp rdx, r11
je 0x140125eb7
nop word [rax + rax]
mov rax, qword [rdx]
shr rax, 0x10
mov r8, qword [rax + 0x10]
sar r8, 0x10
mov rcx, qword [rax + 0x18]
sar rcx, 0x10
cmp r8, r14
jl 0x140125e5a
cmp rcx, r13
jg 0x140125e5a
sub rcx, r8
add r10, rcx
inc r9
add rdx, 8
cmp rdx, r11
jne 0x140125e30
test r9, r9
je 0x140125eb7
movzx eax, word [rbx]
mov word [rbp + 0x70], ax
mov word [rbp + 0x72], di
mov qword [rbp + 0x78], r9
mov qword [rbp + 0x80], r10
movzx edx, word [rbp + 0x444]
shl rdx, 0x20
mov eax, dword [rbp + 0x440]
or rdx, rax
mov eax, r12d
lea rcx, [rax + rax*2]
vmovups xmm0, xmmword [rbp + 0x70]
vmovups xmmword [rdx + rcx*8], xmm0
vmovsd xmm1, qword [rbp + 0x80]
vmovsd qword [rdx + rcx*8 + 0x10], xmm1
inc dword [rbp + 0x446]
mov rdi, qword [rsp + 0x48]
mov rax, qword [rdi + 8]
mov qword [rbp + 0x230], rax
mov rax, qword [rdi + 0x10]
mov qword [rbp + 0x238], rax
movzx eax, byte [rdi + 0x18]
mov byte [rbp + 0x240], al
mov eax, dword [rdi + 0x2fb0]
mov dword [rbp + 0x248], eax
mov eax, dword [rbx + 0xe]
mov qword [rbp + 0x250], rax
mov qword [rbp + 0x258], r9
mov qword [rbp + 0x260], r10
xor eax, eax
mov qword [rbp + 0x268], rax
lea rcx, [rdi + 0x32b0]
mov rdx, rbx
call fcn.14012a130
vmovups ymm0, ymmword [rbp + 0x230]
vmovups ymmword [rax], ymm0
vmovups ymm1, ymmword [rbp + 0x250]
vmovups ymmword [rax + 0x20], ymm1
mov r12d, dword [rbp + 0x446]
jmp 0x140125643
mov rdi, qword [rdi + 0xfb8]
mov r9, qword [rsp + 0x48]
cmp qword [r9 + 0xfc0], r15
je 0x1401261c7
mov rsi, qword [r9 + 0xfb0]
mov rax, qword [rdi]
mov r8, rdi
test rax, rax
jne 0x140125f8a
nop dword [rax + rax]
add rdi, 8
add rsi, 0x1c0
mov rax, qword [rdi]
test rax, rax
je 0x140125f70
mov r8, qword [r9 + 0xfb8]
bsf rcx, rax
mov dword [rsp + 0x70], ecx
mov eax, 0x40
cmovne eax, ecx
cdq
and edx, 7
add eax, edx
sar eax, 3
movsxd rcx, eax
add rdi, rcx
imul rax, rcx, 0x38
add rsi, rax
cmp rsi, r8
je 0x1401261cf
mov r12d, dword [rbp + 0x446]
mov r13, qword [rsi + 0x28]
test r13, r13
je 0x140126102
inc r15d
mov dword [rsp + 0x50], r15d
mov eax, dword [rsi + 0xe]
movzx edx, word [rsi]
test r10d, r10d
jne 0x140126037
mov word [rbp - 0x70], dx
mov word [rbp - 0x6e], r14w
mov qword [rbp - 0x68], rax
mov qword [rbp - 0x60], r13
vmovups xmm0, xmmword [rbp - 0x70]
vmovsd xmm1, qword [rbp - 0x60]
movzx edx, word [rbp + 0x444]
mov eax, dword [rbp + 0x440]
shl rdx, 0x20
or rdx, rax
mov eax, r12d
lea rcx, [rax + rax*2]
vmovups xmmword [rdx + rcx*8], xmm0
vmovsd qword [rdx + rcx*8 + 0x10], xmm1
mov r12d, dword [rbp + 0x446]
inc r12d
mov dword [rbp + 0x446], r12d
jmp 0x140126102
lea rbx, [r9 + 0x150]
mov rcx, rbx
call fcn.140184c20
mov rdx, rax
test byte [rax + 8], 2
jne 0x140126053
add rdx, 9
movzx eax, byte [rdx + 8]
test al, 1
je 0x140126078
movzx ecx, word [rbx + 0xc9c]
shl rcx, 0x20
mov eax, dword [rbx + 0xc98]
or rcx, rax
mov rax, qword [rdx]
mov rax, qword [rcx + rax*8]
jmp 0x140126090
test al, 2
je 0x140126089
mov rdx, qword [rdx]
mov rcx, rbx
call fcn.140184990
jmp 0x140126090
lea rax, [0x1413ca658]
mov r9, qword [rsp + 0x48]
movsxd rcx, dword [r9 + 0x2cc8]
test ecx, ecx
je 0x1401261a1
lea r14, [0x1413a1907]
test rax, rax
cmovne r14, rax
mov rbx, qword [r9 + 0x2cd0]
mov r15, rcx
shl r15, 4
add r15, rbx
cmp rbx, r15
je 0x140126187
nop dword [rax]
mov r9, qword [rbx + 8]
mov r8, qword [rbx]
cmp r8, r9
je 0x140126175
mov rcx, r14
cmp byte [r8], 0x2d
jne 0x14012616b
inc r8
call fcn.1401e1510
test rax, rax
je 0x140126175
xor r14d, r14d
mov r9, qword [rsp + 0x48]
inc rdi
add rsi, 0x38
mov rax, qword [rdi]
test rax, rax
jne 0x140126124
add rdi, 8
add rsi, 0x1c0
mov rax, qword [rdi]
test rax, rax
je 0x140126111
bsf rcx, rax
mov dword [rsp + 0x70], ecx
mov eax, 0x40
cmovne eax, ecx
cdq
and edx, 7
add eax, edx
sar eax, 3
movsxd rcx, eax
add rdi, rcx
imul rax, rcx, 0x38
add rsi, rax
cmp rsi, qword [r9 + 0xfb8]
mov r15d, dword [rsp + 0x50]
mov r10d, dword [rsp + 0x40]
jne 0x140125fc0
mov rdi, qword [rsp + 0x48]
jmp 0x1401256b5
call fcn.1401e1510
test rax, rax
jne 0x140126199
add rbx, 0x10
cmp rbx, r15
jne 0x1401260d0
mov r9, qword [rsp + 0x48]
xor r14d, r14d
cmp dword [r9 + 0x2cd8], r14d
jne 0x140126102
jmp 0x1401261a1
xor r14d, r14d
mov r9, qword [rsp + 0x48]
movzx eax, word [rsi]
mov word [rbp - 0x58], ax
mov word [rbp - 0x56], r14w
mov eax, dword [rsi + 0xe]
mov qword [rbp - 0x50], rax
mov qword [rbp - 0x48], r13
vmovups xmm0, xmmword [rbp - 0x58]
vmovsd xmm1, qword [rbp - 0x48]
jmp 0x140125ffb
mov rdi, r9
jmp 0x1401256c1
mov rdi, r9
jmp 0x1401256bc
mov r8, qword [rbp + 0xd0]
mov rbx, qword [rbp + 0xd8]
mov rax, qword [rbx]
test rax, rax
jne 0x140126200
nop dword [rax]
add rbx, 8
add r8, 0x18
mov rax, qword [rbx]
test rax, rax
je 0x1401261f0
bsf rcx, rax
mov dword [rsp + 0x70], ecx
mov eax, 0x40
cmovne eax, ecx
cdq
and edx, 7
add eax, edx
sar eax, 3
movsxd rcx, eax
add rbx, rcx
lea rax, [rcx + r8]
lea rdi, [rax + rcx*2]
mov rsi, qword [rbp + 0xd8]
mov r10, qword [rbp + 0xa8]
mov r12, qword [rsp + 0x48]
cmp rdi, rsi
je 0x140126317
mov dword [rsp + 0x40], r14d
movzx eax, word [rdi]
mov word [rsp + 0x40], ax
movzx eax, byte [rdi + 2]
mov byte [rsp + 0x42], al
movzx edx, word [r12 + 0xdec]
shl rdx, 0x20
mov eax, dword [r12 + 0xde8]
or rdx, rax
mov eax, dword [rsp + 0x40]
dec eax
mov rax, qword [rdx + rax*8]
mov qword [rbp - 0x78], rax
cmp r10, qword [rbp + 0xb0]
je 0x14012629e
mov qword [r10], rax
mov r10, qword [rbp + 0xa8]
add r10, 8
mov qword [rbp + 0xa8], r10
jmp 0x1401262b8
lea r8, [rbp - 0x78]
mov rdx, r10
lea rcx, [rbp + 0xa0]
call fcn.140004590
mov r10, qword [rbp + 0xa8]
inc rbx
add rdi, 3
mov rax, qword [rbx]
test rax, rax
jne 0x1401262e0
nop word [rax + rax]
add rbx, 8
add rdi, 0x18
mov rax, qword [rbx]
test rax, rax
je 0x1401262d0
bsf rcx, rax
mov dword [rsp + 0x70], ecx
mov eax, 0x40
cmovne eax, ecx
cdq
and edx, 7
add eax, edx
sar eax, 3
movsxd rcx, eax
add rbx, rcx
lea rax, [rcx + rdi]
lea rdi, [rax + rcx*2]
cmp rdi, rsi
jne 0x140126243
mov r11, qword [rbp + 0xa0]
mov r8, r10
sub r8, r11
sar r8, 3
movzx r9d, byte [rsp + 0x50]
mov rdx, r10
mov rcx, r11
call fcn.140093470
mov r14, qword [rbp + 0xa8]
mov rdi, qword [rbp + 0xa0]
cmp rdi, r14
je 0x1401263c4
nop word [rax + rax]
vmovss dword [rbp + 0x158], xmm12
vmovss dword [rbp + 0x15c], xmm12
lea r9, [rbp + 0x158]
xor r8d, r8d
xor edx, edx
mov rcx, qword [rdi]
call fcn.14022a0e0
test al, al
je 0x1401263bb
mov rdx, qword [rdi]
mov rax, r13
nop
inc rax
cmp byte [rdx + rax], 0
jne 0x140126380
mov ebx, 0xff
cmp rax, rbx
cmovb rbx, rax
mov r8, rbx
lea rcx, [r12 + 0x2ce0]
call sub.VCRUNTIME140.dll_memcpy
mov byte [r12 + rbx + 0x2ce0], 0
lea rcx, [r12 + 0x2ce0]
call fcn.1401e25a0
add rdi, 8
cmp rdi, r14
jne 0x140126350
mov rbx, qword [0x141443c60]
call fcn.1401f8990
dec dword [rbx + 0x5ff8]
mov rcx, qword [rbp + 0xa0]
test rcx, rcx
je 0x140126435
mov rdx, qword [rbp + 0xb0]
sub rdx, rcx
and rdx, 0xfffffffffffffff8
mov rax, rcx
cmp rdx, 0x1000
jb 0x140126418
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x140126418
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.1403f4db4
vpxor xmm0, xmm0, xmm0
vmovdqu xmmword [rbp + 0xa0], xmm0
xor r14d, r14d
mov qword [rbp + 0xb0], r14
jmp 0x140126438
xor r14d, r14d
cmp qword [rbp + 0xe8], 0
je 0x140126463
mov qword [rbp + 0xe0], r14
lea rax, [rbp + 0xe8]
mov rcx, qword [rbp + 0xd0]
cmp rcx, rax
je 0x140126463
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
nop
mov rdi, qword [rsp + 0x48]
mov esi, 1
vmovaps xmm1, xmm13
vmovaps xmm0, xmm12
call fcn.1401f6d00
vmovss dword [rbp + 0x160], xmm12
vmovss dword [rbp + 0x164], xmm12
xor r8d, r8d
lea rdx, [rbp + 0x160]
lea rcx, [0x1413cc398]
call fcn.140217480
test al, al
je 0x1401264b5
lea rcx, [rdi + 0x2ce0]
mov byte [rcx], 0
call fcn.1401e25a0
vmovaps xmm1, xmm13
vmovaps xmm0, xmm12
call fcn.1401f6d00
mov rdx, qword [0x141443c60]
mov rax, qword [rdx + 0x4150]
mov byte [rax + 0xf5], 1
mov rax, qword [rdx + 0x4150]
cmp byte [rax + 0xf8], 0
jne 0x14012650a
vmovss dword [rbp + 0x168], xmm12
vmovss dword [rbp + 0x16c], xmm12
vmovaps xmm1, xmm13
lea rcx, [rbp + 0x168]
call fcn.1401f6b70
vmovaps xmm1, xmm13
vmovaps xmm0, xmm12
call fcn.1401f6d00
lea rdx, [rdi + 0x2fce]
lea rcx, [0x1413caa50]
call fcn.140218f00
vmovaps xmm1, xmm13
vmovaps xmm0, xmm12
call fcn.1401f6d00
mov rdx, qword [0x141443c60]
mov rax, qword [rdx + 0x4150]
mov byte [rax + 0xf5], 1
mov rax, qword [rdx + 0x4150]
cmp byte [rax + 0xf8], 0
jne 0x140126581
vmovss dword [rbp + 0x170], xmm12
vmovss dword [rbp + 0x174], xmm12
vmovaps xmm1, xmm13
lea rcx, [rbp + 0x170]
call fcn.1401f6b70
vmovaps xmm1, xmm13
vmovaps xmm0, xmm12
call fcn.1401f6d00
cmp dword [rdi + 0x2fb8], 1
jne 0x140126970
cmp byte [rdi + 0x13f5], 0
jne 0x140126970
mov byte [rdi + 0x18], 0
mov byte [rsp + 0x50], 0
mov rax, qword [0x141443c60]
mov edi, dword [rax + 0x4ad4]
or edi, 4
mov dword [rax + 0x4ad4], edi
lea rbx, [rax + 0x4c40]
mov ecx, dword [rbx + 4]
mov r8d, dword [rbx]
cmp r8d, ecx
jne 0x140126604
inc r8d
test ecx, ecx
je 0x1401265ed
mov eax, ecx
cdq
sub eax, edx
sar eax, 1
add eax, ecx
jmp 0x1401265f2
mov eax, 8
cmp eax, r8d
cmovg r8d, eax
mov edx, r8d
mov rcx, rbx
call fcn.1401deb40
movsxd rcx, dword [rbx]
mov rax, qword [rbx + 8]
mov dword [rax + rcx*4], edi
inc dword [rbx]
mov rbx, qword [0x141443c60]
vmovss xmm0, dword [rbx + 0x39f8]
vmulss xmm6, xmm0, dword [0x14140e804]
lea rcx, [rbx + 0x4c10]
mov dword [rbp + 0x2b0], r14d
vmovss dword [rbp + 0x2b4], xmm0
lea rdx, [rbp + 0x2b0]
call fcn.14020b650
vmovss dword [rbx + 0x39f8], xmm6
lea rdx, [rsp + 0x50]
lea rcx, [0x1413c5e08]
call fcn.140218f00
mov rdx, qword [0x141443c60]
movsxd rcx, dword [rdx + 0x4c40]
lea eax, [rcx - 1]
mov dword [rdx + 0x4c40], eax
mov rax, qword [rdx + 0x4c48]
mov ecx, dword [rax + rcx*4 - 8]
mov dword [rdx + 0x4ad4], ecx
mov ecx, esi
call fcn.1401e39f0
xor ecx, ecx
call fcn.1401e7340
test al, al
je 0x1401266bb
xor edx, edx
xor ecx, ecx
call fcn.1401f7d60
mov r8d, esi
xor edx, edx
lea rcx, [0x1413cc3b0]
call fcn.140215e20
call fcn.1401f2010
mov rdi, qword [rsp + 0x48]
cmp dword [rdi + 0x2fb8], 1
jne 0x14012690a
vmovaps xmm1, xmm13
vmovaps xmm0, xmm12
call fcn.1401f6d00
mov rdx, qword [0x141443c60]
mov rax, qword [rdx + 0x4150]
mov byte [rax + 0xf5], 1
mov rax, qword [rdx + 0x4150]
cmp byte [rax + 0xf8], 0
jne 0x140126722
vmovss dword [rbp + 0x1c8], xmm12
vmovss dword [rbp + 0x1cc], xmm12
vmovaps xmm1, xmm13
lea rcx, [rbp + 0x1c8]
call fcn.1401f6b70
vmovaps xmm1, xmm13
vmovaps xmm0, xmm12
call fcn.1401f6d00
vmovaps xmm1, xmm14
mov ecx, 2
call fcn.14021a1b0
vmovaps xmm1, xmm13
vmovaps xmm0, xmm12
call fcn.1401f6d00
mov rdx, qword [0x141443c60]
mov rax, qword [rdx + 0x4150]
mov byte [rax + 0xf5], 1
mov rax, qword [rdx + 0x4150]
cmp byte [rax + 0xf8], 0
jne 0x140126795
vmovss dword [rbp + 0x188], xmm12
vmovss dword [rbp + 0x18c], xmm12
vmovaps xmm1, xmm13
lea rcx, [rbp + 0x188]
call fcn.1401f6b70
vmovaps xmm1, xmm13
vmovaps xmm0, xmm12
call fcn.1401f6d00
cmp byte [rdi + 0x2fca], 0
je 0x1401267b2
call fcn.1401f2a10
mov r8d, esi
xor edx, edx
lea rcx, [0x1413cc3d8]
call fcn.140215e20
vmovaps xmm1, xmm13
vmovaps xmm0, xmm12
call fcn.1401f6d00
mov rdx, qword [0x141443c60]
mov rax, qword [rdx + 0x4150]
mov byte [rax + 0xf5], 1
mov rax, qword [rdx + 0x4150]
cmp byte [rax + 0xf8], 0
jne 0x140126818
vmovss dword [rbp + 0x190], xmm12
vmovss dword [rbp + 0x194], xmm12
vmovaps xmm1, xmm13
lea rcx, [rbp + 0x190]
call fcn.1401f6b70
vmovaps xmm1, xmm13
vmovaps xmm0, xmm12
call fcn.1401f6d00
lea rdx, [rdi + 0x2fcb]
lea rcx, [0x1413cc3e0]
call fcn.140218f00
vmovaps xmm1, xmm13
vmovaps xmm0, xmm12
call fcn.1401f6d00
mov rdx, qword [0x141443c60]
mov rax, qword [rdx + 0x4150]
mov byte [rax + 0xf5], 1
mov rax, qword [rdx + 0x4150]
cmp byte [rax + 0xf8], 0
jne 0x14012688f
vmovss dword [rbp + 0x198], xmm12
vmovss dword [rbp + 0x19c], xmm12
vmovaps xmm1, xmm13
lea rcx, [rbp + 0x198]
call fcn.1401f6b70
vmovaps xmm1, xmm13
vmovaps xmm0, xmm12
call fcn.1401f6d00
lea rdx, [rdi + 0x2fcc]
lea rcx, [0x1413cc360]
call fcn.140218f00
cmp byte [rdi + 0x2fca], 0
je 0x14012690a
mov rdx, qword [0x141443c60]
dec word [rdx + 0x6084]
mov eax, dword [rdx + 0x4ad4]
shr eax, 2
test al, 1
movsxd rcx, dword [rdx + 0x4c40]
lea eax, [rcx - 1]
mov dword [rdx + 0x4c40], eax
mov rax, qword [rdx + 0x4c48]
mov r8d, dword [rax + rcx*4 - 8]
mov dword [rdx + 0x4ad4], r8d
je 0x14012690a
test r8b, 4
jne 0x14012690a
mov eax, dword [rdx + 0x6080]
mov dword [rdx + 0x39f8], eax
mov rax, qword [0x141443c60]
mov rdx, qword [rax + 0x4150]
cmp byte [rdx + 0xf8], 0
jne 0x14012694e
mov r8d, dword [rdx + 0x1f4]
mov eax, r8d
neg eax
sbb ecx, ecx
add ecx, 2
cmp qword [rdx + 0x1e8], 0
je 0x140126944
neg r8d
sbb ecx, ecx
add ecx, 6
vmovaps xmm1, xmm14
call fcn.14021a1b0
mov ecx, esi
call fcn.1401e39f0
cmp byte [rdi + 0x18], 0
je 0x140126c10
mov r12, qword [rdi + 0x10]
sub r12, qword [rdi + 8]
cmove r12, rsi
jmp 0x140126c41
lea rdx, [rdi + 0x18]
lea rcx, [0x1413c5e08]
call fcn.140218f00
test al, al
je 0x1401269b2
cmp byte [rdi + 0x18], 0
je 0x1401266c0
cmp qword [rdi + 8], 0
jne 0x1401269b2
cmp qword [rdi + 0x10], 0
jne 0x1401269b2
mov rax, qword [rdi + 0x2798]
mov qword [rdi + 8], rax
mov rax, qword [rdi + 0x27a0]
mov qword [rdi + 0x10], rax
cmp byte [rdi + 0x18], 0
je 0x1401266c0
vmovaps xmm1, xmm13
vmovaps xmm0, xmm12
call fcn.1401f6d00
mov edx, 0xff00ffff
call fcn.1401e3740
mov r8d, esi
xor edx, edx
lea rcx, [0x1413a2c9c]
call fcn.140215e20
mov r8, qword [0x141443c60]
movsxd rax, dword [r8 + 0x4c00]
cmp eax, 1
jl 0x140126a23
lea rdx, [rax + rax*4]
mov rcx, qword [r8 + 0x4c08]
movsxd rax, dword [rcx + rdx*4 - 0x14]
add rax, rax
vmovups xmm0, xmmword [rcx + rdx*4 - 0x10]
vmovups xmmword [r8 + rax*8 + 0x3ae8], xmm0
dec dword [r8 + 0x4c00]
vmovaps xmm1, xmm13
vmovaps xmm0, xmm12
call fcn.1401f6d00
movzx ebx, byte [rdi]
test bl, bl
je 0x140126b6e
lea rax, [rsp + 0x70]
mov qword [rsp + 0x28], rax
lea rax, [rsp + 0x50]
mov qword [rsp + 0x20], rax
lea r9, [rsp + 0x40]
vmovss xmm1, dword [0x14140e810]
vmovaps xmm2, xmm1
vmovss xmm6, dword [0x14140e7e0]
vmovaps xmm0, xmm6
call fcn.1401e20d0
vmovss xmm2, dword [rsp + 0x40]
vinsertps xmm2, xmm2, dword [rsp + 0x50], 0x10
vinsertps xmm2, xmm2, dword [rsp + 0x70], 0x20
vinsertps xmm2, xmm2, xmm14, 0x30
vmovups xmmword [rbp + 0x2ec], xmm2
lea rdx, [rbp + 0x2ec]
mov ecx, reloc.WS2_32.dll_setsockopt
call fcn.1401e3800
lea rax, [rsp + 0x50]
mov qword [rsp + 0x28], rax
lea rax, [rsp + 0x40]
mov qword [rsp + 0x20], rax
lea r9, [rsp + 0x70]
vmovss xmm1, dword [0x14140e838]
vmovaps xmm2, xmm1
vmovaps xmm0, xmm6
call fcn.1401e20d0
vmovss xmm2, dword [rsp + 0x70]
vinsertps xmm2, xmm2, dword [rsp + 0x40], 0x10
vinsertps xmm2, xmm2, dword [rsp + 0x50], 0x20
vinsertps xmm2, xmm2, xmm14, 0x30
vmovups xmmword [rbp + 0x2fc], xmm2
lea rdx, [rbp + 0x2fc]
mov ecx, socket
call fcn.1401e3800
lea rax, [rsp + 0x50]
mov qword [rsp + 0x28], rax
lea rax, [rsp + 0x40]
mov qword [rsp + 0x20], rax
lea r9, [rsp + 0x70]
vmovss xmm1, dword [0x14140e824]
vmovaps xmm2, xmm1
vmovaps xmm0, xmm6
call fcn.1401e20d0
vmovss xmm2, dword [rsp + 0x70]
vinsertps xmm2, xmm2, dword [rsp + 0x40], 0x10
vinsertps xmm2, xmm2, dword [rsp + 0x50], 0x20
vinsertps xmm2, xmm2, xmm14, 0x30
vmovups xmmword [rbp + 0x30c], xmm2
lea rdx, [rbp + 0x30c]
mov ecx, reloc.WS2_32.dll_socket
call fcn.1401e3800
vmovss dword [rbp + 0x178], xmm12
vmovss dword [rbp + 0x17c], xmm12
xor r8d, r8d
lea rdx, [rbp + 0x178]
lea rcx, [0x1413c5e18]
call fcn.140217480
test al, al
je 0x140126ba0
cmp byte [rdi], 0
sete al
mov byte [rdi], al
test bl, bl
je 0x1401266c0
mov r9d, 3
mov r8, qword [0x141443c60]
mov eax, dword [r8 + 0x4c00]
cmp eax, r9d
jge 0x140126bd0
mov r9d, eax
test eax, eax
jle 0x1401266c0
nop dword [rax]
cdqe
lea rdx, [rax + rax*4]
mov rcx, qword [r8 + 0x4c08]
movsxd rax, dword [rcx + rdx*4 - 0x14]
add rax, rax
vmovups xmm0, xmmword [rcx + rdx*4 - 0x10]
vmovups xmmword [r8 + rax*8 + 0x3ae8], xmm0
dec dword [r8 + 0x4c00]
mov eax, dword [r8 + 0x4c00]
dec r9d
test r9d, r9d
jg 0x140126bd0
jmp 0x1401266c0
cmp byte [rdi + 0x294], 0
jne 0x140126c1e
mov rax, r14
jmp 0x140126c37
mov rax, qword [rdi + 0xc08]
movzx ecx, word [rax + 0xc]
shl rcx, 0x20
mov eax, dword [rax + 8]
or rcx, rax
mov rax, qword [rcx + 0x28]
mov r12, qword [rdi + 0xd80]
sub r12, rax
mov qword [rbp + 0x50], r12
test dword [rdi + 0x2fb8], 0xfffffffd
je 0x140128455
lea r8, [rdi + 0x10b8]
mov qword [rsp + 0x68], r8
lea r15, [rdi + 0x10f8]
mov qword [rsp + 0x50], r15
xor eax, eax
mov qword [rbp + 0x450], rax
mov word [rbp + 0x458], ax
mov byte [rbp + 0x45a], al
cmp byte [rdi + 0x2fc1], al
je 0x1401278a0
mov rcx, qword [r8 + 0x20]
test rcx, rcx
je 0x140126d8a
dec rcx
mov rax, rcx
shr rax, 1
or rcx, rax
mov rax, rcx
shr rax, 2
or rcx, rax
mov rax, rcx
shr rax, 4
or rcx, rax
mov rax, rcx
shr rax, 8
or rcx, rax
mov rax, rcx
shr rax, 0x10
or rax, rcx
popcnt rdx, rax
shlx eax, esi, edx
lea rax, [rax + rax*2]
shl rax, 3
lock add qword [0x141443c50], rax
and dl, 0x7f
movzx eax, byte [rbp + 0x45a]
and al, 0x80
or dl, al
movzx eax, dl
mov byte [rbp + 0x45a], al
and eax, 0x7f
shlx eax, esi, eax
lea rcx, [rax + rax*2]
shl rcx, 3
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_malloc]
mov r12, rax
mov qword [rsp + 0x78], rax
mov edi, dword [rbp + 0x456]
test edi, edi
je 0x140126d6d
lea r8, [rdi + rdi*2]
shl r8, 3
movzx edx, word [rbp + 0x454]
shl rdx, 0x20
mov ecx, dword [rbp + 0x450]
or rdx, rcx
mov rcx, rax
call sub.VCRUNTIME140.dll_memcpy
movzx ecx, word [rbp + 0x454]
shl rcx, 0x20
mov eax, dword [rbp + 0x450]
or rcx, rax
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
mov edi, dword [rbp + 0x456]
mov r13, r12
shr r13, 0x20
mov dword [rbp + 0x450], r12d
mov word [rbp + 0x454], r13w
mov r8, qword [rsp + 0x68]
jmp 0x140126da4
mov edi, dword [rbp + 0x456]
movzx r13d, word [rbp + 0x454]
mov r12d, dword [rbp + 0x450]
mov qword [rsp + 0x78], r12
mov rbx, qword [rsp + 0x48]
cmp dword [rbx + 0x2cc8], 0
jne 0x140127106
cmp dword [rbx + 0x2de0], 0
jne 0x140127106
cmp byte [rbx + 0x2fce], 0
je 0x140127106
mov r14, qword [r8 + 0x18]
cmp qword [r8 + 0x20], 0
jne 0x140126ddf
xor esi, esi
jmp 0x140126e29
mov rsi, r14
mov r14, qword [r8 + 0x10]
mov rax, qword [rsi]
test rax, rax
jne 0x140126e03
nop
add rsi, 8
add r14, 0x100
mov rax, qword [rsi]
test rax, rax
je 0x140126df0
bsf rcx, rax
mov dword [rsp + 0x70], ecx
mov eax, 0x40
cmovne eax, ecx
cdq
and edx, 7
add eax, edx
sar eax, 3
movsxd rcx, eax
add rsi, rcx
shl rcx, 5
add r14, rcx
mov rbx, qword [r8 + 0x18]
mov qword [rsp + 0x60], rbx
cmp r14, rbx
je 0x140127c26
nop dword [rax + rax]
mov rdx, r14
mov rcx, r15
call fcn.14012a3e0
lea rdx, [rax + rax*8]
shl rdx, 4
add rdx, qword [r15 + 0x10]
mov rax, qword [r14]
cmp rdx, qword [r15 + 0x18]
jne 0x140126e80
mov qword [rbp - 0x70], rax
xor r10d, r10d
mov qword [rbp - 0x68], r10
xor eax, eax
mov qword [rbp - 0x60], rax
vmovups xmm0, xmmword [rbp - 0x70]
vmovsd xmm1, qword [rbp - 0x60]
jmp 0x140127074
mov rcx, qword [rsp + 0x48]
cmp byte [rcx + 0x18], 0
je 0x140127054
mov qword [rbp - 0x78], rax
lea rbx, [rcx + 0x1330]
lea rdx, [rbp - 0x78]
mov rcx, rbx
call fcn.14004b5c0
lea rcx, [rax + rax*2]
mov rax, qword [rbx + 0x10]
lea rdx, [rax + rcx*8]
lea rax, [rdx + 8]
xor r10d, r10d
mov r15d, r10d
cmp rdx, qword [rbx + 0x18]
cmovne r15, rax
test r15, r15
je 0x140127027
mov r9d, dword [r15 + 6]
movzx r11d, word [r15 + 4]
shl r11, 0x20
mov eax, dword [r15]
or r11, rax
test r9, r9
je 0x140126f39
mov rdx, qword [rsp + 0x48]
mov rbx, qword [rdx + 8]
nop
mov rax, r9
cqo
sub rax, rdx
sar rax, 1
mov r10, rax
mov r8, rax
add r8, r8
movsx rdx, word [r11 + r8*8 + 4]
shl rdx, 0x20
mov ecx, dword [r11 + r8*8]
or rdx, rcx
cmp rdx, rbx
jge 0x140126f31
lea r11, [r11 + r8*8]
add r11, 0x10
mov rax, 0xffffffffffffffff
sub rax, r10
add r9, rax
jmp 0x140126f34
mov r9, r10
test r9, r9
jg 0x140126ef0
movzx r8d, word [r15 + 4]
shl r8, 0x20
mov eax, dword [r15]
or r8, rax
mov eax, dword [r15 + 6]
shl rax, 4
add r8, rax
cmp r11, r8
je 0x140126fed
mov r10, r11
sub r8, r11
sar r8, 4
test r8, r8
jle 0x140126fb5
mov rax, qword [rsp + 0x48]
mov rbx, qword [rax + 0x10]
mov r9, r8
shr r9, 1
mov rdx, r9
add rdx, rdx
movsx rcx, word [r10 + rdx*8 + 4]
shl rcx, 0x20
mov eax, dword [r10 + rdx*8]
or rcx, rax
cmp rcx, rbx
jge 0x140126fad
lea r10, [r10 + rdx*8]
add r10, 0x10
mov rax, 0xffffffffffffffff
sub rax, r9
add r8, rax
jmp 0x140126fb0
mov r8, r9
test r8, r8
jg 0x140126f74
sub r10, r11
sar r10, 4
mov rax, qword [r14]
mov qword [rbp - 0x58], rax
mov dword [rbp - 0x50], 0
mov dword [rbp - 0x4c], r10d
xor eax, eax
mov qword [rbp - 0x48], rax
vmovups xmm0, xmmword [rbp - 0x58]
vmovsd xmm1, qword [rbp - 0x48]
mov rbx, qword [rsp + 0x60]
mov r15, qword [rsp + 0x50]
jmp 0x140127074
mov rax, qword [r14]
mov qword [rbp + 0x88], rax
mov qword [rbp + 0x90], 0
xor eax, eax
mov qword [rbp + 0x98], rax
vmovups xmm0, xmmword [rbp + 0x88]
vmovsd xmm1, qword [rbp + 0x98]
mov rbx, qword [rsp + 0x60]
mov r15, qword [rsp + 0x50]
jmp 0x140127074
mov rax, qword [r14]
mov qword [rbp + 0x70], rax
mov qword [rbp + 0x78], r10
xor eax, eax
mov qword [rbp + 0x80], rax
vmovups xmm0, xmmword [rbp + 0x70]
vmovsd xmm1, qword [rbp + 0x80]
mov rbx, qword [rsp + 0x60]
mov r15, qword [rsp + 0x50]
jmp 0x140127074
mov qword [rbp + 0x58], rax
mov eax, dword [rdx + 8]
mov dword [rbp + 0x60], eax
mov eax, dword [rdx + 0xc]
mov dword [rbp + 0x64], eax
xor eax, eax
mov qword [rbp + 0x68], rax
vmovups xmm0, xmmword [rbp + 0x58]
vmovsd xmm1, qword [rbp + 0x68]
movzx edx, r13w
mov eax, r12d
shl rdx, 0x20
or rdx, rax
mov eax, edi
lea rcx, [rax + rax*2]
vmovups xmmword [rdx + rcx*8], xmm0
vmovsd qword [rdx + rcx*8 + 0x10], xmm1
mov edi, dword [rbp + 0x456]
inc edi
mov dword [rbp + 0x456], edi
inc rsi
add r14, 0x20
mov rax, qword [rsi]
test rax, rax
jne 0x1401270c3
add rsi, 8
add r14, 0x100
mov rax, qword [rsi]
test rax, rax
je 0x1401270b0
bsf rcx, rax
mov dword [rsp + 0x70], ecx
mov eax, 0x40
cmovne eax, ecx
cdq
and edx, 7
add eax, edx
sar eax, 3
movsxd rcx, eax
add rsi, rcx
shl rcx, 5
add r14, rcx
cmp r14, rbx
je 0x140127c26
movzx r13d, word [rbp + 0x454]
mov r12d, dword [rbp + 0x450]
jmp 0x140126e40
cmp qword [r8 + 0x20], 0
jne 0x140127113
mov rsi, qword [r8 + 0x18]
jmp 0x140127169
mov rsi, qword [r8 + 0x10]
mov r14, qword [r8 + 0x18]
mov rax, qword [r14]
test rax, rax
jne 0x140127143
nop dword [rax]
nop word [rax + rax]
add r14, 8
add rsi, 0x100
mov rax, qword [r14]
test rax, rax
je 0x140127130
bsf rcx, rax
mov dword [rsp + 0x70], ecx
mov eax, 0x40
cmovne eax, ecx
cdq
and edx, 7
add eax, edx
sar eax, 3
movsxd rcx, eax
add r14, rcx
shl rcx, 5
add rsi, rcx
mov rax, qword [r8 + 0x18]
mov qword [rbp - 0x40], rax
cmp rsi, rax
je 0x140127898
xor r10d, r10d
nop dword [rax]
mov dword [rsp + 0x40], r10d
movzx eax, word [rsi + 8]
mov word [rsp + 0x40], ax
movzx eax, byte [rsi + 0xa]
mov byte [rsp + 0x42], al
movzx edx, word [rbx + 0xdec]
shl rdx, 0x20
mov eax, dword [rbx + 0xde8]
or rdx, rax
mov eax, dword [rsp + 0x40]
dec eax
mov r8, qword [rdx + rax*8]
mov dword [rsp + 0x40], r10d
movzx eax, word [rsi + 0x12]
mov word [rsp + 0x40], ax
movzx eax, byte [rsi + 0x14]
mov byte [rsp + 0x42], al
mov eax, dword [rsp + 0x40]
dec eax
mov r12, qword [rdx + rax*8]
mov qword [rsp + 0x60], r12
cmp byte [rbx + 0x2fce], 0
jne 0x1401271e8
cmp qword [rsi], 0
jl 0x14012725d
movsxd rax, dword [rbx + 0x2cc8]
test eax, eax
je 0x1401273cd
lea r15, [0x1413a1907]
test r8, r8
cmovne r15, r8
mov rbx, qword [rbx + 0x2cd0]
mov r12, rax
shl r12, 4
add r12, rbx
cmp rbx, r12
je 0x1401273a0
nop
mov r9, qword [rbx + 8]
mov r8, qword [rbx]
cmp r8, r9
je 0x140127393
mov rcx, r15
cmp byte [r8], 0x2d
jne 0x140127389
inc r8
call fcn.1401e1510
test rax, rax
je 0x140127393
mov rbx, qword [rsp + 0x48]
mov r15, qword [rsp + 0x50]
mov r12, qword [rsp + 0x60]
movzx ecx, byte [rsi + 0x1f]
shl ecx, 0x10
movzx eax, word [rsi + 0x1d]
or ecx, eax
jne 0x14012783c
lea rcx, [rbx + 0x150]
mov rdx, qword [rsi]
call fcn.140184600
mov rbx, rax
mov qword [rbp - 0x78], rax
test rax, rax
je 0x14012736e
lea rdx, [rbp - 0x78]
mov rdi, qword [rsp + 0x68]
mov rcx, rdi
call fcn.1400cb460
shl rax, 5
mov rdx, qword [rdi + 0x10]
add rdx, rax
cmp rdx, qword [rdi + 0x18]
je 0x14012736e
mov dword [rsp + 0x40], 0
movzx eax, word [rdx + 8]
mov word [rsp + 0x40], ax
movzx eax, byte [rdx + 0xa]
mov byte [rsp + 0x42], al
mov r9, qword [rsp + 0x48]
movzx edx, word [r9 + 0xdec]
shl rdx, 0x20
mov eax, dword [r9 + 0xde8]
or rdx, rax
mov eax, dword [rsp + 0x40]
dec eax
mov r8, qword [rdx + rax*8]
cmp byte [r9 + 0x2fce], 0
jne 0x140127302
test rbx, rbx
js 0x14012736e
mov rbx, r9
movsxd rax, dword [r9 + 0x2cc8]
test eax, eax
je 0x140127490
lea rdi, [0x1413a1907]
test r8, r8
cmovne rdi, r8
mov rbx, qword [r9 + 0x2cd0]
mov r15, rax
shl r15, 4
add r15, rbx
cmp rbx, r15
je 0x140127477
nop dword [rax]
mov r9, qword [rbx + 8]
mov r8, qword [rbx]
cmp r8, r9
je 0x14012746a
mov rcx, rdi
cmp byte [r8], 0x2d
jne 0x140127460
inc r8
call fcn.1401e1510
test rax, rax
je 0x14012746a
mov edi, dword [rbp + 0x456]
mov ecx, dword [rbp + 0x450]
mov qword [rsp + 0x78], rcx
mov r15, qword [rsp + 0x50]
jmp 0x140127834
call fcn.1401e1510
test rax, rax
jne 0x1401273be
add rbx, 0x10
cmp rbx, r12
jne 0x140127220
mov rbx, qword [rsp + 0x48]
mov r12, qword [rsp + 0x60]
mov r15, qword [rsp + 0x50]
cmp dword [rbx + 0x2cd8], 0
jne 0x14012725d
jmp 0x1401273cd
mov r12, qword [rsp + 0x60]
mov r15, qword [rsp + 0x50]
mov rbx, qword [rsp + 0x48]
movsxd rax, dword [rbx + 0x2de0]
test eax, eax
je 0x140127456
lea r15, [0x1413a1907]
test r12, r12
cmovne r15, r12
mov rbx, qword [rbx + 0x2de8]
mov r12, rax
shl r12, 4
add r12, rbx
cmp rbx, r12
je 0x14012743f
nop dword [rax]
mov r9, qword [rbx + 8]
mov r8, qword [rbx]
cmp r8, r9
je 0x140127436
mov rcx, r15
cmp byte [r8], 0x2d
jne 0x140127428
inc r8
call fcn.1401e1510
test rax, rax
jne 0x14012724e
jmp 0x140127436
call fcn.1401e1510
test rax, rax
jne 0x140127543
add rbx, 0x10
cmp rbx, r12
jne 0x140127400
mov rbx, qword [rsp + 0x48]
mov r15, qword [rsp + 0x50]
cmp dword [rbx + 0x2df0], 0
jne 0x140127258
mov r12, qword [rsp + 0x78]
jmp 0x140127552
call fcn.1401e1510
test rax, rax
jne 0x14012748b
add rbx, 0x10
cmp rbx, r15
jne 0x140127340
mov rbx, qword [rsp + 0x48]
cmp dword [rbx + 0x2cd8], 0
jne 0x14012736e
jmp 0x140127490
mov rbx, qword [rsp + 0x48]
movsxd rax, dword [rbx + 0x2de0]
test eax, eax
je 0x14012752c
lea rdi, [0x1413a1907]
test r12, r12
cmovne rdi, r12
mov rbx, qword [rbx + 0x2de8]
mov r15, rax
shl r15, 4
add r15, rbx
cmp rbx, r15
je 0x1401274fe
mov r9, qword [rbx + 8]
mov r8, qword [rbx]
cmp r8, r9
je 0x1401274f5
mov rcx, rdi
cmp byte [r8], 0x2d
jne 0x1401274eb
inc r8
call fcn.1401e1510
test rax, rax
jne 0x14012736e
jmp 0x1401274f5
call fcn.1401e1510
test rax, rax
jne 0x140127527
add rbx, 0x10
cmp rbx, r15
jne 0x1401274c3
mov rbx, qword [rsp + 0x48]
cmp dword [rbx + 0x2df0], 0
jne 0x14012736e
mov edi, dword [rbp + 0x456]
movzx r13d, word [rbp + 0x454]
mov r12d, dword [rbp + 0x450]
jmp 0x14012754d
mov rbx, qword [rsp + 0x48]
mov edi, dword [rbp + 0x456]
movzx r13d, word [rbp + 0x454]
mov r12d, dword [rbp + 0x450]
jmp 0x14012754d
mov r12, qword [rsp + 0x78]
mov rbx, qword [rsp + 0x48]
mov r15, qword [rsp + 0x50]
mov rdx, rsi
mov rcx, r15
call fcn.14012a3e0
lea rdx, [rax + rax*8]
shl rdx, 4
add rdx, qword [r15 + 0x10]
mov rax, qword [rsi]
cmp rdx, qword [r15 + 0x18]
jne 0x1401275d2
mov qword [rbp - 0x70], rax
xor r10d, r10d
mov qword [rbp - 0x68], r10
xor eax, eax
mov qword [rbp - 0x60], rax
movzx edx, r13w
shl rdx, 0x20
mov eax, r12d
or rdx, rax
mov eax, edi
lea rcx, [rax + rax*2]
vmovups xmm0, xmmword [rbp - 0x70]
vmovups xmmword [rdx + rcx*8], xmm0
vmovsd xmm1, qword [rbp - 0x60]
vmovsd qword [rdx + rcx*8 + 0x10], xmm1
mov edi, dword [rbp + 0x456]
inc edi
mov dword [rbp + 0x456], edi
movzx r13d, word [rbp + 0x454]
mov eax, dword [rbp + 0x450]
mov qword [rsp + 0x78], rax
jmp 0x14012783f
cmp byte [rbx + 0x18], 0
je 0x1401277dc
mov qword [rbp - 0x78], rax
lea rdx, [rbp - 0x78]
lea rcx, [rbx + 0x1330]
call fcn.14004b5c0
lea rcx, [rax + rax*2]
mov rax, qword [rbx + 0x1340]
lea rdx, [rax + rcx*8]
lea rax, [rdx + 8]
xor r10d, r10d
mov r15d, r10d
cmp rdx, qword [rbx + 0x1348]
cmovne r15, rax
test r15, r15
je 0x140127774
movzx r11d, word [r15 + 4]
shl r11, 0x20
mov eax, dword [r15]
or r11, rax
mov r9d, dword [r15 + 6]
test r9, r9
je 0x14012768c
mov rax, qword [rsp + 0x48]
mov rbx, qword [rax + 8]
nop
mov rax, r9
cqo
sub rax, rdx
sar rax, 1
mov r10, rax
mov r8, rax
add r8, r8
movsx rdx, word [r11 + r8*8 + 4]
shl rdx, 0x20
mov ecx, dword [r11 + r8*8]
or rdx, rcx
cmp rdx, rbx
jge 0x140127681
lea r11, [r11 + r8*8]
add r11, 0x10
mov rax, 0xffffffffffffffff
sub rax, r10
add r9, rax
jmp 0x140127684
mov r9, r10
test r9, r9
jg 0x140127640
xor r10d, r10d
movzx r8d, word [r15 + 4]
shl r8, 0x20
mov eax, dword [r15]
or r8, rax
mov eax, dword [r15 + 6]
shl rax, 4
add r8, rax
cmp r11, r8
je 0x140127744
mov r10, r11
sub r8, r11
sar r8, 4
test r8, r8
jle 0x140127711
mov rax, qword [rsp + 0x48]
mov rbx, qword [rax + 0x10]
nop word [rax + rax]
mov r9, r8
shr r9, 1
mov rdx, r9
add rdx, rdx
movsx rcx, word [r10 + rdx*8 + 4]
shl rcx, 0x20
mov eax, dword [r10 + rdx*8]
or rcx, rax
cmp rcx, rbx
jge 0x140127709
lea r10, [r10 + rdx*8]
add r10, 0x10
mov rax, 0xffffffffffffffff
sub rax, r9
add r8, rax
jmp 0x14012770c
mov r8, r9
test r8, r8
jg 0x1401276d0
sub r10, r11
sar r10, 4
mov rax, qword [rsi]
mov qword [rbp - 0x58], rax
mov dword [rbp - 0x50], 0
mov dword [rbp - 0x4c], r10d
xor eax, eax
mov qword [rbp - 0x48], rax
vmovups xmm0, xmmword [rbp - 0x58]
vmovsd xmm1, qword [rbp - 0x48]
mov r15, qword [rsp + 0x50]
jmp 0x1401277fc
mov rax, qword [rsi]
mov qword [rbp + 0x88], rax
mov qword [rbp + 0x90], 0
xor eax, eax
mov qword [rbp + 0x98], rax
vmovups xmm0, xmmword [rbp + 0x88]
vmovsd xmm1, qword [rbp + 0x98]
jmp 0x140127795
mov rax, qword [rsi]
mov qword [rbp + 0x70], rax
mov qword [rbp + 0x78], r10
xor eax, eax
mov qword [rbp + 0x80], rax
vmovups xmm0, xmmword [rbp + 0x70]
vmovsd xmm1, qword [rbp + 0x80]
movzx edx, r13w
mov eax, r12d
shl rdx, 0x20
or rdx, rax
mov eax, edi
lea rcx, [rax + rax*2]
vmovups xmmword [rdx + rcx*8], xmm0
vmovsd qword [rdx + rcx*8 + 0x10], xmm1
mov edi, dword [rbp + 0x456]
inc edi
mov dword [rbp + 0x456], edi
movzx r13d, word [rbp + 0x454]
mov eax, dword [rbp + 0x450]
mov qword [rsp + 0x78], rax
mov r15, qword [rsp + 0x50]
jmp 0x14012783f
mov qword [rbp + 0x58], rax
mov eax, dword [rdx + 8]
mov dword [rbp + 0x60], eax
mov eax, dword [rdx + 0xc]
mov dword [rbp + 0x64], eax
xor eax, eax
mov qword [rbp + 0x68], rax
vmovups xmm0, xmmword [rbp + 0x58]
vmovsd xmm1, qword [rbp + 0x68]
movzx edx, r13w
mov eax, r12d
shl rdx, 0x20
or rdx, rax
mov eax, edi
lea rcx, [rax + rax*2]
vmovups xmmword [rdx + rcx*8], xmm0
vmovsd qword [rdx + rcx*8 + 0x10], xmm1
mov edi, dword [rbp + 0x456]
mov eax, dword [rbp + 0x450]
inc edi
mov qword [rsp + 0x78], rax
mov dword [rbp + 0x456], edi
movzx r13d, word [rbp + 0x454]
xor r10d, r10d
inc r14
add rsi, 0x20
mov rax, qword [r14]
test rax, rax
jne 0x140127863
nop
add r14, 8
add rsi, 0x100
mov rax, qword [r14]
test rax, rax
je 0x140127850
bsf rcx, rax
mov dword [rsp + 0x70], ecx
mov eax, 0x40
cmovne eax, ecx
cdq
and edx, 7
add eax, edx
sar eax, 3
movsxd rcx, eax
add r14, rcx
shl rcx, 5
add rsi, rcx
cmp rsi, qword [rbp - 0x40]
mov rbx, qword [rsp + 0x48]
jne 0x140127180
mov rdi, rbx
jmp 0x140127c2b
mov rcx, qword [r15 + 0x20]
test rcx, rcx
je 0x140127997
dec rcx
mov rax, rcx
shr rax, 1
or rcx, rax
mov rax, rcx
shr rax, 2
or rcx, rax
mov rax, rcx
shr rax, 4
or rcx, rax
mov rax, rcx
shr rax, 8
or rcx, rax
mov rax, rcx
shr rax, 0x10
or rax, rcx
popcnt rdx, rax
shlx eax, esi, edx
lea rax, [rax + rax*2]
shl rax, 3
lock add qword [0x141443c50], rax
and dl, 0x7f
movzx eax, byte [rbp + 0x45a]
and al, 0x80
or dl, al
movzx eax, dl
mov byte [rbp + 0x45a], al
and eax, 0x7f
shlx eax, esi, eax
lea rcx, [rax + rax*2]
shl rcx, 3
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_malloc]
mov rbx, rax
mov r14d, dword [rbp + 0x456]
test r14d, r14d
je 0x14012797c
lea r8, [r14 + r14*2]
shl r8, 3
movzx edx, word [rbp + 0x454]
shl rdx, 0x20
mov ecx, dword [rbp + 0x450]
or rdx, rcx
mov rcx, rax
call sub.VCRUNTIME140.dll_memcpy
movzx ecx, word [rbp + 0x454]
shl rcx, 0x20
mov eax, dword [rbp + 0x450]
or rcx, rax
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
mov r14d, dword [rbp + 0x456]
mov rax, rbx
shr rax, 0x20
mov dword [rbp + 0x450], ebx
mov word [rbp + 0x454], ax
mov r8, qword [rsp + 0x68]
jmp 0x14012799e
mov r14d, dword [rbp + 0x456]
cmp dword [rdi + 0x2cc8], 0
jne 0x140127ddb
cmp dword [rdi + 0x2de0], 0
jne 0x140127ddb
cmp byte [rdi + 0x2fce], 0
je 0x140127ddb
mov rax, qword [r15 + 0x20]
cmp byte [rdi + 0x18], 0
je 0x140127ca7
mov rdi, qword [r15 + 0x18]
test rax, rax
jne 0x1401279e0
xor ebx, ebx
jmp 0x140127a2d
mov rbx, rdi
mov rdi, qword [r15 + 0x10]
mov rax, qword [rbx]
test rax, rax
jne 0x140127a03
nop
add rbx, 8
add rdi, 0x480
mov rax, qword [rbx]
test rax, rax
je 0x1401279f0
bsf rcx, rax
mov dword [rsp + 0x70], ecx
mov eax, 0x40
cmovne eax, ecx
cdq
and edx, 7
add eax, edx
sar eax, 3
movsxd rcx, eax
add rbx, rcx
lea rax, [rcx + rcx*8]
shl rax, 4
add rdi, rax
mov r12, qword [r15 + 0x18]
cmp rdi, r12
je 0x14012844b
mov r15, qword [rsp + 0x48]
lea r13, [r15 + 0x1330]
nop word [rax + rax]
mov rax, qword [rdi]
mov qword [rbp - 0x40], rax
lea rdx, [rbp - 0x40]
mov rcx, r13
call fcn.14004b5c0
lea rcx, [rax + rax*2]
mov rax, qword [r13 + 0x10]
lea rdx, [rax + rcx*8]
lea rax, [rdx + 8]
xor esi, esi
cmp rdx, qword [r13 + 0x18]
cmovne rsi, rax
test rsi, rsi
je 0x140127bc4
mov r9d, dword [rsi + 6]
movzx r11d, word [rsi + 4]
shl r11, 0x20
mov eax, dword [rsi]
or r11, rax
test r9, r9
je 0x140127aef
mov r15, qword [r15 + 8]
mov rax, r9
cqo
sub rax, rdx
sar rax, 1
mov r10, rax
mov r8, rax
add r8, r8
movsx rdx, word [r11 + r8*8 + 4]
shl rdx, 0x20
mov ecx, dword [r11 + r8*8]
or rdx, rcx
cmp rdx, r15
jge 0x140127ae2
lea r11, [r11 + r8*8]
add r11, 0x10
mov rax, 0xffffffffffffffff
sub rax, r10
add r9, rax
jmp 0x140127ae5
mov r9, r10
test r9, r9
jg 0x140127aa1
mov r15, qword [rsp + 0x48]
movzx r8d, word [rsi + 4]
shl r8, 0x20
mov eax, dword [rsi]
or r8, rax
mov eax, dword [rsi + 6]
shl rax, 4
add r8, rax
cmp r11, r8
je 0x140127bc4
mov r10, r11
sub r8, r11
sar r8, 4
test r8, r8
jle 0x140127b64
mov rsi, qword [r15 + 0x10]
mov r9, r8
shr r9, 1
mov rdx, r9
add rdx, rdx
movsx rcx, word [r10 + rdx*8 + 4]
shl rcx, 0x20
mov eax, dword [r10 + rdx*8]
or rcx, rax
cmp rcx, rsi
jge 0x140127b5c
lea r10, [r10 + rdx*8]
add r10, 0x10
mov rax, 0xffffffffffffffff
sub rax, r9
add r8, rax
jmp 0x140127b5f
mov r8, r9
test r8, r8
jg 0x140127b23
sub r10, r11
sar r10, 4
mov rax, qword [rdi]
mov qword [rbp - 0x70], rax
mov dword [rbp - 0x68], 0
mov dword [rbp - 0x64], r10d
xor eax, eax
mov qword [rbp - 0x60], rax
movzx edx, word [rbp + 0x454]
shl rdx, 0x20
mov eax, dword [rbp + 0x450]
or rdx, rax
mov eax, r14d
lea rcx, [rax + rax*2]
vmovups xmm0, xmmword [rbp - 0x70]
vmovups xmmword [rdx + rcx*8], xmm0
vmovsd xmm1, qword [rbp - 0x60]
vmovsd qword [rdx + rcx*8 + 0x10], xmm1
mov r14d, dword [rbp + 0x456]
inc r14d
mov dword [rbp + 0x456], r14d
inc rbx
add rdi, 0x90
mov rax, qword [rbx]
test rax, rax
jne 0x140127bf3
nop word [rax + rax]
add rbx, 8
add rdi, 0x480
mov rax, qword [rbx]
test rax, rax
je 0x140127be0
bsf rcx, rax
mov dword [rsp + 0x70], ecx
mov eax, 0x40
cmovne eax, ecx
cdq
and edx, 7
add eax, edx
sar eax, 3
movsxd rcx, eax
add rbx, rcx
lea rax, [rcx + rcx*8]
shl rax, 4
add rdi, rax
cmp rdi, r12
jne 0x140127a50
mov rdi, qword [rsp + 0x48]
mov esi, 1
mov r9d, dword [rdi + 0x2fb0]
mov r8, qword [rbp + 0x50]
lea rdx, [rbp + 0x450]
mov rcx, rdi
call fcn.140117a70
nop
movzx edx, byte [rbp + 0x45a]
movzx eax, dl
and al, 0x7f
cmp al, 0x7f
je 0x140127ca2
movzx ecx, word [rbp + 0x454]
shl rcx, 0x20
mov eax, dword [rbp + 0x450]
or rcx, rax
je 0x140127ca2
mov eax, edx
and eax, 0x7f
shlx ecx, esi, eax
imul rax, rcx, 0xffffffffffffffe8
lock add qword [0x141443c50], rax
movzx ecx, word [rbp + 0x454]
shl rcx, 0x20
mov eax, dword [rbp + 0x450]
or rcx, rax
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
nop
jmp 0x140129ccd
mov r8, qword [r15 + 0x18]
test rax, rax
jne 0x140127cb5
xor r10d, r10d
jmp 0x140127d0d
mov r10, r8
mov r8, qword [r15 + 0x10]
mov rax, qword [r10]
test rax, rax
jne 0x140127ce3
nop dword [rax]
nop dword [rax + rax]
add r10, 8
add r8, 0x480
mov rax, qword [r10]
test rax, rax
je 0x140127cd0
bsf rcx, rax
mov dword [rsp + 0x70], ecx
mov eax, 0x40
cmovne eax, ecx
cdq
and edx, 7
add eax, edx
sar eax, 3
movsxd rcx, eax
add r10, rcx
lea rax, [rcx + rcx*8]
shl rax, 4
add r8, rax
mov r9, qword [r15 + 0x18]
cmp r8, r9
je 0x140127c30
nop word [rax + rax]
mov rax, qword [r8]
mov qword [rbp - 0x70], rax
mov eax, dword [r8 + 8]
mov dword [rbp - 0x68], eax
mov eax, dword [r8 + 0xc]
mov dword [rbp - 0x64], eax
xor eax, eax
mov qword [rbp - 0x60], rax
movzx edx, word [rbp + 0x454]
shl rdx, 0x20
mov eax, dword [rbp + 0x450]
or rdx, rax
mov eax, r14d
lea rcx, [rax + rax*2]
vmovups xmm0, xmmword [rbp - 0x70]
vmovups xmmword [rdx + rcx*8], xmm0
vmovsd xmm1, qword [rbp - 0x60]
vmovsd qword [rdx + rcx*8 + 0x10], xmm1
mov r14d, dword [rbp + 0x456]
inc r14d
mov dword [rbp + 0x456], r14d
inc r10
add r8, 0x90
mov rax, qword [r10]
test rax, rax
jne 0x140127da3
nop
add r10, 8
add r8, 0x480
mov rax, qword [r10]
test rax, rax
je 0x140127d90
bsf rcx, rax
mov dword [rsp + 0x70], ecx
mov eax, 0x40
cmovne eax, ecx
cdq
and edx, 7
add eax, edx
sar eax, 3
movsxd rcx, eax
add r10, rcx
lea rax, [rcx + rcx*8]
shl rax, 4
add r8, rax
cmp r8, r9
jne 0x140127d20
jmp 0x140127c30
cmp qword [r15 + 0x20], 0
jne 0x140127dea
mov rdi, qword [r15 + 0x18]
xor esi, esi
jmp 0x140127e3d
mov rdi, qword [r15 + 0x10]
mov rsi, qword [r15 + 0x18]
mov rax, qword [rsi]
test rax, rax
jne 0x140127e13
nop word [rax + rax]
add rsi, 8
add rdi, 0x480
mov rax, qword [rsi]
test rax, rax
je 0x140127e00
bsf rcx, rax
mov dword [rsp + 0x70], ecx
mov eax, 0x40
cmovne eax, ecx
cdq
and edx, 7
add eax, edx
sar eax, 3
movsxd rcx, eax
add rsi, rcx
lea rax, [rcx + rcx*8]
shl rax, 4
add rdi, rax
mov r12, qword [r15 + 0x18]
mov qword [rsp + 0x78], r12
cmp rdi, r12
je 0x140127c26
nop
mov rdx, rdi
mov rcx, r8
call fcn.1400cb460
shl rax, 5
mov r8, qword [rsp + 0x68]
mov r13, qword [r8 + 0x10]
add r13, rax
cmp r13, qword [r8 + 0x18]
je 0x1401283ed
mov dword [rsp + 0x40], 0
movzx eax, word [r13 + 8]
mov word [rsp + 0x40], ax
movzx eax, byte [r13 + 0xa]
mov byte [rsp + 0x42], al
mov r9, qword [rsp + 0x48]
movzx edx, word [r9 + 0xdec]
shl rdx, 0x20
mov eax, dword [r9 + 0xde8]
or rdx, rax
mov eax, dword [rsp + 0x40]
dec eax
mov r8, qword [rdx + rax*8]
mov dword [rsp + 0x40], 0
movzx eax, word [r13 + 0x12]
mov word [rsp + 0x40], ax
movzx eax, byte [r13 + 0x14]
mov byte [rsp + 0x42], al
mov eax, dword [rsp + 0x40]
dec eax
mov r12, qword [rdx + rax*8]
mov qword [rsp + 0x60], r12
cmp byte [r9 + 0x2fce], 0
jne 0x140127eef
cmp qword [rdi], 0
jl 0x140127f68
movsxd rax, dword [r9 + 0x2cc8]
test eax, eax
je 0x1401280ca
lea r15, [0x1413a1907]
test r8, r8
cmovne r15, r8
mov rbx, qword [r9 + 0x2cd0]
mov r12, rax
shl r12, 4
add r12, rbx
cmp rbx, r12
je 0x1401280ab
nop word [rax + rax]
mov r9, qword [rbx + 8]
mov r8, qword [rbx]
cmp r8, r9
je 0x140128099
mov rcx, r15
cmp byte [r8], 0x2d
jne 0x14012808f
inc r8
call fcn.1401e1510
test rax, rax
je 0x140128099
mov r9, qword [rsp + 0x48]
mov r12, qword [rsp + 0x60]
movzx ecx, byte [r13 + 0x1f]
shl ecx, 0x10
movzx eax, word [r13 + 0x1d]
or ecx, eax
jne 0x1401283e3
lea rcx, [r9 + 0x150]
mov rdx, qword [rdi]
call fcn.140184600
mov rbx, rax
mov qword [rbp - 0x40], rax
test rax, rax
je 0x14012807e
lea rdx, [rbp - 0x40]
mov rcx, qword [rsp + 0x68]
call fcn.1400cb460
shl rax, 5
mov r8, qword [rsp + 0x68]
mov rdx, qword [r8 + 0x10]
add rdx, rax
cmp rdx, qword [r8 + 0x18]
je 0x140128083
mov dword [rsp + 0x40], 0
movzx eax, word [rdx + 8]
mov word [rsp + 0x40], ax
movzx eax, byte [rdx + 0xa]
mov byte [rsp + 0x42], al
mov r9, qword [rsp + 0x48]
movzx edx, word [r9 + 0xdec]
shl rdx, 0x20
mov eax, dword [r9 + 0xde8]
or rdx, rax
mov eax, dword [rsp + 0x40]
dec eax
mov r8, qword [rdx + rax*8]
cmp byte [r9 + 0x2fce], 0
jne 0x140128011
test rbx, rbx
js 0x14012807e
movsxd rax, dword [r9 + 0x2cc8]
test eax, eax
je 0x140128188
lea r14, [0x1413a1907]
test r8, r8
cmovne r14, r8
mov rbx, qword [r9 + 0x2cd0]
mov r15, rax
shl r15, 4
add r15, rbx
cmp rbx, r15
je 0x140128173
nop dword [rax + rax]
mov r9, qword [rbx + 8]
mov r8, qword [rbx]
cmp r8, r9
je 0x140128161
mov rcx, r14
cmp byte [r8], 0x2d
jne 0x140128157
inc r8
call fcn.1401e1510
test rax, rax
je 0x140128161
mov r8, qword [rsp + 0x68]
mov r14d, dword [rbp + 0x456]
jmp 0x1401283e8
call fcn.1401e1510
test rax, rax
jne 0x1401280c0
add rbx, 0x10
cmp rbx, r12
jne 0x140127f30
mov r9, qword [rsp + 0x48]
mov r12, qword [rsp + 0x60]
cmp dword [r9 + 0x2cd8], 0
jne 0x140127f68
jmp 0x1401280ca
mov r12, qword [rsp + 0x60]
mov r9, qword [rsp + 0x48]
movsxd rax, dword [r9 + 0x2de0]
test eax, eax
je 0x14012822a
lea r15, [0x1413a1907]
test r12, r12
cmovne r15, r12
mov rbx, qword [r9 + 0x2de8]
mov r12, rax
shl r12, 4
add r12, rbx
cmp rbx, r12
je 0x140128144
nop dword [rax]
mov r9, qword [rbx + 8]
mov r8, qword [rbx]
cmp r8, r9
je 0x140128136
mov rcx, r15
cmp byte [r8], 0x2d
jne 0x140128128
inc r8
call fcn.1401e1510
test rax, rax
jne 0x140127f5e
jmp 0x140128136
call fcn.1401e1510
test rax, rax
jne 0x140128225
add rbx, 0x10
cmp rbx, r12
jne 0x140128100
mov r9, qword [rsp + 0x48]
cmp dword [r9 + 0x2df0], 0
je 0x14012822a
jmp 0x140127f63
call fcn.1401e1510
test rax, rax
jne 0x140128183
add rbx, 0x10
cmp rbx, r15
jne 0x140128050
mov r9, qword [rsp + 0x48]
cmp dword [r9 + 0x2cd8], 0
jne 0x14012807e
jmp 0x140128188
mov r9, qword [rsp + 0x48]
movsxd rax, dword [r9 + 0x2de0]
test eax, eax
je 0x14012821c
lea r14, [0x1413a1907]
test r12, r12
cmovne r14, r12
mov rbx, qword [r9 + 0x2de8]
mov r15, rax
shl r15, 4
add r15, rbx
cmp rbx, r15
je 0x140128200
nop dword [rax + rax]
mov r9, qword [rbx + 8]
mov r8, qword [rbx]
cmp r8, r9
je 0x1401281f2
mov rcx, r14
cmp byte [r8], 0x2d
jne 0x1401281e8
inc r8
call fcn.1401e1510
test rax, rax
jne 0x14012807e
jmp 0x1401281f2
call fcn.1401e1510
test rax, rax
jne 0x140128217
add rbx, 0x10
cmp rbx, r15
jne 0x1401281c0
mov r9, qword [rsp + 0x48]
cmp dword [r9 + 0x2df0], 0
jne 0x14012807e
mov r14d, dword [rbp + 0x456]
jmp 0x14012822a
mov r9, qword [rsp + 0x48]
mov r14d, dword [rbp + 0x456]
jmp 0x14012822a
mov r9, qword [rsp + 0x48]
mov rax, qword [rdi]
cmp byte [r9 + 0x18], 0
je 0x14012838c
mov qword [rbp - 0x40], rax
lea rbx, [r9 + 0x1330]
lea rdx, [rbp - 0x40]
mov rcx, rbx
call fcn.14004b5c0
lea rcx, [rax + rax*2]
mov rax, qword [rbx + 0x10]
lea rdx, [rax + rcx*8]
lea rax, [rdx + 8]
xor r15d, r15d
cmp rdx, qword [rbx + 0x18]
cmovne r15, rax
test r15, r15
je 0x1401283e3
mov r9d, dword [r15 + 6]
movzx r11d, word [r15 + 4]
shl r11, 0x20
mov eax, dword [r15]
or r11, rax
mov r12, qword [rsp + 0x48]
test r9, r9
je 0x1401282e9
mov rbx, qword [r12 + 8]
nop word [rax + rax]
mov rax, r9
cqo
sub rax, rdx
sar rax, 1
mov r10, rax
mov r8, rax
add r8, r8
movsx rdx, word [r11 + r8*8 + 4]
shl rdx, 0x20
mov ecx, dword [r11 + r8*8]
or rdx, rcx
cmp rdx, rbx
jge 0x1401282e1
lea r11, [r11 + r8*8]
add r11, 0x10
mov rax, 0xffffffffffffffff
sub rax, r10
add r9, rax
jmp 0x1401282e4
mov r9, r10
test r9, r9
jg 0x1401282a0
movzx r8d, word [r15 + 4]
shl r8, 0x20
mov eax, dword [r15]
or r8, rax
mov eax, dword [r15 + 6]
shl rax, 4
add r8, rax
cmp r11, r8
je 0x1401283e3
mov r10, r11
sub r8, r11
sar r8, 4
test r8, r8
jle 0x140128361
mov rbx, qword [r12 + 0x10]
mov r9, r8
shr r9, 1
mov rdx, r9
add rdx, rdx
movsx rcx, word [r10 + rdx*8 + 4]
shl rcx, 0x20
mov eax, dword [r10 + rdx*8]
or rcx, rax
cmp rcx, rbx
jge 0x140128359
lea r10, [r10 + rdx*8]
add r10, 0x10
mov rax, 0xffffffffffffffff
sub rax, r9
add r8, rax
jmp 0x14012835c
mov r8, r9
test r8, r8
jg 0x140128320
sub r10, r11
sar r10, 4
mov rax, qword [rdi]
mov qword [rbp - 0x70], rax
mov dword [rbp - 0x68], 0
mov dword [rbp - 0x64], r10d
xor eax, eax
mov qword [rbp - 0x60], rax
vmovups xmm0, xmmword [rbp - 0x70]
vmovsd xmm1, qword [rbp - 0x60]
jmp 0x1401283ac
mov qword [rbp - 0x58], rax
mov eax, dword [rdi + 8]
mov dword [rbp - 0x50], eax
mov eax, dword [rdi + 0xc]
mov dword [rbp - 0x4c], eax
xor eax, eax
mov qword [rbp - 0x48], rax
vmovups xmm0, xmmword [rbp - 0x58]
vmovsd xmm1, qword [rbp - 0x48]
movzx edx, word [rbp + 0x454]
mov eax, dword [rbp + 0x450]
shl rdx, 0x20
or rdx, rax
mov eax, r14d
lea rcx, [rax + rax*2]
vmovups xmmword [rdx + rcx*8], xmm0
vmovsd qword [rdx + rcx*8 + 0x10], xmm1
mov r14d, dword [rbp + 0x456]
inc r14d
mov dword [rbp + 0x456], r14d
mov r8, qword [rsp + 0x68]
mov r12, qword [rsp + 0x78]
inc rsi
add rdi, 0x90
mov rax, qword [rsi]
test rax, rax
jne 0x140128413
nop
add rsi, 8
add rdi, 0x480
mov rax, qword [rsi]
test rax, rax
je 0x140128400
bsf rcx, rax
mov dword [rsp + 0x70], ecx
mov eax, 0x40
cmovne eax, ecx
cdq
and edx, 7
add eax, edx
sar eax, 3
movsxd rdx, eax
add rsi, rdx
lea rax, [rdx + rdx*8]
shl rax, 4
add rdi, rax
cmp rdi, r12
jne 0x140127e50
jmp 0x140127c26
mov rdi, qword [rsp + 0x48]
jmp 0x140127c30
xor edx, edx
cmp dword [rbp + 0x446], edx
jne 0x140128473
mov r8d, esi
lea rcx, [0x1413cc0c0]
call fcn.140215e20
jmp 0x140129ccd
vmovss dword [rbp + 0x1a0], xmm12
vmovss dword [rbp + 0x1a4], xmm12
mov rcx, qword [0x141443c60]
mov rax, qword [rcx + 0x4150]
mov byte [rax + 0xf5], 1
mov rbx, qword [rcx + 0x4150]
movsxd r8, dword [rbx + 0x130]
mov rax, qword [rbx + 0x138]
mov r8d, dword [rax + r8*4 - 4]
lea rcx, [0x1413cc378]
call fcn.1401e1830
mov edi, eax
mov rcx, qword [rbx]
cmp dword [rcx + 0x419c], eax
jne 0x1401284de
lea r8, [0x1413cc378]
mov edx, 0xb
mov ecx, eax
call fcn.14020a960
mov dword [rsp + 0x20], r14d
xor r9d, r9d
lea r8, [rbp + 0x1a0]
mov edx, edi
lea rcx, [0x1413cc378]
call fcn.1401eb850
vmovss dword [rbp + 0x1a8], xmm12
vmovss dword [rbp + 0x1ac], xmm12
mov r13, qword [rsp + 0x48]
mov eax, dword [r13 + 0x2fb8]
neg eax
sbb ebx, ebx
lea rcx, [0x1413cc378]
call fcn.1401f39a0
vmovss dword [rsp + 0x28], xmm12
lea rdx, [rbp + 0x1a8]
mov qword [rsp + 0x20], rdx
mov r9d, 0x200020f
lea r8d, [rbx + 6]
mov edx, eax
lea rcx, [0x1413cc378]
call fcn.14020c3b0
test al, al
je 0x140129cc8
call fcn.14020f940
mov rcx, qword [0x141443c60]
mov rdi, qword [rcx + 0x4fe8]
movsx rdx, word [rdi + 0x206]
cmp edx, dword [rdi + 0x6c]
jge 0x14012863f
imul rbx, rdx, 0x70
add rbx, qword [rdi + 0x18]
inc dx
mov word [rdi + 0x206], dx
mov r8d, 0x80
mov rdx, rbx
mov rcx, rdi
call fcn.14020d650
mov dword [rbx + 0x30], r14d
mov eax, dword [rbx]
mov dword [rbx + 0x1c], r14d
cmp byte [rdi + 0x238], 0
je 0x1401285ff
vcomiss xmm12, dword [rbx + 0x10]
jbe 0x1401285cc
vcomiss xmm12, dword [rbx + 0x18]
jbe 0x1401285cc
test al, 8
je 0x1401285cc
mov dword [rbx + 0x18], 0xbf800000
test al, 2
je 0x1401285dc
test byte [rdi + 0x60], 4
jne 0x1401285dc
mov word [rbx + 0x63], 0
test al, 4
je 0x1401285ff
test byte [rdi + 0x60], 8
jne 0x1401285ff
mov word [rbx + 0x5a], r14w
bt eax, 0xf
setb cl
inc cl
movzx eax, byte [rbx + 0x6d]
and al, 0xfc
or cl, al
mov byte [rbx + 0x6d], cl
mov rsi, 0xffffffffffffffff
mov word [rbx + 0x50], si
lea rcx, [rdi + 0x190]
mov eax, dword [rcx]
lea r8d, [rax - 1]
test eax, eax
cmove r8w, r14w
mov word [rbx + 0x50], r8w
lea r8, [0x1413c98c1]
lea rdx, [0x1413c98bc]
call fcn.1401e2840
mov rcx, qword [0x141443c60]
jmp 0x140128646
mov rsi, 0xffffffffffffffff
mov rdi, qword [rcx + 0x4fe8]
movsx rdx, word [rdi + 0x206]
cmp edx, dword [rdi + 0x6c]
jge 0x140128712
imul rbx, rdx, 0x70
add rbx, qword [rdi + 0x18]
inc dx
mov word [rdi + 0x206], dx
xor r8d, r8d
mov rdx, rbx
mov rcx, rdi
call fcn.14020d650
mov dword [rbx + 0x30], r14d
mov eax, dword [rbx]
mov dword [rbx + 0x1c], r14d
cmp byte [rdi + 0x238], 0
je 0x1401286dd
vcomiss xmm12, dword [rbx + 0x10]
jbe 0x1401286aa
vcomiss xmm12, dword [rbx + 0x18]
jbe 0x1401286aa
test al, 8
je 0x1401286aa
mov dword [rbx + 0x18], 0xbf800000
test al, 2
je 0x1401286ba
test byte [rdi + 0x60], 4
jne 0x1401286ba
mov word [rbx + 0x63], 0
test al, 4
je 0x1401286dd
test byte [rdi + 0x60], 8
jne 0x1401286dd
mov word [rbx + 0x5a], r14w
bt eax, 0xf
setb cl
inc cl
movzx eax, byte [rbx + 0x6d]
and al, 0xfc
or cl, al
mov byte [rbx + 0x6d], cl
mov word [rbx + 0x50], si
lea rcx, [rdi + 0x190]
mov eax, dword [rcx]
lea edx, [rax - 1]
test eax, eax
cmove dx, r14w
mov word [rbx + 0x50], dx
lea r8, [0x1413c8649]
lea rdx, [0x1413c8640]
call fcn.1401e2840
mov rcx, qword [0x141443c60]
mov rdi, qword [rcx + 0x4fe8]
movsx rdx, word [rdi + 0x206]
cmp edx, dword [rdi + 0x6c]
jge 0x1401287e1
imul rbx, rdx, 0x70
add rbx, qword [rdi + 0x18]
inc dx
mov word [rdi + 0x206], dx
mov r8d, 0x8034
mov rdx, rbx
mov rcx, rdi
call fcn.14020d650
mov dword [rbx + 0x30], r14d
mov eax, dword [rbx]
mov dword [rbx + 0x1c], r14d
cmp byte [rdi + 0x238], 0
je 0x1401287ac
vcomiss xmm12, dword [rbx + 0x10]
jbe 0x140128779
vcomiss xmm12, dword [rbx + 0x18]
jbe 0x140128779
test al, 8
je 0x140128779
mov dword [rbx + 0x18], 0xbf800000
test al, 2
je 0x140128789
test byte [rdi + 0x60], 4
jne 0x140128789
mov word [rbx + 0x63], 0
test al, 4
je 0x1401287ac
test byte [rdi + 0x60], 8
jne 0x1401287ac
mov word [rbx + 0x5a], r14w
bt eax, 0xf
setb cl
inc cl
movzx eax, byte [rbx + 0x6d]
and al, 0xfc
or cl, al
mov byte [rbx + 0x6d], cl
mov word [rbx + 0x50], si
lea rcx, [rdi + 0x190]
mov eax, dword [rcx]
lea edx, [rax - 1]
test eax, eax
cmove dx, r14w
mov word [rbx + 0x50], dx
lea r8, [0x1413c93d3]
lea rdx, [0x1413c93c8]
call fcn.1401e2840
mov rcx, qword [0x141443c60]
mov rdi, qword [rcx + 0x4fe8]
movsx rdx, word [rdi + 0x206]
cmp edx, dword [rdi + 0x6c]
jge 0x1401288b0
imul rbx, rdx, 0x70
add rbx, qword [rdi + 0x18]
inc dx
mov word [rdi + 0x206], dx
mov r8d, 0x8030
mov rdx, rbx
mov rcx, rdi
call fcn.14020d650
mov dword [rbx + 0x30], r14d
mov eax, dword [rbx]
mov dword [rbx + 0x1c], r14d
cmp byte [rdi + 0x238], 0
je 0x14012887b
vcomiss xmm12, dword [rbx + 0x10]
jbe 0x140128848
vcomiss xmm12, dword [rbx + 0x18]
jbe 0x140128848
test al, 8
je 0x140128848
mov dword [rbx + 0x18], 0xbf800000
test al, 2
je 0x140128858
test byte [rdi + 0x60], 4
jne 0x140128858
mov word [rbx + 0x63], 0
test al, 4
je 0x14012887b
test byte [rdi + 0x60], 8
jne 0x14012887b
mov word [rbx + 0x5a], r14w
bt eax, 0xf
setb cl
inc cl
movzx eax, byte [rbx + 0x6d]
and al, 0xfc
or cl, al
mov byte [rbx + 0x6d], cl
mov word [rbx + 0x50], si
lea rcx, [rdi + 0x190]
mov eax, dword [rcx]
lea edx, [rax - 1]
test eax, eax
cmove dx, r14w
mov word [rbx + 0x50], dx
lea r8, [0x1413cc38f]
lea rdx, [0x1413cc388]
call fcn.1401e2840
mov rcx, qword [0x141443c60]
mov rdi, qword [rcx + 0x4fe8]
movsx rdx, word [rdi + 0x206]
cmp edx, dword [rdi + 0x6c]
jge 0x14012897f
imul rbx, rdx, 0x70
add rbx, qword [rdi + 0x18]
inc dx
mov word [rdi + 0x206], dx
mov r8d, 0x8030
mov rdx, rbx
mov rcx, rdi
call fcn.14020d650
mov dword [rbx + 0x30], r14d
mov eax, dword [rbx]
mov dword [rbx + 0x1c], r14d
cmp byte [rdi + 0x238], 0
je 0x14012894a
vcomiss xmm12, dword [rbx + 0x10]
jbe 0x140128917
vcomiss xmm12, dword [rbx + 0x18]
jbe 0x140128917
test al, 8
je 0x140128917
mov dword [rbx + 0x18], 0xbf800000
test al, 2
je 0x140128927
test byte [rdi + 0x60], 4
jne 0x140128927
mov word [rbx + 0x63], 0
test al, 4
je 0x14012894a
test byte [rdi + 0x60], 8
jne 0x14012894a
mov word [rbx + 0x5a], r14w
bt eax, 0xf
setb cl
inc cl
movzx eax, byte [rbx + 0x6d]
and al, 0xfc
or cl, al
mov byte [rbx + 0x6d], cl
mov word [rbx + 0x50], si
lea rcx, [rdi + 0x190]
mov eax, dword [rcx]
lea edx, [rax - 1]
test eax, eax
cmove dx, r14w
mov word [rbx + 0x50], dx
lea r8, [0x1413ca969]
lea rdx, [0x1413ca964]
call fcn.1401e2840
mov rcx, qword [0x141443c60]
cmp dword [r13 + 0x2fb8], 0
jne 0x140128a55
mov rdi, qword [rcx + 0x4fe8]
movsx rcx, word [rdi + 0x206]
cmp ecx, dword [rdi + 0x6c]
jge 0x140128a55
imul rbx, rcx, 0x70
add rbx, qword [rdi + 0x18]
inc cx
mov word [rdi + 0x206], cx
mov r8d, 0x8034
mov rdx, rbx
mov rcx, rdi
call fcn.14020d650
mov dword [rbx + 0x30], r14d
mov eax, dword [rbx]
mov dword [rbx + 0x1c], r14d
cmp byte [rdi + 0x238], 0
je 0x140128a27
vcomiss xmm12, dword [rbx + 0x10]
jbe 0x1401289f4
vcomiss xmm12, dword [rbx + 0x18]
jbe 0x1401289f4
test al, 8
je 0x1401289f4
mov dword [rbx + 0x18], 0xbf800000
test al, 2
je 0x140128a04
test byte [rdi + 0x60], 4
jne 0x140128a04
mov word [rbx + 0x63], 0
test al, 4
je 0x140128a27
test byte [rdi + 0x60], 8
jne 0x140128a27
mov word [rbx + 0x5a], r14w
bt eax, 0xf
setb cl
inc cl
movzx eax, byte [rbx + 0x6d]
and al, 0xfc
or cl, al
mov byte [rbx + 0x6d], cl
mov word [rbx + 0x50], si
lea rcx, [rdi + 0x190]
mov eax, dword [rcx]
lea edx, [rax - 1]
test eax, eax
cmove dx, r14w
mov word [rbx + 0x50], dx
lea r8, [0x1413cbe40]
lea rdx, [0x1413cbe3c]
call fcn.1401e2840
call fcn.1402122f0
mov rax, qword [0x141443c60]
mov rbx, qword [rax + 0x4fe8]
test byte [rbx + 4], 8
jne 0x140128a73
mov rdx, r14
jmp 0x140128a93
cmp byte [rbx + 0x236], 0
jne 0x140128a84
mov rcx, rbx
call fcn.14020d7f0
mov rcx, rbx
call fcn.1402120c0
lea rdx, [rbx + 0x1f0]
mov rdx, qword [rdx]
movsx rax, word [rdx + 4]
lea rbx, [0x140000000]
cmp eax, 5
ja case.default.0x140128ab5
mov ecx, dword [rbx + rax*4 + 0x129db8]
add rcx, rbx
jmp rcx
movzx r10d, word [rbp + 0x444]
mov eax, dword [rbp + 0x440]
shl r10, 0x20
or r10, rax
mov eax, dword [rbp + 0x446]
lea rcx, [rax + rax*2]
lea rcx, [rcx*8]
lea r11, [rcx + r10]
cmp byte [rdx + 8], 1
jne 0x140128b34
cmp r10, r11
je case.default.0x140128ab5
mov r9d, r14d
movabs rax, 0x2aaaaaaaaaaaaaab
imul rcx
sar rdx, 2
mov rax, rdx
shr rax, 0x3f
add rdx, rax
sar rdx, 1
je 0x140128b1c
inc r9d
sar rdx, 1
jne 0x140128b14
mov byte [rsp + 0x20], 1
mov r8, r13
mov rdx, r11
mov rcx, r10
call fcn.14012a860
jmp case.default.0x140128ab5
cmp r10, r11
je case.default.0x140128ab5
mov r9d, r14d
movabs rax, 0x2aaaaaaaaaaaaaab
imul rcx
sar rdx, 2
mov rax, rdx
shr rax, 0x3f
add rdx, rax
sar rdx, 1
je 0x140128b68
inc r9d
sar rdx, 1
jne 0x140128b60
mov byte [rsp + 0x20], 1
mov r8, r13
mov rdx, r11
mov rcx, r10
call fcn.14012c010
jmp case.default.0x140128ab5
movzx r10d, word [rbp + 0x444]
mov eax, dword [rbp + 0x440]
shl r10, 0x20
or r10, rax
mov eax, dword [rbp + 0x446]
lea rcx, [rax + rax*2]
lea rcx, [rcx*8]
lea r11, [rcx + r10]
cmp byte [rdx + 8], 1
jne 0x140128c00
cmp r10, r11
je case.default.0x140128ab5
mov r9d, r14d
movabs rax, 0x2aaaaaaaaaaaaaab
imul rcx
sar rdx, 2
mov rax, rdx
shr rax, 0x3f
add rdx, rax
sar rdx, 1
je 0x140128be8
nop dword [rax]
inc r9d
sar rdx, 1
jne 0x140128be0
mov byte [rsp + 0x20], 1
mov r8, r13
mov rdx, r11
mov rcx, r10
call fcn.14012d7b0
jmp case.default.0x140128ab5
cmp r10, r11
je case.default.0x140128ab5
mov r9d, r14d
movabs rax, 0x2aaaaaaaaaaaaaab
imul rcx
sar rdx, 2
mov rax, rdx
shr rax, 0x3f
add rdx, rax
sar rdx, 1
je 0x140128c38
nop dword [rax]
inc r9d
sar rdx, 1
jne 0x140128c30
mov byte [rsp + 0x20], 1
mov r8, r13
mov rdx, r11
mov rcx, r10
call fcn.14012fc50
jmp case.default.0x140128ab5
movzx r10d, word [rbp + 0x444]
mov eax, dword [rbp + 0x440]
shl r10, 0x20
or r10, rax
mov eax, dword [rbp + 0x446]
lea rcx, [rax + rax*2]
lea rcx, [rcx*8]
lea r11, [rcx + r10]
cmp byte [rdx + 8], 1
jne 0x140128cd3
cmp r10, r11
je case.default.0x140128ab5
mov r9d, r14d
movabs rax, 0x2aaaaaaaaaaaaaab
imul rcx
sar rdx, 2
mov rax, rdx
shr rax, 0x3f
add rdx, rax
sar rdx, 1
je 0x140128cb8
nop dword [rax]
inc r9d
sar rdx, 1
jne 0x140128cb0
mov byte [rsp + 0x20], 1
movzx r8d, byte [rsp + 0x50]
mov rdx, r11
mov rcx, r10
call fcn.1401320e0
jmp case.default.0x140128ab5
cmp r10, r11
je case.default.0x140128ab5
mov r9d, r14d
movabs rax, 0x2aaaaaaaaaaaaaab
imul rcx
sar rdx, 2
mov rax, rdx
shr rax, 0x3f
add rdx, rax
sar rdx, 1
je 0x140128d08
nop
inc r9d
sar rdx, 1
jne 0x140128d00
mov byte [rsp + 0x20], 1
movzx r8d, byte [rsp + 0x50]
mov rdx, r11
mov rcx, r10
call fcn.140133310
jmp case.default.0x140128ab5
movzx r10d, word [rbp + 0x444]
mov eax, dword [rbp + 0x440]
shl r10, 0x20
or r10, rax
mov eax, dword [rbp + 0x446]
lea rcx, [rax + rax*2]
lea rcx, [rcx*8]
lea r11, [rcx + r10]
cmp byte [rdx + 8], 1
jne 0x140128da3
cmp r10, r11
je case.default.0x140128ab5
mov r9d, r14d
movabs rax, 0x2aaaaaaaaaaaaaab
imul rcx
sar rdx, 2
mov rax, rdx
shr rax, 0x3f
add rdx, rax
sar rdx, 1
je 0x140128d88
inc r9d
sar rdx, 1
jne 0x140128d80
mov byte [rsp + 0x20], 1
movzx r8d, byte [rsp + 0x50]
mov rdx, r11
mov rcx, r10
call fcn.140134540
jmp case.default.0x140128ab5
cmp r10, r11
je case.default.0x140128ab5
mov r9d, r14d
movabs rax, 0x2aaaaaaaaaaaaaab
imul rcx
sar rdx, 2
mov rax, rdx
shr rax, 0x3f
add rdx, rax
sar rdx, 1
je 0x140128dd8
nop
inc r9d
sar rdx, 1
jne 0x140128dd0
mov byte [rsp + 0x20], 1
movzx r8d, byte [rsp + 0x50]
mov rdx, r11
mov rcx, r10
call fcn.140135710
jmp case.default.0x140128ab5
movzx r10d, word [rbp + 0x444]
mov eax, dword [rbp + 0x440]
shl r10, 0x20
or r10, rax
mov eax, dword [rbp + 0x446]
lea rcx, [rax + rax*2]
lea rcx, [rcx*8]
lea r11, [rcx + r10]
cmp byte [rdx + 8], 1
jne 0x140128e73
cmp r10, r11
je case.default.0x140128ab5
mov r9d, r14d
movabs rax, 0x2aaaaaaaaaaaaaab
imul rcx
sar rdx, 2
mov rax, rdx
shr rax, 0x3f
add rdx, rax
sar rdx, 1
je 0x140128e58
inc r9d
sar rdx, 1
jne 0x140128e50
mov byte [rsp + 0x20], 1
movzx r8d, byte [rsp + 0x50]
mov rdx, r11
mov rcx, r10
call fcn.140136900
jmp case.default.0x140128ab5
cmp r10, r11
je case.default.0x140128ab5
mov r9d, r14d
movabs rax, 0x2aaaaaaaaaaaaaab
imul rcx
sar rdx, 2
mov rax, rdx
shr rax, 0x3f
add rdx, rax
sar rdx, 1
je 0x140128ea8
nop
inc r9d
sar rdx, 1
jne 0x140128ea0
mov byte [rsp + 0x20], 1
movzx r8d, byte [rsp + 0x50]
mov rdx, r11
mov rcx, r10
call fcn.140137e90
jmp case.default.0x140128ab5
movzx r10d, word [rbp + 0x444]
mov eax, dword [rbp + 0x440]
shl r10, 0x20
or r10, rax
mov eax, dword [rbp + 0x446]
lea rcx, [rax + rax*2]
lea rcx, [rcx*8]
lea r11, [rcx + r10]
cmp byte [rdx + 8], 1
jne 0x140128f40
cmp r10, r11
je case.default.0x140128ab5
mov r9d, r14d
movabs rax, 0x2aaaaaaaaaaaaaab
imul rcx
sar rdx, 2
mov rax, rdx
shr rax, 0x3f
add rdx, rax
sar rdx, 1
je 0x140128f28
inc r9d
sar rdx, 1
jne 0x140128f20
mov byte [rsp + 0x20], 1
movzx r8d, byte [rsp + 0x50]
mov rdx, r11
mov rcx, r10
call fcn.140139400
jmp case.default.0x140128ab5
cmp r10, r11
je case.default.0x140128ab5
mov r9d, r14d
movabs rax, 0x2aaaaaaaaaaaaaab
imul rcx
sar rdx, 2
mov rax, rdx
shr rax, 0x3f
add rdx, rax
sar rdx, 1
je 0x140128f70
inc r9d
sar rdx, 1
jne 0x140128f68
mov byte [rsp + 0x20], 1
movzx r8d, byte [rsp + 0x50]
mov rdx, r11
mov rcx, r10
call fcn.14013a5f0
lea rax, [rbx + 0x13c6df8]
mov qword [rbp + 0x330], rax
lea rcx, [rbp + 0x3b8]
call qword [sym.imp.MSVCP140.dll_protected:_void___cdecl_std::basic_ios_char__struct_std::char_traits_char__::constructor_void____ptr64]
nop
mov dword [rsp + 0x40], 4
xor r9d, r9d
xor r8d, r8d
lea rdx, [rbp + 0x338]
lea rcx, [rbp + 0x330]
call qword [sym.imp.MSVCP140.dll_public:_void___cdecl_std::basic_ostream_char__struct_std::char_traits_char__::constructor_class_std::basic_streambuf_char__struct_std::char_traits_char______ptr64__bool____ptr64]
nop
mov rax, qword [rbp + 0x330]
movsxd rcx, dword [rax + 4]
lea rbx, vtable.std::basic_ostringstream_char__struct_std::char_traits_char___class_std::allocator_char__.0
mov qword [rbp + rcx + 0x330], rbx
mov rax, qword [rbp + 0x330]
movsxd rcx, dword [rax + 4]
lea edx, [rcx - 0x88]
mov dword [rbp + rcx + 0x32c], edx
lea rcx, [rbp + 0x338]
call qword [sym.imp.MSVCP140.dll_protected:_void___cdecl_std::basic_streambuf_char__struct_std::char_traits_char__::constructor_void____ptr64]
lea rax, vtable.std::basic_stringbuf_char__struct_std::char_traits_char___class_std::allocator_char__.0
mov qword [rbp + 0x338], rax
mov qword [rbp + 0x3a0], r14
mov dword [rbp + 0x3a8], 4
test r15b, r15b
je 0x1401290b2
lea rdx, [0x1413cc41c]
lea rcx, [rbp + 0x330]
call fcn.140087110
mov rcx, rax
mov dl, 0x2c
call fcn.14012a210
mov rcx, rax
lea rdx, [0x1413cc410]
call fcn.140087110
mov rcx, rax
mov dl, 0x2c
call fcn.14012a210
mov rcx, rax
lea rdx, [0x1413cc400]
call fcn.140087110
mov rcx, rax
mov dl, 0x2c
call fcn.14012a210
mov rcx, rax
lea rdx, [0x1413cc3f0]
call fcn.140087110
mov rcx, rax
mov dl, 0x2c
call fcn.14012a210
mov rcx, rax
lea rdx, [0x1413cc390]
call fcn.140087110
mov rcx, rax
lea rdx, [0x14043633c]
call fcn.140087110
movzx esi, word [rbp + 0x444]
shl rsi, 0x20
mov eax, dword [rbp + 0x440]
or rsi, rax
mov qword [rbp + 0x50], rsi
mov eax, dword [rbp + 0x446]
lea rcx, [rax + rax*2]
lea rax, [rsi + rcx*8]
mov qword [rbp - 0x78], rax
cmp rsi, rax
je 0x140129af2
lea r14, [r13 + 0x150]
mov qword [rbp - 0x40], r14
vxorps xmm10, xmm10, xmm10
vcvtsi2sd xmm10, xmm10, r12
vmovss xmm7, dword [0x14140eb0c]
vmovss xmm8, dword [0x14140eac4]
vmovss xmm9, dword [0x14140ea60]
vmovsd xmm11, qword [0x14140e9f0]
nop word [rax + rax]
vmovaps xmm1, xmm12
xor ecx, ecx
call fcn.14020fa70
mov rax, qword [0x141443c60]
mov rbx, qword [rax + 0x4fe8]
test rbx, rbx
je 0x14012917d
cmp byte [rbx + 0x237], 0
je 0x140129167
mov ecx, dword [rbx + 0x74]
lea eax, [rcx + 1]
cmp eax, dword [rbx + 0x6c]
jge 0x140129167
cmp ecx, 0xffffffff
je 0x140129160
mov rcx, rbx
call fcn.1402106f0
mov edx, dword [rbx + 0x74]
inc edx
jmp 0x140129175
vmovaps xmm1, xmm12
xor ecx, ecx
call fcn.14020fa70
xor edx, edx
mov rcx, rbx
call fcn.140210520
movsx edx, word [rsi]
mov rax, qword [0x141443c60]
mov rbx, qword [rax + 0x4150]
mov rcx, rbx
call fcn.1401f34b0
mov edi, eax
add rbx, 0x130
mov ecx, dword [rbx + 4]
mov r8d, dword [rbx]
cmp r8d, ecx
jne 0x1401291d3
inc r8d
test ecx, ecx
je 0x1401291bc
mov eax, ecx
cdq
sub eax, edx
sar eax, 1
add eax, ecx
jmp 0x1401291c1
mov eax, 8
cmp eax, r8d
cmovg r8d, eax
mov edx, r8d
mov rcx, rbx
call fcn.1401deb40
movsxd rcx, dword [rbx]
mov rax, qword [rbx + 8]
mov dword [rax + rcx*4], edi
inc dword [rbx]
movzx edx, word [rsi]
mov rcx, r14
call fcn.140184c20
mov r13, rax
test byte [rax + 8], 2
mov rdx, rax
jne 0x1401291fa
lea rdx, [rax + 9]
movzx eax, byte [rdx + 8]
test al, 1
je 0x140129221
movzx ecx, word [r14 + 0xc9c]
shl rcx, 0x20
mov eax, dword [r14 + 0xc98]
or rcx, rax
mov rax, qword [rdx]
mov r15, qword [rcx + rax*8]
jmp 0x14012923c
test al, 2
je 0x140129235
mov rdx, qword [rdx]
mov rcx, r14
call fcn.140184990
mov r15, rax
jmp 0x14012923c
lea r15, [0x1413ca658]
mov qword [rsp + 0x60], r15
mov ebx, dword [r13 + 0x1f]
mov rdi, qword [rsp + 0x48]
test ebx, ebx
je 0x14012925f
cmp byte [rdi + 0x27bd], 0
jne 0x14012925f
or ebx, 0xff000000
jmp 0x14012927f
cmp byte [rdi + 0x27bc], 0
jne 0x14012926f
mov ebx, 0xffcc5555
jmp 0x14012927f
xor r8d, r8d
mov rdx, r13
mov rcx, rdi
call fcn.14014a5a0
mov ebx, eax
vmovss dword [rbp + 0x1b0], xmm12
vmovss dword [rbp + 0x1b4], xmm12
lea rdx, [rbp + 0x1b0]
mov ecx, 0xb
call fcn.1401e3960
vmovss dword [rbp + 0x1b8], xmm12
vmovss dword [rbp + 0x1bc], xmm12
movzx ecx, bl
vxorps xmm0, xmm0, xmm0
vcvtsi2ss xmm0, xmm0, rcx
vdivss xmm1, xmm0, xmm7
vmovss dword [rbp + 0x220], xmm1
mov eax, ebx
shr eax, 8
movzx eax, al
vxorps xmm0, xmm0, xmm0
vcvtsi2ss xmm0, xmm0, rax
vdivss xmm1, xmm0, xmm7
vmovss dword [rbp + 0x224], xmm1
shr ebx, 0x10
movzx eax, bl
vxorps xmm0, xmm0, xmm0
vcvtsi2ss xmm0, xmm0, rax
vdivss xmm1, xmm0, xmm7
vmovss dword [rbp + 0x228], xmm1
vmovss dword [rbp + 0x22c], xmm14
lea r9, [rbp + 0x1b8]
mov r8d, 0x240
lea rdx, [rbp + 0x220]
lea rcx, [0x1413c5570]
call fcn.140227880
mov ecx, 1
call fcn.1401e39f0
vmovaps xmm1, xmm13
vmovaps xmm0, xmm12
call fcn.1401f6d00
cmp dword [rdi + 0x2fb8], 0
jne 0x140129405
vmovss dword [rbp + 0x1c0], xmm12
vmovss dword [rbp + 0x1c4], xmm12
lea rbx, [rdi + 0x3340]
cmp byte [rbx], 0
je 0x14012938e
mov rdx, qword [rdi + 0x3348]
cmp rdx, qword [rdi + 0x3350]
je 0x14012938e
movsxd rcx, dword [rdi + 0x33ac]
movzx eax, word [rsi]
cmp word [rdx + rcx*2], ax
jne 0x14012938e
mov dl, 1
jmp 0x140129390
xor edx, edx
lea r9, [rbp + 0x1c0]
mov r8d, 2
mov rcx, r15
call fcn.14022a0e0
test al, al
je 0x140129415
movzx edi, word [rsi]
mov word [rsp + 0x50], di
mov byte [rbx], 1
mov byte [rbx + 0x560], 0
mov rcx, rbx
call fcn.1400c0fe0
lea rcx, [rbx + 8]
mov rdx, qword [rcx + 8]
cmp rdx, qword [rcx + 0x10]
je 0x1401293db
mov word [rdx], di
add qword [rcx + 8], 2
jmp 0x1401293e5
lea r8, [rsp + 0x50]
call fcn.1400cb650
lea rcx, [rbx + 0x78]
mov rdx, r15
sub rdx, rcx
nop
movzx eax, byte [rcx + rdx]
mov byte [rcx], al
lea rcx, [rcx + 1]
test al, al
jne 0x1401293f0
mov rdi, qword [rsp + 0x48]
jmp 0x140129415
xor edx, edx
mov r8d, 1
mov rcx, r15
call fcn.140215e20
mov rax, qword [0x141443c60]
mov rbx, qword [rax + 0x4fe8]
test rbx, rbx
je 0x140129466
cmp byte [rbx + 0x237], 0
je 0x140129450
mov ecx, dword [rbx + 0x74]
lea eax, [rcx + 1]
cmp eax, dword [rbx + 0x6c]
jge 0x140129450
cmp ecx, 0xffffffff
je 0x140129449
mov rcx, rbx
call fcn.1402106f0
mov edx, dword [rbx + 0x74]
inc edx
jmp 0x14012945e
vmovaps xmm1, xmm12
xor ecx, ecx
call fcn.14020fa70
xor edx, edx
mov rcx, rbx
call fcn.140210520
vmovaps xmm6, xmm12
movsx eax, word [rsi]
cmp byte [rdi + 0x307c], 0
je 0x1401294f2
cmp eax, dword [rdi + 0x3084]
jne 0x1401294f2
vmovss xmm6, dword [rdi + 0x3080]
vmulss xmm0, xmm6, xmm8
call sub.api_ms_win_crt_math_l1_1_0.dll_sinf
vmulss xmm1, xmm0, xmm9
vmulss xmm6, xmm1, xmm6
mov rcx, qword [0x141443c60]
mov rax, qword [rcx + 0x4150]
mov byte [rax + 0xf5], 1
mov rax, qword [rcx + 0x4150]
vucomiss xmm6, xmm12
jp 0x1401294c9
jne 0x1401294c9
vmovss xmm0, dword [rcx + 0x3a64]
jmp 0x1401294cd
vmovaps xmm0, xmm6
vaddss xmm0, xmm0, dword [rax + 0x184]
vmovss dword [rax + 0x184], xmm0
vaddss xmm0, xmm0, dword [rax + 0x58]
vaddss xmm1, xmm0, dword [rax + 0x188]
vmovss dword [rax + 0x140], xmm1
movzx eax, byte [r13 + 0x1a]
test al, 1
je 0x14012951b
movzx ecx, word [r14 + 0xc9c]
shl rcx, 0x20
mov eax, dword [r14 + 0xc98]
or rcx, rax
mov rax, qword [r13 + 0x12]
mov r12, qword [rcx + rax*8]
jmp 0x140129537
test al, 2
je 0x140129530
mov rdx, qword [r13 + 0x12]
mov rcx, r14
call fcn.140184990
mov r12, rax
jmp 0x140129537
lea r12, [0x1413ca658]
mov r9d, dword [r13 + 0x1b]
test r9d, r9d
jne 0x140129545
mov rbx, r12
jmp 0x140129585
movsxd rax, dword [0x1414476d0]
mov rbx, rax
shl rbx, 0xc
lea rcx, [0x14145c6e0]
add rbx, rcx
inc eax
and eax, 0x80000007
jge 0x14012956d
dec eax
or eax, 0xfffffff8
inc eax
mov dword [0x1414476d0], eax
mov r8, r12
lea rdx, [0x1413c5ce0]
mov rcx, rbx
call fcn.140005590
mov rdx, qword [0x141443c60]
add rdx, 0x3af8
xor ecx, ecx
call fcn.1401e3800
xor edx, edx
mov r8d, 1
mov rcx, rbx
call fcn.140215e20
mov r8, qword [0x141443c60]
movsxd rax, dword [r8 + 0x4c00]
cmp eax, 1
jl 0x1401295e7
lea rdx, [rax + rax*4]
mov rcx, qword [r8 + 0x4c08]
movsxd rax, dword [rcx + rdx*4 - 0x14]
add rax, rax
vmovups xmm0, xmmword [rcx + rdx*4 - 0x10]
vmovups xmmword [r8 + rax*8 + 0x3ae8], xmm0
dec dword [r8 + 0x4c00]
xor ecx, ecx
call fcn.1401e7340
test al, al
je 0x1401296d9
mov dword [rsp + 0x20], 3
mov r9d, 3
mov r8d, dword [r13 + 0x1b]
mov rdx, r12
mov rcx, rdi
call fcn.140081120
xor r8d, r8d
xor edx, edx
mov ecx, 1
call fcn.1401f4650
test al, al
je 0x1401296d9
xor ecx, ecx
call fcn.1401e7340
test al, al
je 0x1401296d9
mov r9, r14
mov r8, rdi
mov rdx, qword [rdi + 0x238]
mov rcx, r12
call fcn.140027490
test al, al
je 0x1401296bf
movzx eax, byte [r13 + 0x11]
test al, 1
je 0x14012967b
movzx ecx, word [r14 + 0xc9c]
shl rcx, 0x20
mov eax, dword [r14 + 0xc98]
or rcx, rax
mov rax, qword [r13 + 9]
mov r9, qword [rcx + rax*8]
jmp 0x140129697
test al, 2
je 0x140129690
mov rdx, qword [r13 + 9]
mov rcx, r14
call fcn.140184990
mov r9, rax
jmp 0x140129697
lea r9, [0x1413ca658]
mov r8d, dword [r13 + 0x1b]
mov rax, qword [0x141443c60]
mov rdx, r12
mov rcx, rdi
cmp byte [rax + 0x120], 0
je 0x1401296b8
call fcn.14007aec0
jmp 0x1401296d9
call fcn.14007af90
jmp 0x1401296d9
movsx eax, word [rsi]
mov byte [rdi + 0x307c], 1
mov dword [rdi + 0x3080], 0x3f000000
mov dword [rdi + 0x3084], eax
vucomiss xmm6, xmm12
jp 0x1401296e2
je 0x140129727
mov rcx, qword [0x141443c60]
mov rax, qword [rcx + 0x4150]
mov byte [rax + 0xf5], 1
mov rax, qword [rcx + 0x4150]
vmovss xmm0, dword [rax + 0x184]
vsubss xmm1, xmm0, xmm6
vmovss dword [rax + 0x184], xmm1
vaddss xmm0, xmm1, dword [rax + 0x58]
vaddss xmm1, xmm0, dword [rax + 0x188]
vmovss dword [rax + 0x140], xmm1
mov rax, qword [0x141443c60]
mov rbx, qword [rax + 0x4fe8]
test rbx, rbx
je 0x140129778
cmp byte [rbx + 0x237], 0
je 0x140129762
mov ecx, dword [rbx + 0x74]
lea eax, [rcx + 1]
cmp eax, dword [rbx + 0x6c]
jge 0x140129762
cmp ecx, 0xffffffff
je 0x14012975b
mov rcx, rbx
call fcn.1402106f0
mov edx, dword [rbx + 0x74]
inc edx
jmp 0x140129770
vmovaps xmm1, xmm12
xor ecx, ecx
call fcn.14020fa70
xor edx, edx
mov rcx, rbx
call fcn.140210520
mov rdi, qword [rsi + 0x10]
mov rcx, rdi
call fcn.1401c9cc0
xor edx, edx
mov r8d, 1
mov rcx, rax
call fcn.140215e20
vmovaps xmm1, xmm13
vmovaps xmm0, xmm12
call fcn.1401f6d00
vxorps xmm0, xmm0, xmm0
vcvtsi2sd xmm0, xmm0, rdi
vmulsd xmm1, xmm0, xmm11
vdivsd xmm3, xmm1, xmm10
mov eax, 0x28
mov word [rbp + 0x480], ax
lea r8, [rbp + 0x4c0]
lea rdx, [rbp + 0x481]
lea rcx, [rbp + 0x420]
call fcn.140063400
mov rcx, qword [rax]
movzx eax, word [0x1413c72f8]
mov word [rcx], ax
movzx eax, byte [0x1413c72fa]
mov byte [rcx + 2], al
mov rdx, qword [0x141443c60]
add rdx, 0x3af8
xor ecx, ecx
call fcn.1401e3800
xor edx, edx
mov r8d, 1
lea rcx, [rbp + 0x480]
call fcn.140215e20
mov rbx, qword [0x141443c60]
movsxd rax, dword [rbx + 0x4c00]
cmp eax, 1
jl 0x14012985e
lea rdx, [rax + rax*4]
mov rcx, qword [rbx + 0x4c08]
movsxd rax, dword [rcx + rdx*4 - 0x14]
add rax, rax
vmovups xmm0, xmmword [rcx + rdx*4 - 0x10]
vmovups xmmword [rbx + rax*8 + 0x3ae8], xmm0
dec dword [rbx + 0x4c00]
mov rbx, qword [0x141443c60]
mov rbx, qword [rbx + 0x4fe8]
test rbx, rbx
je 0x1401298a8
cmp byte [rbx + 0x237], 0
je 0x140129892
mov ecx, dword [rbx + 0x74]
lea eax, [rcx + 1]
cmp eax, dword [rbx + 0x6c]
jge 0x140129892
cmp ecx, 0xffffffff
je 0x14012988b
mov rcx, rbx
call fcn.1402106f0
mov edx, dword [rbx + 0x74]
inc edx
jmp 0x1401298a0
vmovaps xmm1, xmm12
xor ecx, ecx
call fcn.14020fa70
xor edx, edx
mov rcx, rbx
call fcn.140210520
mov rcx, qword [rsi + 8]
call fcn.14004a750
xor edx, edx
mov r8d, 1
mov rcx, rax
call fcn.140215e20
mov rax, qword [0x141443c60]
mov rbx, qword [rax + 0x4fe8]
test rbx, rbx
je 0x140129912
cmp byte [rbx + 0x237], 0
je 0x1401298fc
mov ecx, dword [rbx + 0x74]
lea eax, [rcx + 1]
cmp eax, dword [rbx + 0x6c]
jge 0x1401298fc
cmp ecx, 0xffffffff
je 0x1401298f5
mov rcx, rbx
call fcn.1402106f0
mov edx, dword [rbx + 0x74]
inc edx
jmp 0x14012990a
vmovaps xmm1, xmm12
xor ecx, ecx
call fcn.14020fa70
xor edx, edx
mov rcx, rbx
call fcn.140210520
xor edx, edx
mov rax, rdi
div qword [rsi + 8]
mov rcx, rax
call fcn.1401c9cc0
xor edx, edx
mov r8d, 1
mov rcx, rax
call fcn.140215e20
mov rax, qword [rsp + 0x48]
cmp dword [rax + 0x2fb8], 0
jne 0x140129a45
mov rax, qword [0x141443c60]
mov rbx, qword [rax + 0x4fe8]
test rbx, rbx
je 0x140129996
cmp byte [rbx + 0x237], 0
je 0x140129980
mov ecx, dword [rbx + 0x74]
lea eax, [rcx + 1]
cmp eax, dword [rbx + 0x6c]
jge 0x140129980
cmp ecx, 0xffffffff
je 0x140129979
mov rcx, rbx
call fcn.1402106f0
mov edx, dword [rbx + 0x74]
inc edx
jmp 0x14012998e
vmovaps xmm1, xmm12
xor ecx, ecx
call fcn.14020fa70
xor edx, edx
mov rcx, rbx
call fcn.140210520
movzx r9d, word [rsi + 2]
movsxd rax, dword [0x1414476d4]
mov r15, rax
shl r15, 6
lea rcx, [0x14145c4e0]
add r15, rcx
inc eax
and eax, 0x80000007
jge 0x1401299c3
dec eax
or eax, 0xfffffff8
inc eax
mov dword [0x1414476d4], eax
lea r8, [r15 + 0x40]
mov rdx, r15
lea rcx, [rbp + 0x430]
call fcn.140006f60
mov rdi, qword [rax]
mov byte [rdi], 0
mov r14, r15
cmp byte [r15], 0x2d
jne 0x1401299ef
lea r14, [r15 + 1]
mov rax, rdi
sub rax, r14
cmp rax, 3
jle 0x140129a2c
mov esi, 4
sub rdi, 3
mov rbx, rdi
sub rbx, r14
movsxd r8, esi
lea rcx, [rbx + 1]
add rcx, r14
mov rdx, rdi
call sub.VCRUNTIME140.dll_memmove
mov byte [rdi], 0x2c
add esi, 4
cmp rbx, 3
jg 0x140129a00
mov rsi, qword [rbp + 0x50]
xor edx, edx
mov r8d, 1
mov rcx, r15
call fcn.140215e20
mov r14, qword [rbp - 0x40]
mov r15, qword [rsp + 0x60]
mov rax, qword [0x141443c60]
mov rcx, qword [rax + 0x4150]
dec dword [rcx + 0x130]
cmp byte [rsp + 0x58], 0
je 0x140129ad3
mov rdx, r15
lea rcx, [rbp + 0x330]
call fcn.140087110
mov rcx, rax
mov dl, 0x2c
call fcn.14012a210
mov rcx, rax
mov rdx, r12
call fcn.140087110
mov rcx, rax
mov dl, 0x2c
call fcn.14012a210
mov edx, dword [r13 + 0x1b]
mov rcx, rax
call qword [sym.imp.MSVCP140.dll_public:_class_std::basic_ostream_char__struct_std::char_traits_char______ptr64___cdecl_std::basic_ostream_char__struct_std::char_traits_char__::operator___unsigned_int____ptr64]
mov rcx, rax
mov dl, 0x2c
call fcn.14012a210
mov rdx, qword [rsi + 0x10]
mov rcx, rax
call qword [sym.imp.MSVCP140.dll_public:_class_std::basic_ostream_char__struct_std::char_traits_char______ptr64___cdecl_std::basic_ostream_char__struct_std::char_traits_char__::operator___long_long___int64_____ptr64]
mov rcx, rax
mov dl, 0x2c
call fcn.14012a210
mov rdx, qword [rsi + 8]
mov rcx, rax
call qword [sym.imp.MSVCP140.dll_public:_class_std::basic_ostream_char__struct_std::char_traits_char______ptr64___cdecl_std::basic_ostream_char__struct_std::char_traits_char__::operator___unsigned_long_long_unsigned___int64_____ptr64]
mov rcx, rax
mov dl, 0xa
call fcn.14012a210
add rsi, 0x18
mov qword [rbp + 0x50], rsi
cmp rsi, qword [rbp - 0x78]
jne 0x140129120
movzx r15d, byte [rsp + 0x58]
lea rbx, vtable.std::basic_ostringstream_char__struct_std::char_traits_char___class_std::allocator_char__.0
call fcn.14020ee00
test r15b, r15b
je 0x140129c72
vpxor xmm0, xmm0, xmm0
vmovups xmmword [rbp + 0x460], xmm0
vmovdqu xmm1, xmmword [0x14140ed00]
vmovdqu xmmword [rbp + 0x470], xmm1
mov byte [rbp + 0x460], 0
mov dword [rsp + 0x40], 6
xor eax, eax
vmovups xmmword [rbp + 0x58], xmm0
mov qword [rbp + 0x68], rax
mov ecx, dword [rbp + 0x3a8]
mov eax, ecx
and al, 0x22
cmp al, 2
je 0x140129b79
mov rax, qword [rbp + 0x378]
mov r8, qword [rax]
test r8, r8
je 0x140129b79
mov rax, qword [rbp + 0x358]
mov rdx, qword [rax]
mov qword [rbp + 0x58], rdx
cmp r8, qword [rbp + 0x3a0]
cmovb r8, qword [rbp + 0x3a0]
sub r8, rdx
mov qword [rbp + 0x60], r8
jmp 0x140129bb9
test cl, 4
jne 0x140129bb1
mov rax, qword [rbp + 0x370]
mov rcx, qword [rax]
test rcx, rcx
je 0x140129bb1
mov rax, qword [rbp + 0x350]
mov rdx, qword [rax]
mov qword [rbp + 0x58], rdx
mov rax, qword [rbp + 0x388]
movsxd r8, dword [rax]
sub r8, rdx
add r8, rcx
mov qword [rbp + 0x60], r8
jmp 0x140129bb9
mov r8, qword [rbp + 0x60]
mov rdx, qword [rbp + 0x58]
test rdx, rdx
je 0x140129bd2
lea rcx, [rbp + 0x460]
call fcn.14001bf00
vmovdqu xmm1, xmmword [0x14140ed00]
lea rax, [rbp + 0x460]
mov rcx, qword [rbp + 0x460]
mov rdx, qword [rbp + 0x478]
cmp rdx, 0xf
cmova rax, rcx
mov r8, qword [0x141443c60]
mov r9, qword [r8 + 0xb8]
test r9, r9
je 0x140129c25
mov rdx, rax
mov rcx, qword [r8 + 0xc0]
call r9
mov rdx, qword [rbp + 0x478]
mov rcx, qword [rbp + 0x460]
vmovdqu xmm1, xmmword [0x14140ed00]
cmp rdx, 0xf
jbe 0x140129c63
inc rdx
mov rax, rcx
cmp rdx, 0x1000
jb 0x140129c56
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x140129c56
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.1403f4db4
vmovdqu xmm1, xmmword [0x14140ed00]
vmovdqu xmmword [rbp + 0x470], xmm1
mov byte [rbp + 0x460], 0
mov rax, qword [rbp + 0x330]
movsxd rcx, dword [rax + 4]
mov qword [rbp + rcx + 0x330], rbx
mov rax, qword [rbp + 0x330]
movsxd rcx, dword [rax + 4]
lea edx, [rcx - 0x88]
mov dword [rbp + rcx + 0x32c], edx
lea rcx, [rbp + 0x338]
call fcn.140049070
lea rcx, [rbp + 0x340]
call qword [sym.imp.MSVCP140.dll_public_virtual:_void___cdecl_std::basic_ostream_char__struct_std::char_traits_char__::destructor_void____ptr64]
lea rcx, [rbp + 0x3b8]
call qword [sym.imp.MSVCP140.dll_public_virtual:_void___cdecl_std::basic_ios_char__struct_std::char_traits_char__::destructor_void____ptr64]
mov esi, 1
call fcn.1401ebba0
call fcn.1401f2010
nop
movzx edx, byte [rbp + 0x44a]
movzx eax, dl
and al, 0x7f
cmp al, 0x7f
je 0x140129d2a
movzx ecx, word [rbp + 0x444]
shl rcx, 0x20
mov eax, dword [rbp + 0x440]
or rcx, rax
je 0x140129d2a
mov eax, edx
and eax, 0x7f
shlx ecx, esi, eax
imul rax, rcx, 0xffffffffffffffe8
lock add qword [0x141443c50], rax
movzx ecx, word [rbp + 0x444]
shl rcx, 0x20
mov eax, dword [rbp + 0x440]
or rcx, rax
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
nop
mov rcx, qword [rbp + 0x4c0]
xor rcx, rsp
call fcn.1403f4b10
lea r11, [rsp + 0x660]
mov rbx, qword [r11 + 0x38]
mov rsi, qword [r11 + 0x40]
mov rdi, qword [r11 + 0x48]
vmovaps xmm6, xmmword [r11 - 0x10]
vmovaps xmm7, xmmword [r11 - 0x20]
vmovaps xmm8, xmmword [r11 - 0x30]
vmovaps xmm9, xmmword [r11 - 0x40]
vmovaps xmm10, xmmword [r11 - 0x50]
vmovaps xmm11, xmmword [r11 - 0x60]
vmovaps xmm12, xmmword [r11 - 0x70]
vmovaps xmm13, xmmword [r11 - 0x80]
vmovaps xmm14, xmmword [r11 - 0x90]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rbp
ret
call fcn.14001c8f0
nop
call fcn.14001c8f0
int3
call fcn.14001c8f0
nop
call fcn.14001c8f0
int3
call fcn.14001c8f0
nop
call fcn.1400033c0
int3