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

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x598
mov dword [rsp + 0x30], r9d
mov qword [rsp + 0xc8], r8
mov r13, rdx
mov r12, rcx
pxor xmm0, xmm0
movdqu xmmword [rsp + 0x238], xmm0
mov dword [rsp + 0x2c9], 0
mov dword [rsp + 0x2cc], 0
movdqu xmmword [rsp + 0x2d0], xmm0
movdqu xmmword [rsp + 0x290], xmm0
mov qword [rsp + 0x210], 0
mov qword [rsp + 0x228], 0
mov qword [rsp + 0x230], 8
mov qword [rsp + 0x248], 8
mov qword [rsp + 0x250], 0
mov qword [rsp + 0x258], 2
mov qword [rsp + 0x260], 0
mov word [rsp + 0x268], 0
mov byte [rsp + 0x270], 0
lea rax, [0x1402396a0]
mov qword [rsp + 0x280], rax
mov qword [rsp + 0x288], 1
mov qword [rsp + 0x2a0], rax
lea rax, [0x140299af8]
mov qword [rsp + 0x2a8], rax
mov qword [rsp + 0x2b0], 1
mov qword [rsp + 0x2b8], 0
mov word [rsp + 0x2c0], 0xffff
mov byte [rsp + 0x2c8], 1
mov qword [rsp + 0x2e0], 0
mov byte [rsp + 0x2e8], 2
movzx esi, byte [rsp + 0x218]
movzx ebp, byte [rsp + 0x219]
lea r14, [rsp + 0x21a]
mov rdi, qword [rsp + 0x2e8]
lea r15, [rsp + 0xd0]
mov r8d, 0xce
mov rcx, r15
mov rdx, r14
call sub.msvcrt.dll_memcpy
mov rbx, rdi
shr rbx, 8
mov r8d, 0xce
mov rcx, r14
mov rdx, r15
call sub.msvcrt.dll_memcpy
mov qword [rsp + 0x210], 0
mov byte [rsp + 0x50], sil
mov byte [rsp + 0x218], sil
mov rsi, r13
mov byte [rsp + 0x48], bpl
mov byte [rsp + 0x219], bpl
mov byte [rsp + 0x2e8], 3
mov rax, rdi
shr rax, 0x38
mov byte [rsp + 0x2ef], al
shr rdi, 0x28
mov word [rsp + 0x2ed], di
mov dword [rsp + 0x2e9], ebx
movzx edi, byte [r13]
cmp dil, 0xb
je 0x14004439a
mov qword [rsp + 0x40], r12
mov byte [rsp + 0x2f], dil
lea r13, [rsp + 0x2e0]
movzx eax, word [rsi + 5]
movzx ecx, byte [rsi + 7]
shl ecx, 0x10
or ecx, eax
shl rcx, 0x20
mov edi, dword [rsi + 1]
or rdi, rcx
mov rbx, qword [rsi + 8]
mov r12, qword [rsi + 0x10]
cmp byte [rsp + 0x2c8], 0xa
jb 0x14004429f
cmp qword [rsp + 0x2d8], 0
je 0x14004429f
mov r8, qword [rsp + 0x2d0]
mov rcx, qword [0x1402f90f8]
xor edx, edx
call fcn.1401d02bc
lea r15, [rsp + 0xd0]
mov r8d, 0xae
mov rcx, r15
lea r14, [rsp + 0x21a]
mov rdx, r14
call sub.msvcrt.dll_memcpy
movups xmm0, xmmword [r13]
movaps xmmword [rsp + 0x390], xmm0
mov r8d, 0xae
mov rcx, r14
mov rdx, r15
call sub.msvcrt.dll_memcpy
movdqa xmm0, xmmword [rsp + 0x390]
movdqu xmmword [r13], xmm0
mov qword [rsp + 0x210], 0
movzx ebp, byte [rsp + 0x50]
mov byte [rsp + 0x218], bpl
movzx r14d, byte [rsp + 0x48]
mov byte [rsp + 0x219], r14b
movzx ecx, byte [rsp + 0x2f]
mov byte [rsp + 0x2c8], cl
mov rax, rdi
shr rax, 0x30
mov byte [rsp + 0x2cf], al
mov rax, rdi
shr rax, 0x20
mov word [rsp + 0x2cd], ax
mov dword [rsp + 0x2c9], edi
mov qword [rsp + 0x2d0], rbx
mov qword [rsp + 0x2d8], r12
mov r15, qword [rsi + 0x78]
test r15, r15
je 0x1400443cf
cmp cl, 7
mov edi, ecx
mov ecx, dword [rsp + 0x30]
je 0x140044415
mov rax, qword [rsp + 0x40]
mov word [rax + 8], 0x100
mov dword [rax + 0xc], ecx
mov dword [rax + 0x10], 1
mov qword [rax], 3
mov r12b, 1
xor ebp, ebp
mov r15b, 1
mov r13b, 1
mov bl, 1
jmp 0x140044c57
mov word [r12 + 8], 0x100
mov eax, dword [rsp + 0x30]
mov dword [r12 + 0xc], eax
mov dword [r12 + 0x10], 1
mov qword [r12], 3
mov r12b, 1
mov r15b, 1
mov r13b, 1
mov bl, 1
mov bpl, 1
jmp 0x140044c57
mov bl, 1
mov edi, ecx
mov r14, qword [rsp + 0x40]
mov r13d, dword [rsp + 0x30]
cmp word [rsi + 0x98], 0
je 0x140044753
mov word [r14 + 8], 0x100
mov dword [r14 + 0xc], r13d
mov dword [r14 + 0x10], 1
mov qword [r14], 3
mov r12b, 1
xor ebp, ebp
mov r15b, 1
mov r13b, 1
jmp 0x140044c57
mov rax, qword [rsi + 0x90]
mov qword [rsp + 0x480], rax
movups xmm0, xmmword [rsi + 0x80]
movaps xmmword [rsp + 0x470], xmm0
lea rcx, [rsp + 0xda]
mov r8d, 0xd6
lea rdx, [rsp + 0x21a]
call sub.msvcrt.dll_memcpy
mov qword [rsp + 0xd0], 0
mov byte [rsp + 0xd8], bpl
mov byte [rsp + 0xd9], r14b
mov qword [rsp + 0x1b0], r15
movdqu xmm0, xmmword [rsi + 0x80]
movdqu xmmword [rsp + 0x1b8], xmm0
mov rax, qword [rsi + 0x90]
mov qword [rsp + 0x1c8], rax
mov r12, qword [rsp + 0x1a0]
test r12, r12
jne 0x1400444dd
movzx eax, byte [0x1402f9139]
mov edx, 0x20
xor ecx, ecx
call fcn.1401860d0
test rax, rax
je 0x1400456a5
mov r12, rax
movups xmm0, xmmword [0x140272890]
movups xmmword [rax + 0x10], xmm0
movdqu xmm0, xmmword [0x140272880]
movdqu xmmword [rax], xmm0
mov qword [rsp + 0x1a0], rax
mov qword [rsp + 0x390], r15
movdqa xmm0, xmmword [rsp + 0x470]
movdqu xmmword [rsp + 0x398], xmm0
mov rax, qword [rsp + 0x480]
mov qword [rsp + 0x3a8], rax
movzx eax, byte [0x1402f9139]
mov edx, 0x20
xor ecx, ecx
call fcn.1401860d0
test rax, rax
je 0x140045686
mov r13, rax
mov qword [rsp + 0xb0], r15
mov qword [rax], r15
movdqa xmm0, xmmword [rsp + 0x470]
movdqu xmmword [rax + 8], xmm0
mov rax, qword [rsp + 0x480]
mov qword [r13 + 0x18], rax
cmp qword [r12 + 0x10], 0
jne 0x14004455b
mov rcx, r12
call fcn.140045ea0
movabs rdi, 0x8d65bca2f8e88671
movabs rbx, 0x5215b94699b108bd
mov r15, qword [r12]
mov rcx, qword [r12 + 8]
xor r8d, r8d
movdqa xmm0, xmmword [str.FFFFFFFFFFFFFFFF]
pcmpeqd xmm1, xmm1
mov r9, rdi
xor r10d, r10d
and r9, rcx
movdqu xmm2, xmmword [r15 + r9]
movdqa xmm3, xmm2
pcmpeqb xmm3, xmm0
pmovmskb r11d, xmm3
nop word cs:[rax + rax]
test r11w, r11w
je 0x1400445e3
tzcnt edx, r11d
lea eax, [r11 - 1]
and eax, r11d
mov r11d, eax
add rdx, r9
and rdx, rcx
shl rdx, 5
mov rax, r15
sub rax, rdx
cmp qword [rax - 0x20], rbx
jne 0x1400445b0
cmp qword [rax - 0x18], rdi
jne 0x1400445b0
jmp 0x140044627
cmp r10, 1
mov r10d, 1
je 0x140044607
pmovmskb eax, xmm2
xor r10d, r10d
test eax, eax
setne r10b
tzcnt r14d, eax
add r14, r9
and r14, rcx
pcmpeqb xmm2, xmm1
pmovmskb eax, xmm2
test eax, eax
jne 0x140044da4
add r9, r8
add r9, 0x10
add r8, 0x10
jmp 0x14004458d
mov r12, qword [rax - 0x10]
mov r15, qword [rax - 8]
mov qword [rax - 0x10], r13
lea rcx, [0x140225468]
mov qword [rax - 8], rcx
mov rcx, r12
call qword [r15 + 0x18]
cmp rax, rbx
mov r13d, dword [rsp + 0x30]
jne 0x1400446b3
cmp rdx, rdi
jne 0x1400446b3
movdqu xmm0, xmmword [r12]
movdqu xmm1, xmmword [r12 + 0x10]
movdqa xmmword [rsp + 0x3a0], xmm1
movdqa xmmword [rsp + 0x390], xmm0
mov rcx, qword [0x1402f90f8]
xor edx, edx
mov r8, r12
call fcn.1401d02bc
mov rax, qword [rsp + 0x390]
test rax, rax
movzx edi, byte [rsp + 0x2f]
je 0x1400446e2
lea rcx, [rsp + 0x3a8]
mov rdx, qword [rsp + 0x398]
mov r8, qword [rsp + 0x3a0]
call qword [rax + 0x18]
jmp 0x1400446e2
mov rcx, r12
call qword [r15]
cmp qword [r15 + 8], 0
movzx edi, byte [rsp + 0x2f]
je 0x1400446e2
cmp qword [r15 + 0x10], 0x11
jb 0x1400446d1
mov r12, qword [r12 - 8]
mov rcx, qword [0x1402f90f8]
xor edx, edx
mov r8, r12
call fcn.1401d02bc
lea r15, [rsp + 0x390]
mov r8d, 0xd6
mov rcx, r15
lea rdx, [rsp + 0xda]
call sub.msvcrt.dll_memcpy
mov r8d, 0xd6
lea rcx, [rsp + 0x21a]
mov rdx, r15
call sub.msvcrt.dll_memcpy
mov qword [rsp + 0x210], 0
mov byte [rsp + 0x218], bpl
movzx eax, byte [rsp + 0x48]
mov byte [rsp + 0x219], al
xor ebx, ebx
mov r14, qword [rsp + 0x40]
mov r15, qword [rsp + 0xb0]
cmp word [rsi + 0x98], 0
jne 0x1400443eb
mov byte [rsp + 0x58], 3
mov qword [rsp + 0x68], 0
mov qword [rsp + 0x88], 0
lea rbp, [rsi + 0x38]
mov r12, qword [rsi + 0x38]
test r12, r12
je 0x1400449d8
movdqu xmm0, xmmword [rbp]
movdqu xmm1, xmmword [rbp + 0x10]
movdqa xmmword [rsp + 0x1b0], xmm0
movdqa xmmword [rsp + 0x1c0], xmm1
mov rax, qword [rsp + 0x1b0]
mov r8, qword [rsp + 0x1b8]
lea rdx, [rsp + 0x1c8]
mov r9, qword [rsp + 0x1c0]
lea rcx, [rsp + 0x558]
call qword [rax]
mov qword [rsp + 0x48], r12
movdqu xmm0, xmmword [rsp + 0x558]
movdqu xmm1, xmmword [rsp + 0x568]
movdqa xmmword [rsp + 0x390], xmm0
movdqa xmmword [rsp + 0x3a0], xmm1
mov rdi, qword [rsp + 0x390]
mov qword [rsp + 0x390], 0
test rdi, rdi
je 0x140045697
lea rax, [rsp + 0x398]
mov qword [rsp + 0xd0], rdi
movdqu xmm0, xmmword [rax]
movdqu xmmword [rsp + 0xd8], xmm0
mov rax, qword [rax + 0x10]
mov qword [rsp + 0xe8], rax
mov r12, qword [rsp + 0xd8]
mov r13, qword [rsp + 0xe0]
test r13, r13
je 0x14004493d
lea rcx, [rsp + 0x470]
mov rdx, r12
mov r8, r13
call fcn.140056810
cmp byte [rsp + 0x470], 0
jne 0x14004493d
cmp qword [rsp + 0x478], r13
jne 0x14004493d
mov qword [rsp + 0x50], rbp
mov rbp, r15
mov rax, qword [rsp + 0xe8]
mov qword [rsp + 0x37f], rax
movups xmm0, xmmword [rsp + 0xd9]
movaps xmmword [rsp + 0x370], xmm0
mov rax, qword [rsp + 0x68]
test rax, rax
je 0x1400448c2
lea rcx, [rsp + 0x80]
mov rdx, qword [rsp + 0x70]
mov r8, qword [rsp + 0x78]
call qword [rax + 0x18]
mov dword [rsp + 0x68], edi
shr rdi, 0x20
mov dword [rsp + 0x6c], edi
mov byte [rsp + 0x70], r12b
movdqa xmm0, xmmword [rsp + 0x370]
movdqu xmmword [rsp + 0x71], xmm0
mov rax, qword [rsp + 0x37f]
mov qword [rsp + 0x80], rax
mov rax, qword [rsp + 0x1b0]
mov rdx, qword [rsp + 0x1b8]
mov r12b, 1
xor r13d, r13d
mov r8, qword [rsp + 0x1c0]
mov r15b, 1
lea rcx, [rsp + 0x1c8]
call qword [rax + 0x18]
movzx edi, byte [rsp + 0x2f]
xor r13d, r13d
mov r14, qword [rsp + 0x40]
mov r15, rbp
mov rbp, qword [rsp + 0x50]
mov r12, qword [rsp + 0x48]
jmp 0x1400449db
lea rcx, [rsp + 0xe8]
mov rdx, r12
mov r8, r13
call qword [rdi + 0x18]
mov rax, qword [rsp + 0x390]
test rax, rax
movzx edi, byte [rsp + 0x2f]
mov r14, qword [rsp + 0x40]
mov ebp, dword [rsp + 0x30]
je 0x140044984
lea rcx, [rsp + 0x3a8]
mov rdx, qword [rsp + 0x398]
mov r8, qword [rsp + 0x3a0]
call qword [rax + 0x18]
mov word [r14 + 8], 0x100
mov dword [r14 + 0xc], ebp
mov dword [r14 + 0x10], 1
mov qword [r14], 3
mov rax, qword [rsp + 0x1b0]
mov rdx, qword [rsp + 0x1b8]
mov r12b, 1
xor r13d, r13d
mov r8, qword [rsp + 0x1c0]
mov r15b, 1
lea rcx, [rsp + 0x1c8]
call qword [rax + 0x18]
mov r12b, 1
xor r13d, r13d
mov r15b, 1
jmp 0x140044be7
mov r13b, 1
lea rax, [rsi + 0x18]
mov rcx, qword [rsi + 0x18]
test rcx, rcx
je 0x140044a49
movdqu xmm0, xmmword [rax]
movdqu xmm1, xmmword [rax + 0x10]
movdqa xmmword [rsp + 0x3a0], xmm1
movdqa xmmword [rsp + 0x390], xmm0
cmp dil, 7
jne 0x140044ad5
test r15, r15
jne 0x140044ad5
mov word [r14 + 8], 0x100
mov eax, dword [rsp + 0x30]
mov dword [r14 + 0xc], eax
mov dword [r14 + 0x10], 1
mov qword [r14], 3
mov rdx, qword [rsp + 0x398]
mov r8, qword [rsp + 0x3a0]
jmp 0x140044bc8
cmp dil, 7
jne 0x140044b27
test r15, r15
jne 0x140044b27
cmp qword [rsi + 0x58], 0
je 0x140044e15
lea rax, [rsi + 0x58]
movdqu xmm0, xmmword [rax]
movdqu xmm1, xmmword [rax + 0x10]
movdqa xmmword [rsp + 0xe0], xmm1
movdqa xmmword [rsp + 0xd0], xmm0
mov word [r14 + 8], 0x100
mov eax, dword [rsp + 0x30]
mov dword [r14 + 0xc], eax
mov dword [r14 + 0x10], 1
mov r15b, 1
mov qword [r14], 3
mov rax, qword [rsp + 0xd0]
mov rdx, qword [rsp + 0xd8]
lea rcx, [rsp + 0xe8]
xor r12d, r12d
mov r8, qword [rsp + 0xe0]
call qword [rax + 0x18]
xor r12d, r12d
jmp 0x140044be7
mov rdx, qword [rsp + 0x398]
mov r8, qword [rsp + 0x3a0]
cmp r8, 5
mov qword [rsp + 0x208], rax
mov qword [rsp + 0xb8], rcx
je 0x140044b4d
cmp r8, 4
jne 0x140044b7a
cmp byte [rdx], 0x68
jne 0x140044b80
cmp byte [rdx + 1], 0x74
jne 0x140044b80
cmp byte [rdx + 2], 0x74
jne 0x140044b80
cmp byte [rdx + 3], 0x70
jne 0x140044b80
mov qword [rsp + 0x48], r12
mov r14b, 1
xor edi, edi
jmp 0x140044eb2
mov word [r14 + 8], 0x100
mov eax, dword [rsp + 0x30]
mov dword [r14 + 0xc], eax
mov dword [r14 + 0x10], 1
mov qword [r14], 3
mov r12b, 1
jmp 0x1400449d0
cmp byte [rdx], 0x68
jne 0x140044b80
cmp byte [rdx + 1], 0x74
jne 0x140044b80
cmp byte [rdx + 2], 0x74
jne 0x140044b80
cmp byte [rdx + 3], 0x70
jne 0x140044b80
cmp byte [rdx + 4], 0x73
jne 0x140044b80
mov qword [rsp + 0x48], r12
mov dil, 1
mov r14b, 1
jmp 0x140044eb2
cmp r8, 0x40
ja 0x140044baa
xor eax, eax
lea rcx, [0x140239da0]
cmp r8, rax
je 0x140044d62
movzx r9d, byte [rdx + rax]
movzx r9d, byte [r9 + rcx]
test r9d, r9d
je 0x140044baa
inc rax
cmp r9d, 0x3a
jne 0x140044b89
mov eax, dword [rsp + 0x30]
mov dword [r14 + 0xc], eax
mov word [r14 + 8], 0x100
mov dword [r14 + 0x10], 1
mov qword [r14], 3
mov rax, qword [rsp + 0x390]
mov r12b, 1
xor r15d, r15d
lea rcx, [rsp + 0x3a8]
call qword [rax + 0x18]
mov r12b, 1
xor r15d, r15d
movzx eax, byte [rsp + 0x58]
mov r14, qword [rsp + 0x60]
cmp eax, 3
ja 0x140044d2c
cmp eax, 2
je 0x140044d2c
mov rax, qword [rsp + 0x68]
test rax, rax
je 0x140044c22
lea rcx, [rsp + 0x80]
mov rdx, qword [rsp + 0x70]
mov r8, qword [rsp + 0x78]
call qword [rax + 0x18]
mov rax, qword [rsp + 0x88]
test rax, rax
je 0x140044c4a
lea rcx, [rsp + 0xa0]
mov rdx, qword [rsp + 0x90]
mov r8, qword [rsp + 0x98]
call qword [rax + 0x18]
xor ebp, ebp
cmp qword [rsp + 0x210], 3
je 0x140044c64
lea rcx, [rsp + 0x210]
call fcn.140043d00
mov rcx, qword [rsp + 0xc8]
call fcn.140059d60
movzx eax, byte [rsi]
cmp al, 0xb
je 0x140044c9b
cmp al, 0xa
jb 0x140044c9b
cmp dil, 0xb
jne 0x140044c9b
cmp qword [rsi + 0x10], 0
je 0x140044c9b
mov r8, qword [rsi + 8]
mov rcx, qword [0x1402f90f8]
xor edx, edx
call fcn.1401d02bc
test r15b, r15b
je 0x140044cb8
mov rax, qword [rsi + 0x18]
test rax, rax
je 0x140044cb8
lea rcx, [rsi + 0x30]
mov rdx, qword [rsi + 0x20]
mov r8, qword [rsi + 0x28]
call qword [rax + 0x18]
test r13b, r13b
je 0x140044cd5
mov rax, qword [rsi + 0x38]
test rax, rax
je 0x140044cd5
lea rcx, [rsi + 0x50]
mov rdx, qword [rsi + 0x40]
mov r8, qword [rsi + 0x48]
call qword [rax + 0x18]
test r12b, r12b
je 0x140044cf2
mov rax, qword [rsi + 0x58]
test rax, rax
je 0x140044cf2
lea rcx, [rsi + 0x70]
mov rdx, qword [rsi + 0x60]
mov r8, qword [rsi + 0x68]
call qword [rax + 0x18]
test bl, bl
je 0x140044d17
mov rax, qword [rsi + 0x78]
test rax, rax
je 0x140044d17
lea rcx, [rsi + 0x90]
mov rdx, qword [rsi + 0x80]
mov r8, qword [rsi + 0x88]
call qword [rax + 0x18]
nop
add rsp, 0x598
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
mov rax, qword [r14]
mov rdx, qword [r14 + 8]
lea rcx, [r14 + 0x18]
mov r8, qword [r14 + 0x10]
call qword [rax + 0x18]
mov rcx, qword [0x1402f90f8]
xor edx, edx
mov r8, r14
call fcn.1401d02bc
mov rax, qword [rsp + 0x68]
test rax, rax
jne 0x140044c0d
jmp 0x140044c22
test r8, r8
mov qword [rsp + 0x48], r12
je 0x140044e37
js 0x1400456cb
mov rdi, rdx
movzx eax, byte [0x1402f9139]
xor ecx, ecx
mov r12, r8
mov rdx, r8
call fcn.1401860d0
test rax, rax
je 0x1400456d2
mov r14, rax
mov r8, r12
mov rdx, rdi
jmp 0x140044e3d
movzx eax, byte [r15 + r14]
test al, al
js 0x140044dc0
movdqa xmm0, xmmword [r15]
pmovmskb eax, xmm0
tzcnt r14d, eax
movzx eax, byte [r15 + r14]
and al, 1
movzx eax, al
sub qword [r12 + 0x10], rax
lea rax, [r14 - 0x10]
and rax, rcx
mov byte [r15 + r14], 0x46
mov byte [r15 + rax + 0x10], 0x46
inc qword [r12 + 0x18]
shl r14, 5
mov rax, r15
sub rax, r14
neg r14
mov qword [r15 + r14 - 0x20], rbx
mov qword [rax - 0x18], rdi
mov qword [rax - 0x10], r13
lea rcx, [0x140225468]
mov qword [rax - 8], rcx
movzx edi, byte [rsp + 0x2f]
mov r13d, dword [rsp + 0x30]
jmp 0x1400446e2
mov qword [rsp + 0x208], rax
mov qword [rsp + 0x48], r12
mov qword [rsp + 0xb0], r15
mov r12b, 1
xor edx, edx
mov r15b, 1
jmp 0x140045182
mov r14d, 1
mov rcx, r14
mov r12, r8
call sub.msvcrt.dll_memcpy
mov qword [rsp + 0x1b0], r12
mov qword [rsp + 0x1b8], r14
mov qword [rsp + 0x1c0], r12
lea rcx, [rsp + 0xd0]
lea rdx, [rsp + 0x1b0]
call fcn.1400276d0
movzx eax, byte [0x1402f9139]
mov edx, 0x20
xor ecx, ecx
call fcn.1401860d0
test rax, rax
je 0x1400456b6
mov r12, rax
movdqu xmm0, xmmword [rsp + 0xd0]
movdqu xmm1, xmmword [rsp + 0xe0]
movdqu xmmword [rax + 0x10], xmm1
movdqu xmmword [rax], xmm0
mov r14b, 2
cmp qword [rsp + 0x68], 0
je 0x140044ee6
movzx ecx, byte [rsp + 0x58]
mov rdx, qword [rsp + 0x60]
call fcn.14006a3d0
mov byte [rsp + 0x58], r14b
mov byte [rsp + 0x59], dil
mov word [rsp + 0x5a], 0
mov qword [rsp + 0x60], r12
movzx edi, byte [rsp + 0x2f]
jmp 0x140044ef6
mov ecx, r14d
mov rdx, r12
call fcn.14006a880
movzx edi, byte [rsp + 0x2f]
mov qword [rsp + 0x50], rbp
mov qword [rsp + 0xb0], r15
mov rax, qword [rsp + 0x390]
mov rdx, qword [rsp + 0x398]
lea rcx, [rsp + 0x3a8]
mov r12b, 1
xor r15d, r15d
mov r8, qword [rsp + 0x3a0]
call qword [rax + 0x18]
cmp qword [rsi + 0x58], 0
je 0x1400450bd
lea rax, [rsi + 0x58]
movdqu xmm0, xmmword [rax]
movdqu xmm1, xmmword [rax + 0x10]
movdqa xmmword [rsp + 0xe0], xmm1
movdqa xmmword [rsp + 0xd0], xmm0
mov r9, qword [rsp + 0xe0]
test r9, r9
je 0x140045113
mov rax, qword [rsp + 0xd0]
mov r8, qword [rsp + 0xd8]
lea rdx, [rsp + 0xe8]
lea rcx, [rsp + 0x578]
call qword [rax]
mov r14, qword [rsp + 0x40]
lea rcx, [rsp + 0x530]
lea rdx, [rsp + 0x578]
call fcn.140046660
mov rdi, qword [rsp + 0x530]
test rdi, rdi
je 0x140045137
mov ebp, edi
shr ebp, 8
mov r14d, edi
shr r14d, 0x10
mov r15, rdi
shr r15, 0x20
mov r12d, dword [rsp + 0x538]
movups xmm0, xmmword [rsp + 0x53c]
movaps xmmword [rsp + 0x390], xmm0
movups xmm0, xmmword [rsp + 0x548]
movups xmmword [rsp + 0x39c], xmm0
movaps xmm0, xmmword [rsp + 0x390]
movaps xmmword [rsp + 0x2f0], xmm0
movups xmm0, xmmword [rsp + 0x39c]
movups xmmword [rsp + 0x2fc], xmm0
mov rax, qword [rsp + 0x88]
test rax, rax
je 0x140045037
lea rcx, [rsp + 0xa0]
mov rdx, qword [rsp + 0x90]
mov r8, qword [rsp + 0x98]
call qword [rax + 0x18]
mov byte [rsp + 0x88], dil
mov byte [rsp + 0x89], bpl
mov word [rsp + 0x8a], r14w
mov dword [rsp + 0x8c], r15d
mov dword [rsp + 0x90], r12d
movaps xmm0, xmmword [rsp + 0x2f0]
movups xmmword [rsp + 0x94], xmm0
movdqu xmm0, xmmword [rsp + 0x2fc]
movdqu xmmword [rsp + 0xa0], xmm0
mov rax, qword [rsp + 0xd0]
mov rdx, qword [rsp + 0xd8]
xor r12d, r12d
mov r8, qword [rsp + 0xe0]
xor r15d, r15d
lea rcx, [rsp + 0xe8]
call qword [rax + 0x18]
mov dl, 1
xor r12d, r12d
xor r15d, r15d
mov rbp, qword [rsp + 0x50]
jmp 0x14004517a
xor edx, edx
mov r12b, 1
cmp dil, 7
mov rbp, qword [rsp + 0x50]
jne 0x140045177
mov r15d, 0
cmp qword [rsp + 0xb0], 0
mov rcx, qword [rsp + 0xb8]
je 0x140045182
mov rax, qword [rsp + 0x40]
mov word [rax + 8], 0x100
mov ecx, dword [rsp + 0x30]
mov dword [rax + 0xc], ecx
mov dword [rax + 0x10], 1
mov qword [rax], 3
jmp 0x140044be1
mov r14, qword [rsp + 0x40]
mov word [r14 + 8], 0x100
mov eax, dword [rsp + 0x30]
mov dword [r14 + 0xc], eax
mov dword [r14 + 0x10], 1
xor r15d, r15d
jmp 0x140044aa0
mov word [r14 + 8], 0x100
mov eax, dword [rsp + 0x30]
mov dword [r14 + 0xc], eax
mov dword [r14 + 0x10], 1
movaps xmm0, xmmword [rsp + 0x2f0]
movups xmmword [r14 + 0x14], xmm0
movdqu xmm0, xmmword [rsp + 0x2fc]
movdqu xmmword [r14 + 0x20], xmm0
xor r15d, r15d
movzx edi, byte [rsp + 0x2f]
jmp 0x140044aa0
xor r15d, r15d
mov rcx, qword [rsp + 0xb8]
mov dword [rsp + 0x3c], ebx
mov rdi, qword [rsp + 0x210]
movzx ebx, byte [rsp + 0x218]
movzx r14d, byte [rsp + 0x219]
mov rax, qword [rsp + 0xa8]
mov qword [rsp + 0x360], rax
movups xmm0, xmmword [rsp + 0x98]
movaps xmmword [rsp + 0x350], xmm0
movdqu xmm0, xmmword [rsp + 0x58]
movdqu xmm1, xmmword [rsp + 0x68]
movdqu xmm2, xmmword [rsp + 0x78]
movdqu xmm3, xmmword [rsp + 0x88]
movdqa xmmword [rsp + 0x340], xmm3
movdqa xmmword [rsp + 0x330], xmm2
movdqa xmmword [rsp + 0x320], xmm1
movdqa xmmword [rsp + 0x310], xmm0
cmp rdi, 3
jne 0x1400452cb
movzx eax, byte [rsp + 0x310]
mov r14, qword [rsp + 0x318]
cmp eax, 3
lea rdi, [rsp + 0x21a]
ja 0x14004522a
cmp eax, 2
jne 0x14004524d
mov rax, qword [r14]
mov rdx, qword [r14 + 8]
lea rcx, [r14 + 0x18]
mov r8, qword [r14 + 0x10]
call qword [rax + 0x18]
mov rcx, qword [0x1402f90f8]
xor edx, edx
mov r8, r14
call fcn.1401d02bc
mov rax, qword [rsp + 0x320]
test rax, rax
je 0x140045275
lea rcx, [rsp + 0x338]
mov rdx, qword [rsp + 0x328]
mov r8, qword [rsp + 0x330]
call qword [rax + 0x18]
mov rax, qword [rsp + 0x340]
test rax, rax
je 0x14004529d
lea rcx, [rsp + 0x358]
mov rdx, qword [rsp + 0x348]
mov r8, qword [rsp + 0x350]
call qword [rax + 0x18]
lea rdx, [rsp + 0x390]
mov r8d, 0xd6
mov rcx, rdi
call sub.msvcrt.dll_memcpy
mov qword [rsp + 0x210], 3
mov byte [rsp + 0x218], bl
jmp 0x140045525
mov dword [rsp + 0xc4], edx
mov qword [rsp + 0xb8], rcx
lea rcx, [rsp + 0xda]
mov r8d, 0xd6
lea rdx, [rsp + 0x21a]
call sub.msvcrt.dll_memcpy
mov rax, qword [rsp + 0xa8]
mov qword [rsp + 0x200], rax
movups xmm0, xmmword [rsp + 0x98]
movaps xmmword [rsp + 0x1f0], xmm0
movdqu xmm0, xmmword [rsp + 0x58]
movdqu xmm1, xmmword [rsp + 0x68]
movdqu xmm2, xmmword [rsp + 0x78]
movdqu xmm3, xmmword [rsp + 0x88]
movdqa xmmword [rsp + 0x1e0], xmm3
movdqa xmmword [rsp + 0x1d0], xmm2
movdqa xmmword [rsp + 0x1c0], xmm1
movdqa xmmword [rsp + 0x1b0], xmm0
mov qword [rsp + 0xd0], rdi
mov byte [rsp + 0xd8], bl
mov byte [rsp + 0xd9], r14b
lea rcx, [rsp + 0x470]
lea rdx, [rsp + 0x1b0]
call fcn.140057700
movzx edi, byte [rsp + 0x470]
cmp dil, 3
jne 0x1400453b4
lea rcx, [rsp + 0xd0]
call fcn.140043d00
mov qword [rsp + 0x210], 3
mov byte [rsp + 0x218], 3
jmp 0x140045525
mov qword [rsp + 0x50], rbp
movzx ebx, byte [rsp + 0x471]
movzx r14d, byte [rsp + 0x472]
movups xmm0, xmmword [rsp + 0x473]
movaps xmmword [rsp + 0x4d0], xmm0
movups xmm0, xmmword [rsp + 0x483]
movaps xmmword [rsp + 0x4e0], xmm0
movups xmm0, xmmword [rsp + 0x493]
movaps xmmword [rsp + 0x4f0], xmm0
movups xmm0, xmmword [rsp + 0x4a3]
movaps xmmword [rsp + 0x500], xmm0
movups xmm0, xmmword [rsp + 0x4b3]
movaps xmmword [rsp + 0x510], xmm0
mov rax, qword [rsp + 0x4c0]
mov qword [rsp + 0x51d], rax
lea rcx, [rsp + 0x130]
call fcn.14008cbe0
mov byte [rsp + 0x130], dil
mov byte [rsp + 0x131], bl
mov byte [rsp + 0x132], r14b
movaps xmm0, xmmword [rsp + 0x4d0]
movdqa xmm1, xmmword [rsp + 0x4e0]
movdqa xmm2, xmmword [rsp + 0x4f0]
movdqa xmm3, xmmword [rsp + 0x500]
movups xmmword [rsp + 0x133], xmm0
movdqu xmmword [rsp + 0x143], xmm1
movdqu xmmword [rsp + 0x153], xmm2
movdqu xmmword [rsp + 0x163], xmm3
movdqa xmm0, xmmword [rsp + 0x510]
movdqu xmmword [rsp + 0x173], xmm0
mov rax, qword [rsp + 0x51d]
mov qword [rsp + 0x180], rax
mov rdi, qword [rsp + 0xd0]
movzx ebx, byte [rsp + 0xd8]
movzx r14d, byte [rsp + 0xd9]
lea rcx, [rsp + 0x390]
mov r8d, 0xd6
lea rdx, [rsp + 0xda]
call sub.msvcrt.dll_memcpy
mov r8d, 0xd6
lea rbp, [rsp + 0x21a]
mov rcx, rbp
lea rdx, [rsp + 0x390]
call sub.msvcrt.dll_memcpy
mov qword [rsp + 0x210], rdi
mov byte [rsp + 0x218], bl
mov byte [rsp + 0x219], r14b
cmp rdi, 3
jne 0x140045555
mov rax, qword [rsp + 0x40]
mov word [rax + 8], 0x100
mov ecx, dword [rsp + 0x30]
mov dword [rax + 0xc], ecx
mov dword [rax + 0x10], 1
mov qword [rax], 3
xor ebp, ebp
mov ebx, dword [rsp + 0x3c]
movzx edi, byte [rsp + 0x2f]
jmp 0x140044c64
lea rcx, [rsp + 0xda]
mov r8d, 0xd6
mov rdx, rbp
call sub.msvcrt.dll_memcpy
mov qword [rsp + 0xd0], rdi
mov byte [rsp + 0xd8], bl
mov byte [rsp + 0xd9], r14b
lea rcx, [rsp + 0xd0]
call fcn.140059d60
mov rax, qword [rsp + 0xc8]
movups xmm0, xmmword [rax + 0x50]
movaps xmmword [rsp + 0x120], xmm0
movups xmm0, xmmword [rax + 0x40]
movaps xmmword [rsp + 0x110], xmm0
movdqu xmm0, xmmword [rax]
movdqu xmm1, xmmword [rax + 0x10]
movdqu xmm2, xmmword [rax + 0x20]
movdqu xmm3, xmmword [rax + 0x30]
movdqa xmmword [rsp + 0x100], xmm3
movdqa xmmword [rsp + 0xf0], xmm2
movdqa xmmword [rsp + 0xe0], xmm1
movdqa xmmword [rsp + 0xd0], xmm0
lea rdx, [rsp + 0xd0]
mov r8d, 0xe0
mov rcx, qword [rsp + 0x40]
call sub.msvcrt.dll_memcpy
cmp qword [rsp + 0xb8], 0
mov rbx, qword [rsp + 0x50]
jne 0x14004562d
mov rax, qword [rsp + 0x208]
mov rax, qword [rax]
test rax, rax
je 0x14004562d
lea rcx, [rsi + 0x30]
mov rdx, qword [rsi + 0x20]
mov r8, qword [rsi + 0x28]
call qword [rax + 0x18]
cmp qword [rsp + 0x48], 0
mov rdi, qword [rsp + 0xb0]
jne 0x140045654
mov rax, qword [rbx]
test rax, rax
je 0x140045654
lea rcx, [rsi + 0x50]
mov rdx, qword [rsi + 0x40]
mov r8, qword [rsi + 0x48]
call qword [rax + 0x18]
mov rax, qword [rsi + 0x58]
test rax, rax
sete cl
mov edx, dword [rsp + 0xc4]
or dl, cl
jne 0x140045678
lea rcx, [rsi + 0x70]
mov rdx, qword [rsi + 0x60]
mov r8, qword [rsi + 0x68]
call qword [rax + 0x18]
test rdi, rdi
je 0x140044cf6
jmp 0x140044d17
mov ecx, 8
mov edx, 0x20
call fcn.140025820
jmp 0x1400456df
lea rcx, [0x1402254a0]
call fcn.14002c4a0
jmp 0x1400456df
mov ecx, 8
mov edx, 0x20
call fcn.140025820
jmp 0x1400456df
mov dword [rsp + 0x3c], ebx
mov ecx, 8
mov edx, 0x20
call fcn.140025820
jmp 0x1400456df
call fcn.1400257e0
jmp 0x1400456df
mov ecx, 1
mov rdx, r12
call fcn.1400257c0
ud2