Function at 0x140051430
Capabilities:
Access peb ldr_data
Encode data using xor
Hash data using fnv
Resolve function by parsing pe exports

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rsi
mov qword [rsp + 0x18], rdi
mov qword [rsp + 0x20], r12
push r13
push r14
push r15
sub rsp, 0x830
mov rax, qword [0x140143010]
xor rax, rsp
mov qword [rsp + 0x820], rax
mov ecx, 0x104
call fcn.1400c9a54
mov dword [rsp + 0x2a8], 0x40
mov dword [rsp + 0x2ac], 1
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
nop dword [rax]
nop dword [rax + rax]
mov r10, qword [rax + 0x30]
movsxd rcx, dword [r10 + 0x3c]
mov edi, dword [rcx + r10 + 0x88]
add rdi, r10
cmp rdi, r10
je 0x140052c2e
mov r9d, dword [rdi + 0x18]
test r9d, r9d
je 0x140052c2e
mov ebx, dword [rdi + 0x20]
nop dword [rax]
dec r9d
lea rcx, [rbx + r9*4]
mov ecx, dword [rcx + r10]
add rcx, r10
mov r8d, 0x811c9dc5
movzx edx, byte [rcx]
inc rcx
test dl, dl
je 0x140052c25
nop dword [rax]
nop word [rax + rax]
movsx edx, dl
xor edx, r8d
imul r8d, edx, 0x1000193
movzx edx, byte [rcx]
lea rcx, [rcx + 1]
test dl, dl
jne 0x140051500
cmp r8d, 0xe971d8a3
jne 0x140052c25
mov ecx, dword [rdi + 0x1c]
add rcx, r10
mov eax, dword [rdi + 0x24]
add rax, r10
movzx eax, word [rax + r9*2]
mov r9d, dword [rcx + rax*4]
add r9, r10
movabs rax, 0x1a3db348412560ea
mov qword [rsp + 0x30], rax
mov rax, qword [rsp + 0x30]
mov qword [rsp + 0x170], rax
movabs rax, 0xfd382d664fd07246
mov qword [rsp + 0x30], rax
mov rax, qword [rsp + 0x30]
mov qword [rsp + 0x178], rax
movabs rax, 0xaa59aa0879d6acd5
mov qword [rsp + 0x30], rax
mov rax, qword [rsp + 0x30]
mov qword [rsp + 0x180], rax
movabs rax, 0x532629735b1417a3
mov qword [rsp + 0x30], rax
mov rax, qword [rsp + 0x30]
mov qword [rsp + 0x188], rax
movabs rax, 0x228f9369a29c4773
mov qword [rsp + 0x30], rax
mov rax, qword [rsp + 0x30]
mov qword [rsp + 0x190], rax
movabs rax, 0x341c05395f87ca20
mov qword [rsp + 0x30], rax
mov rax, qword [rsp + 0x30]
mov qword [rsp + 0x198], rax
movabs rax, 0xc3062dbe6ff73226
mov qword [rsp + 0x30], rax
mov rax, qword [rsp + 0x30]
mov qword [rsp + 0x1a0], rax
movabs rax, 0x943132a2d120e935
mov qword [rsp + 0x30], rax
mov rax, qword [rsp + 0x30]
mov qword [rsp + 0x1a8], rax
movabs rax, 0x8ef50e27cafc1f73
mov qword [rsp + 0x30], rax
mov rax, qword [rsp + 0x30]
mov qword [rsp + 0x1b0], rax
movabs rcx, 0x4dee98bc01cff8a2
mov qword [rsp + 0x30], rcx
mov rax, qword [rsp + 0x30]
mov qword [rsp + 0x1b8], rax
movabs r14, 0x5f6ff21f15632fb9
mov qword [rsp + 0x30], r14
mov rax, qword [rsp + 0x30]
mov qword [rsp + 0x790], rax
movabs r15, 0x924b42142cb93f1a
mov qword [rsp + 0x30], r15
mov rax, qword [rsp + 0x30]
mov qword [rsp + 0x798], rax
movabs rax, 0xc53dc4612e8ad8b3
mov qword [rsp + 0x30], rax
mov rax, qword [rsp + 0x30]
mov qword [rsp + 0x7a0], rax
movabs rax, 0x36545b06184864d4
mov qword [rsp + 0x30], rax
mov rax, qword [rsp + 0x30]
mov qword [rsp + 0x7a8], rax
movabs rax, 0x4de6e01bc7ca331d
mov qword [rsp + 0x30], rax
mov rax, qword [rsp + 0x30]
mov qword [rsp + 0x7b0], rax
movabs rax, 0x406f6b5031d2964e
mov qword [rsp + 0x30], rax
mov rax, qword [rsp + 0x30]
mov qword [rsp + 0x7b8], rax
movabs rax, 0xa26359ed339b5e47
mov qword [rsp + 0x30], rax
mov rax, qword [rsp + 0x30]
mov qword [rsp + 0x7c0], rax
movabs rax, 0xa10312d2a161c958
mov qword [rsp + 0x30], rax
mov rax, qword [rsp + 0x30]
mov qword [rsp + 0x7c8], rax
movabs rax, 0x8ef50e27fac52b41
mov qword [rsp + 0x30], rax
mov rax, qword [rsp + 0x30]
mov qword [rsp + 0x7d0], rax
mov qword [rsp + 0x30], rcx
mov rax, qword [rsp + 0x30]
mov qword [rsp + 0x7d8], rax
movdqa xmm0, xmmword [rsp + 0x790]
pxor xmm0, xmmword [rsp + 0x170]
movdqa xmmword [rsp + 0x170], xmm0
movdqa xmm1, xmmword [rsp + 0x180]
pxor xmm1, xmmword [rsp + 0x7a0]
movdqa xmmword [rsp + 0x180], xmm1
movdqa xmm0, xmmword [rsp + 0x190]
pxor xmm0, xmmword [rsp + 0x7b0]
movdqa xmmword [rsp + 0x190], xmm0
movdqa xmm1, xmmword [rsp + 0x1a0]
pxor xmm1, xmmword [rsp + 0x7c0]
movdqa xmmword [rsp + 0x1a0], xmm1
movdqa xmm0, xmmword [rsp + 0x1b0]
pxor xmm0, xmmword [rsp + 0x7d0]
movdqa xmmword [rsp + 0x1b0], xmm0
lea r8, [rsp + 0x218]
lea rdx, [rsp + 0x170]
mov rcx, 0xffffffff80000002
call r9
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
nop word [rax + rax]
mov r9, qword [rax + 0x30]
movsxd rcx, dword [r9 + 0x3c]
mov ebx, dword [rcx + r9 + 0x88]
add rbx, r9
cmp rbx, r9
je 0x140052c1d
mov r10d, dword [rbx + 0x18]
test r10d, r10d
je 0x140052c1d
mov edi, dword [rbx + 0x20]
nop dword [rax]
dec r10d
lea rcx, [rdi + r10*4]
mov edx, dword [rcx + r9]
add rdx, r9
mov r8d, 0x811c9dc5
movzx ecx, byte [rdx]
inc rdx
test cl, cl
je 0x140052c14
nop dword [rax]
nop word [rax + rax]
movsx ecx, cl
xor ecx, r8d
imul r8d, ecx, 0x1000193
movzx ecx, byte [rdx]
lea rdx, [rdx + 1]
test cl, cl
jne 0x140051880
cmp r8d, 0x9027eb7c
jne 0x140052c14
mov ecx, dword [rbx + 0x1c]
add rcx, r9
mov eax, dword [rbx + 0x24]
add rax, r9
movzx eax, word [rax + r10*2]
mov ebx, dword [rcx + rax*4]
add rbx, r9
movabs rax, 0x13039e7e611041f0
mov qword [rsp + 0x30], rax
mov rax, qword [rsp + 0x30]
mov qword [rsp + 0x80], rax
movabs rax, 0x92252d7d58d85c75
mov qword [rsp + 0x30], rax
mov rax, qword [rsp + 0x30]
mov qword [rsp + 0x88], rax
mov qword [rsp + 0x30], r14
mov rax, qword [rsp + 0x30]
mov qword [rsp + 0x740], rax
mov qword [rsp + 0x30], r15
mov rax, qword [rsp + 0x30]
mov qword [rsp + 0x748], rax
movdqa xmm0, xmmword [rsp + 0x80]
pxor xmm0, xmmword [rsp + 0x740]
movdqa xmmword [rsp + 0x80], xmm0
xor esi, esi
mov qword [rsp + 0x38], rsi
mov qword [rsp + 0x48], rsi
mov qword [rsp + 0x50], 0xf
mov byte [rsp + 0x38], sil
lea rax, [rsp + 0x80]
mov r8, 0xffffffffffffffff
nop dword [rax]
inc r8
cmp byte [rax + r8], sil
jne 0x140051960
lea rdx, [rsp + 0x80]
lea rcx, [rsp + 0x38]
call fcn.14003a1a0
nop
lea rdx, [rsp + 0x38]
cmp qword [rsp + 0x50], 0x10
cmovae rdx, qword [rsp + 0x38]
lea rax, [rsp + 0x2a8]
mov qword [rsp + 0x28], rax
lea rax, [rsp + 0x7e0]
mov qword [rsp + 0x20], rax
lea r9, [rsp + 0x2ac]
xor r8d, r8d
mov rcx, qword [rsp + 0x218]
call rbx
nop
mov rdx, qword [rsp + 0x50]
cmp rdx, 0x10
jb 0x1400519fa
inc rdx
mov rcx, qword [rsp + 0x38]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400519f5
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140052c36
call fcn.1400c99b0
mov qword [rsp + 0x48], rsi
mov qword [rsp + 0x50], 0xf
mov byte [rsp + 0x38], 0
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
nop
mov r9, qword [rax + 0x30]
movsxd rcx, dword [r9 + 0x3c]
mov r11d, dword [rcx + r9 + 0x88]
add r11, r9
cmp r11, r9
je 0x140052c0c
mov r10d, dword [r11 + 0x18]
test r10d, r10d
je 0x140052c0c
mov edi, dword [r11 + 0x20]
nop dword [rax]
dec r10d
lea rcx, [rdi + r10*4]
mov edx, dword [rcx + r9]
add rdx, r9
mov r8d, 0x811c9dc5
movzx ecx, byte [rdx]
inc rdx
test cl, cl
je 0x140052c03
nop dword [rax]
nop word [rax + rax]
movsx ecx, cl
xor ecx, r8d
imul r8d, ecx, 0x1000193
movzx ecx, byte [rdx]
lea rdx, [rdx + 1]
test cl, cl
jne 0x140051a80
cmp r8d, 0x1242154a
jne 0x140052c03
mov ecx, dword [r11 + 0x1c]
add rcx, r9
mov eax, dword [r11 + 0x24]
add rax, r9
movzx eax, word [rax + r10*2]
mov edx, dword [rcx + rax*4]
add rdx, r9
mov rcx, qword [rsp + 0x218]
call rdx
xor edx, edx
mov r8d, pe_nt_image_headers64
lea rcx, [rsp + 0x2f0]
call fcn.1400cd320
lea rcx, [rsp + 0x2f0]
call fcn.140054f80
nop
mov qword [rsp + 0x220], rsi
mov qword [rsp + 0x230], rsi
mov qword [rsp + 0x238], 0xf
mov byte [rsp + 0x220], 0
movabs rax, 0x3603914372054ce5
mov qword [rsp + 0x30], rax
mov rax, qword [rsp + 0x30]
mov qword [rsp + 0x90], rax
movabs rax, 0x922c247702cd517f
mov qword [rsp + 0x30], rax
mov rax, qword [rsp + 0x30]
mov qword [rsp + 0x98], rax
mov qword [rsp + 0x30], r14
mov rax, qword [rsp + 0x30]
mov qword [rsp + 0x730], rax
mov qword [rsp + 0x30], r15
mov rax, qword [rsp + 0x30]
mov qword [rsp + 0x738], rax
movdqa xmm0, xmmword [rsp + 0x90]
pxor xmm0, xmmword [rsp + 0x730]
movdqa xmmword [rsp + 0x90], xmm0
mov qword [rsp + 0x2b0], rsi
mov qword [rsp + 0x2c0], rsi
mov qword [rsp + 0x2c8], 0xf
mov byte [rsp + 0x2b0], 0
lea rax, [rsp + 0x90]
mov r8, 0xffffffffffffffff
nop dword [rax]
inc r8
cmp byte [rax + r8], 0
jne 0x140051bc0
lea rdx, [rsp + 0x90]
lea rcx, [rsp + 0x2b0]
call fcn.14003a1a0
nop
mov qword [rsp + 0xa0], rsi
mov qword [rsp + 0xb0], rsi
mov qword [rsp + 0xb8], 0xf
mov byte [rsp + 0xa0], 0
lea rax, [rsp + 0x7e0]
mov r8, 0xffffffffffffffff
inc r8
cmp byte [rax + r8], 0
jne 0x140051c13
lea rdx, [rsp + 0x7e0]
lea rcx, [rsp + 0xa0]
call fcn.14003a1a0
nop
lea rdx, [rsp + 0x2b0]
cmp qword [rsp + 0x2c8], 0x10
cmovae rdx, qword [rsp + 0x2b0]
mov r8, qword [rsp + 0x2c0]
lea rcx, [rsp + 0xa0]
call fcn.14003a300
mov qword [rsp + 0x58], rsi
mov qword [rsp + 0x68], rsi
mov qword [rsp + 0x70], rsi
movups xmm0, xmmword [rax]
movups xmmword [rsp + 0x58], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rsp + 0x68], xmm1
mov qword [rax + 0x10], rsi
mov qword [rax + 0x18], 0xf
mov byte [rax], 0
lea rdx, [rsp + 0x58]
cmp qword [rsp + 0x70], 0x10
cmovae rdx, qword [rsp + 0x58]
mov r8d, 1
lea rcx, [rsp + 0x300]
call fcn.140056a80
test rax, rax
mov rax, qword [rsp + 0x2f0]
movsxd rcx, dword [rax + 4]
lea rax, [rsp + 0x2f0]
je 0x140051cf1
add rcx, rax
mov edx, 4
cmp qword [rcx + 0x48], 0
cmovne edx, esi
xor r8d, r8d
call fcn.14003eb20
mov ebx, 6
lea r15d, [rbx - 4]
jmp 0x140051d16
add rcx, rax
mov ebx, 6
mov edx, ebx
mov r15d, 2
cmp qword [rcx + 0x48], 0
cmovne edx, r15d
or edx, dword [rcx + 0x10]
xor r8d, r8d
call fcn.14003eb20
nop
mov rdx, qword [rsp + 0x70]
cmp rdx, 0x10
jb 0x140051d53
inc rdx
mov rcx, qword [rsp + 0x58]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140051d4e
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140052c3c
call fcn.1400c99b0
mov qword [rsp + 0x68], rsi
mov qword [rsp + 0x70], 0xf
mov byte [rsp + 0x58], 0
mov rdx, qword [rsp + 0xb8]
cmp rdx, 0x10
jb 0x140051da9
inc rdx
mov rcx, qword [rsp + 0xa0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140051da4
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140052c42
call fcn.1400c99b0
mov qword [rsp + 0xb0], rsi
mov qword [rsp + 0xb8], 0xf
mov byte [rsp + 0xa0], 0
movabs r12, 0x7fffffffffffffff
movabs r13, 0x924b42145ad65934
movabs r14, 0x2c0c9b7765025dde
mov rax, qword [rsp + 0x2f0]
movsxd rcx, dword [rax + 4]
mov rax, qword [rsp + rcx + 0x330]
mov rcx, qword [rax + 8]
mov qword [rsp + 0x1c8], rcx
mov rax, qword [rcx]
call qword [rax + 8]
nop
lea rcx, [rsp + 0x1c0]
call fcn.140057e60
mov rcx, rax
mov rax, qword [rax]
mov dl, 0xa
call qword [rax + 0x40]
movzx edi, al
mov rcx, qword [rsp + 0x1c8]
test rcx, rcx
je 0x140051e4e
mov rax, qword [rcx]
call qword [rax + 0x10]
test rax, rax
je 0x140051e4e
mov rcx, qword [rax]
mov r9, qword [rcx]
mov edx, 1
mov rcx, rax
call r9
movzx r8d, dil
lea rdx, [rsp + 0x220]
lea rcx, [rsp + 0x2f0]
call fcn.14005d730
mov rcx, qword [rax]
movsxd rdx, dword [rcx + 4]
test byte [rdx + rax + 0x10], 6
jne 0x140052a5d
mov qword [rsp + 0x30], r14
mov rax, qword [rsp + 0x30]
mov qword [rsp + 0xc0], rax
mov qword [rsp + 0x30], r13
mov rax, qword [rsp + 0x30]
mov qword [rsp + 0xc8], rax
movabs rdi, 0x5f6ff21f15632fb9
mov qword [rsp + 0x30], rdi
mov rax, qword [rsp + 0x30]
mov qword [rsp + 0x720], rax
movabs rax, 0x924b42142cb93f1a
mov qword [rsp + 0x30], rax
mov rax, qword [rsp + 0x30]
mov qword [rsp + 0x728], rax
movdqa xmm0, xmmword [rsp + 0xc0]
pxor xmm0, xmmword [rsp + 0x720]
movdqa xmmword [rsp + 0xc0], xmm0
lea rdx, [rsp + 0xc0]
lea rcx, [rsp + 0x220]
call fcn.140055220
cmp rax, 0xffffffffffffffff
je 0x140052225
mov qword [rsp + 0x248], rsi
mov qword [rsp + 0x258], rsi
mov qword [rsp + 0x260], rsi
mov rdi, qword [rsp + 0x230]
lea r14, [rsp + 0x220]
cmp qword [rsp + 0x238], 0x10
cmovae r14, qword [rsp + 0x220]
cmp rdi, 0x10
jae 0x140051f62
movups xmm0, xmmword [r14]
movups xmmword [rsp + 0x248], xmm0
mov esi, 0xf
jmp 0x140051fe1
mov qword [rsp + 0x1d0], r12
mov rsi, rdi
or rsi, 0xf
mov qword [rsp + 0x1e0], rsi
cmp rsi, r12
cmova rsi, r12
lea rcx, [rsi + 1]
cmp rcx, 0x1000
jb 0x140051fbc
lea rax, [rcx + 0x27]
cmp rax, rcx
jbe 0x140052c48
mov rcx, rax
call fcn.1400c9654
mov rcx, rax
test rax, rax
je 0x140052c59
add rax, 0x27
and rax, 0xffffffffffffffe0
mov qword [rax - 8], rcx
jmp 0x140051fca
test rcx, rcx
je 0x140051fc8
call fcn.1400c9654
jmp 0x140051fca
xor eax, eax
mov qword [rsp + 0x248], rax
lea r8, [rdi + 1]
mov rdx, r14
mov rcx, rax
call fcn.1400ccc70
mov qword [rsp + 0x260], rsi
mov qword [rsp + 0x258], rdi
lea r14, [rsp + 0x248]
cmp rsi, 0x10
setae r13b
mov r12, qword [rsp + 0x248]
cmovae r14, r12
cmp rdi, 1
jb 0x14005205d
lea rsi, [rdi + r14]
mov r8, rsi
sub r8, r14
mov edx, 0x20
mov rcx, r14
call fcn.1400cd4c0
test rax, rax
je 0x14005205d
nop
cmp byte [rax], 0x20
jne 0x140052039
xor ecx, ecx
jmp 0x14005203e
sbb ecx, ecx
or ecx, 1
test ecx, ecx
je 0x140052091
inc rax
mov r8, rsi
sub r8, rax
mov edx, 0x20
mov rcx, rax
call fcn.1400cd4c0
test rax, rax
jne 0x140052030
mov rax, 0xffffffffffffffff
lea rcx, [rax + 2]
xor esi, esi
mov qword [rsp + 0x150], rsi
mov qword [rsp + 0x160], rsi
mov qword [rsp + 0x168], 0xf
cmp rdi, rcx
jb 0x140052c4e
jmp 0x140052096
sub rax, r14
jmp 0x140052064
mov qword [rsp + 0x2e0], 0xffffffffffffffff
sub rdi, rcx
mov qword [rsp + 0x1e8], rdi
mov r8, 0xffffffffffffffff
cmp rdi, r8
cmovb r8, rdi
lea rdx, [rsp + 0x248]
test r13b, r13b
cmovne rdx, r12
add rdx, rcx
lea rcx, [rsp + 0x150]
call fcn.14003a1a0
mov rdx, qword [rsp + 0x260]
cmp rdx, 0x10
jb 0x14005211d
inc rdx
mov rcx, qword [rsp + 0x248]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140052118
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140052c53
call fcn.1400c99b0
movups xmm0, xmmword [rsp + 0x150]
movups xmmword [rsp + 0x248], xmm0
movups xmm1, xmmword [rsp + 0x160]
movups xmmword [rsp + 0x258], xmm1
mov qword [rsp + 0x160], rsi
mov qword [rsp + 0x168], 0xf
mov byte [rsp + 0x150], sil
xor edx, edx
mov r8d, 0xf8
lea rcx, [rsp + 0x420]
call fcn.1400cd320
lea rdx, [rsp + 0x248]
lea rcx, [rsp + 0x420]
call fcn.1400533c0
nop
mov eax, dword [0x14015c1e4]
mov dword [rsp + 0x240], eax
lea rdx, [rsp + 0x240]
lea rcx, [rsp + 0x420]
call fcn.1400589f0
mov eax, dword [rsp + 0x240]
mov dword [0x14015c1e4], eax
lea rcx, [rsp + 0x420]
call fcn.140052ca0
nop
mov rdx, qword [rsp + 0x260]
cmp rdx, 0x10
jb 0x140052204
inc rdx
mov rcx, qword [rsp + 0x248]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400521ff
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140052c59
call fcn.1400c99b0
mov qword [rsp + 0x258], rsi
mov qword [rsp + 0x260], 0xf
mov byte [rsp + 0x248], 0
jmp 0x140051dc5
movabs rax, 0x3a1cdc6b601341d0
mov qword [rsp + 0x30], rax
mov rax, qword [rsp + 0x30]
mov qword [rsp + 0x130], rax
movabs rax, 0xe622347d58d04c74
mov qword [rsp + 0x30], rax
mov rax, qword [rsp + 0x30]
mov qword [rsp + 0x138], rax
movabs rax, 0xc53dc4612e8ad8ca
mov qword [rsp + 0x30], rax
mov rax, qword [rsp + 0x30]
mov qword [rsp + 0x140], rax
movabs rcx, 0x36545b06184864d4
mov qword [rsp + 0x30], rcx
mov rax, qword [rsp + 0x30]
mov qword [rsp + 0x148], rax
mov qword [rsp + 0x30], rdi
mov rax, qword [rsp + 0x30]
mov qword [rsp + 0x750], rax
movabs rax, 0x924b42142cb93f1a
mov qword [rsp + 0x30], rax
mov rax, qword [rsp + 0x30]
mov qword [rsp + 0x758], rax
movabs rax, 0xc53dc4612e8ad8b3
mov qword [rsp + 0x30], rax
mov rax, qword [rsp + 0x30]
mov qword [rsp + 0x760], rax
mov qword [rsp + 0x30], rcx
mov rax, qword [rsp + 0x30]
mov qword [rsp + 0x768], rax
movdqa xmm0, xmmword [rsp + 0x130]
pxor xmm0, xmmword [rsp + 0x750]
movdqa xmmword [rsp + 0x130], xmm0
movdqa xmm1, xmmword [rsp + 0x140]
pxor xmm1, xmmword [rsp + 0x760]
movdqa xmmword [rsp + 0x140], xmm1
lea rdx, [rsp + 0x130]
lea rcx, [rsp + 0x220]
call fcn.140055220
cmp rax, 0xffffffffffffffff
je 0x140052641
mov qword [rsp + 0x268], rsi
mov qword [rsp + 0x278], rsi
mov qword [rsp + 0x280], rsi
mov rdi, qword [rsp + 0x230]
lea r14, [rsp + 0x220]
cmp qword [rsp + 0x238], 0x10
cmovae r14, qword [rsp + 0x220]
cmp rdi, 0x10
jae 0x140052399
movups xmm0, xmmword [r14]
movups xmmword [rsp + 0x268], xmm0
mov esi, 0xf
jmp 0x140052418
mov qword [rsp + 0x1f0], r12
mov rsi, rdi
or rsi, 0xf
mov qword [rsp + 0x1d8], rsi
cmp rsi, r12
cmova rsi, r12
lea rcx, [rsi + 1]
cmp rcx, 0x1000
jb 0x1400523f3
lea rax, [rcx + 0x27]
cmp rax, rcx
jbe 0x140052c5f
mov rcx, rax
call fcn.1400c9654
mov rcx, rax
test rax, rax
je 0x140052c70
add rax, 0x27
and rax, 0xffffffffffffffe0
mov qword [rax - 8], rcx
jmp 0x140052401
test rcx, rcx
je 0x1400523ff
call fcn.1400c9654
jmp 0x140052401
xor eax, eax
mov qword [rsp + 0x268], rax
lea r8, [rdi + 1]
mov rdx, r14
mov rcx, rax
call fcn.1400ccc70
mov qword [rsp + 0x280], rsi
mov qword [rsp + 0x278], rdi
lea r14, [rsp + 0x268]
cmp rsi, 0x10
setae r13b
mov r12, qword [rsp + 0x268]
cmovae r14, r12
cmp rdi, 1
jb 0x140052493
lea rsi, [r14 + rdi]
mov r8, rsi
sub r8, r14
mov edx, 0x20
mov rcx, r14
call fcn.1400cd4c0
test rax, rax
je 0x140052493
cmp byte [rax], 0x20
jne 0x14005246f
xor ecx, ecx
jmp 0x140052474
sbb ecx, ecx
or ecx, 1
test ecx, ecx
je 0x1400524c7
inc rax
mov r8, rsi
sub r8, rax
mov edx, 0x20
mov rcx, rax
call fcn.1400cd4c0
test rax, rax
jne 0x140052466
mov rax, 0xffffffffffffffff
lea rcx, [rax + 2]
xor esi, esi
mov qword [rsp + 0x110], rsi
mov qword [rsp + 0x120], rsi
mov qword [rsp + 0x128], 0xf
cmp rdi, rcx
jb 0x140052c65
jmp 0x1400524cc
sub rax, r14
jmp 0x14005249a
mov qword [rsp + 0x2d8], 0xffffffffffffffff
sub rdi, rcx
mov qword [rsp + 0x1f8], rdi
mov r8, 0xffffffffffffffff
cmp rdi, r8
cmovb r8, rdi
lea rdx, [rsp + 0x268]
test r13b, r13b
cmovne rdx, r12
add rdx, rcx
lea rcx, [rsp + 0x110]
call fcn.14003a1a0
mov rdx, qword [rsp + 0x280]
cmp rdx, 0x10
jb 0x140052553
inc rdx
mov rcx, qword [rsp + 0x268]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14005254e
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140052c6a
call fcn.1400c99b0
movups xmm0, xmmword [rsp + 0x110]
movups xmmword [rsp + 0x268], xmm0
movups xmm1, xmmword [rsp + 0x120]
movups xmmword [rsp + 0x278], xmm1
mov qword [rsp + 0x120], rsi
mov qword [rsp + 0x128], 0xf
mov byte [rsp + 0x110], sil
xor edx, edx
mov r8d, 0xf8
lea rcx, [rsp + 0x520]
call fcn.1400cd320
lea rdx, [rsp + 0x268]
lea rcx, [rsp + 0x520]
call fcn.1400533c0
nop
lea rdx, [0x14015c084]
lea rcx, [rsp + 0x520]
call fcn.140058840
nop
lea rcx, [rsp + 0x520]
call fcn.140052ca0
nop
mov rdx, qword [rsp + 0x280]
cmp rdx, 0x10
jb 0x140052620
inc rdx
mov rcx, qword [rsp + 0x268]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14005261b
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140052c70
call fcn.1400c99b0
mov qword [rsp + 0x278], rsi
mov qword [rsp + 0x280], 0xf
mov byte [rsp + 0x268], 0
jmp 0x140051dc5
movabs rax, 0x3b0edc6b601341d0
mov qword [rsp + 0x30], rax
mov rax, qword [rsp + 0x30]
mov qword [rsp + 0xf0], rax
movabs rax, 0xe622317a49ca6069
mov qword [rsp + 0x30], rax
mov rax, qword [rsp + 0x30]
mov qword [rsp + 0xf8], rax
movabs rax, 0xc53dc4185ae3aeda
mov qword [rsp + 0x30], rax
mov rax, qword [rsp + 0x30]
mov qword [rsp + 0x100], rax
movabs rcx, 0x36545b06184864d4
mov qword [rsp + 0x30], rcx
mov rax, qword [rsp + 0x30]
mov qword [rsp + 0x108], rax
mov qword [rsp + 0x30], rdi
mov rax, qword [rsp + 0x30]
mov qword [rsp + 0x770], rax
movabs rax, 0x924b42142cb93f1a
mov qword [rsp + 0x30], rax
mov rax, qword [rsp + 0x30]
mov qword [rsp + 0x778], rax
movabs rax, 0xc53dc4612e8ad8b3
mov qword [rsp + 0x30], rax
mov rax, qword [rsp + 0x30]
mov qword [rsp + 0x780], rax
mov qword [rsp + 0x30], rcx
mov rax, qword [rsp + 0x30]
mov qword [rsp + 0x788], rax
movdqa xmm0, xmmword [rsp + 0xf0]
pxor xmm0, xmmword [rsp + 0x770]
movdqa xmmword [rsp + 0xf0], xmm0
movdqa xmm1, xmmword [rsp + 0x100]
pxor xmm1, xmmword [rsp + 0x780]
movdqa xmmword [rsp + 0x100], xmm1
lea rdx, [rsp + 0xf0]
lea rcx, [rsp + 0x220]
call fcn.140055220
cmp rax, 0xffffffffffffffff
je 0x140051de3
mov qword [rsp + 0x288], rsi
mov qword [rsp + 0x298], rsi
mov qword [rsp + 0x2a0], rsi
mov rdi, qword [rsp + 0x230]
lea r14, [rsp + 0x220]
cmp qword [rsp + 0x238], 0x10
cmovae r14, qword [rsp + 0x220]
cmp rdi, 0x10
jae 0x1400527b5
movups xmm0, xmmword [r14]
movups xmmword [rsp + 0x288], xmm0
mov esi, 0xf
jmp 0x140052834
mov qword [rsp + 0x200], r12
mov rsi, rdi
or rsi, 0xf
mov qword [rsp + 0x208], rsi
cmp rsi, r12
cmova rsi, r12
lea rcx, [rsi + 1]
cmp rcx, 0x1000
jb 0x14005280f
lea rax, [rcx + 0x27]
cmp rax, rcx
jbe 0x140052c76
mov rcx, rax
call fcn.1400c9654
mov rcx, rax
test rax, rax
je 0x140052c87
add rax, 0x27
and rax, 0xffffffffffffffe0
mov qword [rax - 8], rcx
jmp 0x14005281d
test rcx, rcx
je 0x14005281b
call fcn.1400c9654
jmp 0x14005281d
xor eax, eax
mov qword [rsp + 0x288], rax
lea r8, [rdi + 1]
mov rdx, r14
mov rcx, rax
call fcn.1400ccc70
mov qword [rsp + 0x2a0], rsi
mov qword [rsp + 0x298], rdi
lea r14, [rsp + 0x288]
cmp rsi, 0x10
setae r13b
mov r12, qword [rsp + 0x288]
cmovae r14, r12
cmp rdi, 1
jb 0x1400528af
lea rsi, [r14 + rdi]
mov r8, rsi
sub r8, r14
mov edx, 0x20
mov rcx, r14
call fcn.1400cd4c0
test rax, rax
je 0x1400528af
cmp byte [rax], 0x20
jne 0x14005288b
xor ecx, ecx
jmp 0x140052890
sbb ecx, ecx
or ecx, 1
test ecx, ecx
je 0x1400528e3
inc rax
mov r8, rsi
sub r8, rax
mov edx, 0x20
mov rcx, rax
call fcn.1400cd4c0
test rax, rax
jne 0x140052882
mov rax, 0xffffffffffffffff
lea rcx, [rax + 2]
xor esi, esi
mov qword [rsp + 0xd0], rsi
mov qword [rsp + 0xe0], rsi
mov qword [rsp + 0xe8], 0xf
cmp rdi, rcx
jb 0x140052c7c
jmp 0x1400528e8
sub rax, r14
jmp 0x1400528b6
mov qword [rsp + 0x2d0], 0xffffffffffffffff
sub rdi, rcx
mov qword [rsp + 0x210], rdi
mov r8, 0xffffffffffffffff
cmp rdi, r8
cmovb r8, rdi
lea rdx, [rsp + 0x288]
test r13b, r13b
cmovne rdx, r12
add rdx, rcx
lea rcx, [rsp + 0xd0]
call fcn.14003a1a0
mov rdx, qword [rsp + 0x2a0]
cmp rdx, 0x10
jb 0x14005296f
inc rdx
mov rcx, qword [rsp + 0x288]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14005296a
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140052c81
call fcn.1400c99b0
movups xmm0, xmmword [rsp + 0xd0]
movups xmmword [rsp + 0x288], xmm0
movups xmm1, xmmword [rsp + 0xe0]
movups xmmword [rsp + 0x298], xmm1
mov qword [rsp + 0xe0], rsi
mov qword [rsp + 0xe8], 0xf
mov byte [rsp + 0xd0], sil
xor edx, edx
mov r8d, 0xf8
lea rcx, [rsp + 0x620]
call fcn.1400cd320
lea rdx, [rsp + 0x288]
lea rcx, [rsp + 0x620]
call fcn.1400533c0
nop
lea rdx, [0x14015c08c]
lea rcx, [rsp + 0x620]
call fcn.140058840
nop
lea rcx, [rsp + 0x620]
call fcn.140052ca0
nop
mov rdx, qword [rsp + 0x2a0]
cmp rdx, 0x10
jb 0x140052a3c
inc rdx
mov rcx, qword [rsp + 0x288]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140052a37
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140052c87
call fcn.1400c99b0
mov qword [rsp + 0x298], rsi
mov qword [rsp + 0x2a0], 0xf
mov byte [rsp + 0x288], 0
jmp 0x140051dc5
mov rdx, qword [rsp + 0x2c8]
cmp rdx, 0x10
jb 0x140052aa1
inc rdx
mov rcx, qword [rsp + 0x2b0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140052a9b
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140052c8d
call fcn.1400c99b0
nop
lea rcx, [rsp + 0x300]
call fcn.140056990
test rax, rax
jne 0x140052ae1
mov rax, qword [rsp + 0x2f0]
movsxd rcx, dword [rax + 4]
lea rax, [rsp + 0x2f0]
add rcx, rax
cmp qword [rcx + 0x48], 0
cmovne ebx, r15d
or ebx, dword [rcx + 0x10]
xor r8d, r8d
mov edx, ebx
call fcn.14003eb20
nop
mov rdx, qword [rsp + 0x238]
cmp rdx, 0x10
jb 0x140052b24
inc rdx
mov rcx, qword [rsp + 0x220]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140052b1f
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140052c93
call fcn.1400c99b0
mov qword [rsp + 0x230], rsi
mov qword [rsp + 0x238], 0xf
mov byte [rsp + 0x220], 0
mov rax, qword [rsp + 0x2f0]
movsxd rcx, dword [rax + 4]
lea rax, vtable.std::basic_ifstream_char__struct_std::char_traits_char__.0
mov qword [rsp + rcx + 0x2f0], rax
mov rax, qword [rsp + 0x2f0]
movsxd rcx, dword [rax + 4]
lea edx, [rcx - 0xb0]
mov dword [rsp + rcx + 0x2ec], edx
lea rcx, [rsp + 0x300]
call fcn.140054af0
mov rax, qword [rsp + 0x2f0]
movsxd rcx, dword [rax + 4]
lea rax, vtable.std::basic_istream_char__struct_std::char_traits_char__.0
mov qword [rsp + rcx + 0x2f0], rax
mov rax, qword [rsp + 0x2f0]
movsxd rcx, dword [rax + 4]
lea edx, [rcx - 0x18]
mov dword [rsp + rcx + 0x2ec], edx
lea rax, vtable.std::ios_base.0
mov qword [rsp + 0x3a0], rax
lea rcx, [rsp + 0x3a0]
call fcn.1400cae8c
nop
xor eax, eax
mov rcx, qword [rsp + 0x820]
xor rcx, rsp
call fcn.1400c9100
lea r11, [rsp + 0x830]
mov rbx, qword [r11 + 0x20]
mov rsi, qword [r11 + 0x28]
mov rdi, qword [r11 + 0x30]
mov r12, qword [r11 + 0x38]
mov rsp, r11
pop r15
pop r14
pop r13
ret
test r10d, r10d
jne 0x140051a50
mov rax, qword [rax]
jmp 0x140051a20
test r10d, r10d
jne 0x140051850
mov rax, qword [rax]
jmp 0x140051820
test r9d, r9d
jne 0x1400514d0
mov rax, qword [rax]
jmp 0x1400514a0
call fcn.1400dbdd4
nop
call fcn.1400dbdd4
nop
call fcn.1400dbdd4
int3
call fcn.14000bf20
nop
call fcn.14003d4f0
call fcn.1400dbdd4
nop
call fcn.1400dbdd4
int3
call fcn.14000bf20
nop
call fcn.14003d4f0
call fcn.1400dbdd4
nop
call fcn.1400dbdd4
int3
call fcn.14000bf20
nop
call fcn.14003d4f0
call fcn.1400dbdd4
nop
call fcn.1400dbdd4
nop
call fcn.1400dbdd4
nop
call fcn.1400dbdd4
int3