Function at 0x140041480
Capabilities:
Access peb ldr_data
Encode data using xor
Parse pe header
Resolve function by parsing pe exports

Disassembly:
mov qword [rsp + 0x18], rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x120]
sub rsp, 0x220
mov rax, qword [0x140181020]
xor rax, rsp
mov qword [rbp + 0x110], rax
mov r14, rdx
mov qword [rbp - 0x78], rdx
mov qword [rbp - 0x80], rcx
mov qword [rbp + 0xa8], rcx
mov qword [rbp + 0x10], rdx
lea rcx, [rsp + 0x40]
call fcn.14004f120
mov rbx, rax
movsx edi, byte [rax]
mov ecx, edi
call fcn.140014160
add edi, eax
cmp edi, 0xfffffff0
jg 0x1400414ee
mov edx, 0x84
call fcn.140052d80
cmp edi, 0xffffffb7
jg 0x1400414fd
mov edx, 0x9d
call fcn.140052d80
imul edi, edi, 0x5bd1e995
xor r9d, r9d
lea r8, [rbx + 4]
mov r10, r8
mov esi, 8
mov r11d, esi
nop word [rax + rax]
mov eax, edi
shr eax, 0x18
xor eax, edi
imul ecx, eax, 0x5bd1e995
xor ecx, r9d
imul edx, ecx, 0x286a90b9
xor edx, 0xaa2a7357
mov eax, edx
shr eax, 0xd
xor eax, edx
imul ecx, eax, 0x5bd1e995
mov eax, ecx
shr eax, 0xf
xor eax, ecx
mov dword [r10], eax
add r9d, 0x5bd1e995
lea r10, [r10 + 4]
sub r11, 1
jne 0x140041520
mov r9d, dword [0x14018719c]
mov rdx, qword [rbx + 0x28]
call fcn.1400525a0
mov rdx, rax
test rax, rax
je 0x1400415a3
mov rcx, rdx
mov r8d, 0xc
nop word [rax + rax]
movzx eax, byte [rbx]
xor byte [rcx], al
lea rcx, [rcx + 1]
sub r8, 1
jne 0x140041590
mov byte [rdx + 0xc], r8b
mov rcx, r14
call fcn.140005750
xorps xmm0, xmm0
movups xmmword [rbp - 0x10], xmm0
mov r12, r14
cmp qword [r14 + 0x18], 0x10
jb 0x1400415bf
mov r12, qword [r14]
lea rcx, [rbp + 0xd0]
call fcn.14004f270
mov rbx, rax
movsx edi, byte [rax]
mov ecx, edi
call fcn.140014160
add edi, eax
cmp edi, 0xfffffff0
jg 0x1400415e9
mov edx, 0x84
call fcn.140052d80
cmp edi, 0xffffffb7
jg 0x1400415f8
mov edx, 0x9d
call fcn.140052d80
imul edi, edi, 0x5bd1e995
xor r9d, r9d
lea r8, [rbx + 4]
mov r10, r8
mov r11, rsi
nop dword [rax + rax]
mov eax, edi
shr eax, 0x18
xor eax, edi
imul ecx, eax, 0x5bd1e995
xor ecx, r9d
imul edx, ecx, 0x286a90b9
xor edx, 0xaa2a7357
mov eax, edx
shr eax, 0xd
xor eax, edx
imul ecx, eax, 0x5bd1e995
mov eax, ecx
shr eax, 0xf
xor eax, ecx
mov dword [r10], eax
add r9d, 0x5bd1e995
lea r10, [r10 + 4]
sub r11, 1
jne 0x140041610
mov r9d, dword [0x14018719c]
mov rdx, qword [rbx + 0x28]
call fcn.1400525a0
mov rdi, rax
test rax, rax
je 0x1400416b1
movzx eax, byte [rbx]
xor byte [rdi], al
movzx eax, byte [rbx]
xor byte [rdi + 1], al
movzx eax, byte [rbx]
xor byte [rdi + 2], al
movzx eax, byte [rbx]
xor byte [rdi + 3], al
movzx eax, byte [rbx]
xor byte [rdi + 4], al
movzx eax, byte [rbx]
xor byte [rdi + 5], al
movzx eax, byte [rbx]
xor byte [rdi + 6], al
movzx eax, byte [rbx]
xor byte [rdi + 7], al
movzx eax, byte [rbx]
xor byte [rdi + 8], al
movzx eax, byte [rbx]
xor byte [rdi + 9], al
movzx eax, byte [rbx]
xor byte [rdi + 0xa], al
mov byte [rdi + 0xb], 0
mov rax, qword gs:[0x60]
mov rcx, qword [rax + 0x18]
mov rax, qword [rcx + 0x10]
mov rsi, qword [rax]
mov eax, 0x5a4d
cmp qword [rsi + 0x60], 0
je 0x140041782
mov r11, qword [rsi + 0x30]
mov rsi, qword [rsi]
test r11, r11
je 0x1400416ca
cmp word [r11], ax
jne 0x140041782
movsxd rax, dword [r11 + 0x3c]
cmp dword [rax + r11], 0x4550
jne 0x140041782
mov ecx, dword [rax + r11 + 0x88]
test ecx, ecx
je 0x140041782
lea rax, [r11 + rcx]
mov r14d, dword [rax + 0x1c]
add r14, r11
mov r9d, dword [rax + 0x20]
add r9, r11
mov r15d, dword [rax + 0x24]
add r15, r11
xor r10d, r10d
mov ebx, dword [rax + 0x18]
test ebx, ebx
je 0x1400416c5
nop dword [rax]
xor r8b, r8b
mov ecx, dword [r9]
add rcx, r11
cmp byte [rcx], r8b
je 0x140041771
mov rdx, rdi
sub rdx, rcx
movzx eax, byte [rcx + rdx]
test al, al
je 0x14004176c
cmp byte [rcx], al
jne 0x140041771
mov r8b, 1
inc rcx
cmp byte [rcx], 0
jne 0x140041744
movsxd rax, r10d
movzx ecx, word [r15 + rax*2]
mov eax, dword [r14 + rcx*4]
add rax, r11
jmp 0x140041784
test r8b, r8b
jne 0x14004175b
inc r10d
add r9, 4
cmp r10d, ebx
jb 0x140041730
jmp 0x1400416c5
xor eax, eax
mov dword [rsp + 0x30], 0
mov dword [rsp + 0x28], 0x80
mov dword [rsp + 0x20], 3
xor r9d, r9d
mov edx, 0x80000000
lea r8d, [r9 + 1]
mov rcx, r12
call rax
mov r13, rax
mov rdi, 0xffffffffffffffff
cmp rax, rdi
je 0x140042713
lea rcx, [rsp + 0x40]
call fcn.14004f3d0
mov rbx, rax
movsx edi, byte [rax]
mov ecx, edi
call fcn.140014160
add edi, eax
cmp edi, 0xfffffff0
jg 0x1400417e8
mov edx, 0x84
call fcn.140052d80
cmp edi, 0xffffffb7
jg 0x1400417f7
mov edx, 0x9d
call fcn.140052d80
imul edi, edi, 0x5bd1e995
xor r9d, r9d
lea r8, [rbx + 4]
mov r10, r8
lea r11d, [r9 + 8]
nop dword [rax + rax]
mov eax, edi
shr eax, 0x18
xor eax, edi
imul ecx, eax, 0x5bd1e995
xor ecx, r9d
imul edx, ecx, 0x286a90b9
xor edx, 0xaa2a7357
mov eax, edx
shr eax, 0xd
xor eax, edx
imul ecx, eax, 0x5bd1e995
mov eax, ecx
shr eax, 0xf
xor eax, ecx
mov dword [r10], eax
add r9d, 0x5bd1e995
lea r10, [r10 + 4]
sub r11, 1
jne 0x140041810
mov r9d, dword [0x14018719c]
mov rdx, qword [rbx + 0x28]
call fcn.1400525a0
mov rdi, rax
test rax, rax
je 0x1400418b1
movzx eax, byte [rbx]
xor byte [rdi], al
movzx eax, byte [rbx]
xor byte [rdi + 1], al
movzx eax, byte [rbx]
xor byte [rdi + 2], al
movzx eax, byte [rbx]
xor byte [rdi + 3], al
movzx eax, byte [rbx]
xor byte [rdi + 4], al
movzx eax, byte [rbx]
xor byte [rdi + 5], al
movzx eax, byte [rbx]
xor byte [rdi + 6], al
movzx eax, byte [rbx]
xor byte [rdi + 7], al
movzx eax, byte [rbx]
xor byte [rdi + 8], al
movzx eax, byte [rbx]
xor byte [rdi + 9], al
movzx eax, byte [rbx]
xor byte [rdi + 0xa], al
mov byte [rdi + 0xb], 0
mov rax, qword gs:[0x60]
mov rcx, qword [rax + 0x18]
mov rax, qword [rcx + 0x10]
mov rsi, qword [rax]
cmp qword [rsi + 0x60], 0
je 0x140041986
mov r11, qword [rsi + 0x30]
mov rsi, qword [rsi]
test r11, r11
je 0x1400418c5
mov r14d, 0x5a4d
cmp word [r11], r14w
jne 0x140041982
movsxd rax, dword [r11 + 0x3c]
cmp dword [rax + r11], 0x4550
jne 0x140041982
mov ecx, dword [rax + r11 + 0x88]
test ecx, ecx
je 0x140041982
lea rax, [r11 + rcx]
mov r14d, dword [rax + 0x1c]
add r14, r11
mov r9d, dword [rax + 0x20]
add r9, r11
mov r15d, dword [rax + 0x24]
add r15, r11
xor r10d, r10d
mov ebx, dword [rax + 0x18]
test ebx, ebx
je 0x1400418c5
nop dword [rax]
xor r8b, r8b
mov ecx, dword [r9]
add rcx, r11
cmp byte [rcx], r8b
je 0x140041971
mov rdx, rdi
sub rdx, rcx
movzx eax, byte [rcx + rdx]
test al, al
je 0x14004196c
cmp byte [rcx], al
jne 0x140041971
mov r8b, 1
inc rcx
cmp byte [rcx], 0
jne 0x140041944
movsxd rax, r10d
movzx ecx, word [r15 + rax*2]
mov eax, dword [r14 + rcx*4]
add rax, r11
jmp 0x140041988
test r8b, r8b
jne 0x14004195b
inc r10d
add r9, 4
cmp r10d, ebx
jb 0x140041930
jmp 0x1400418c5
xor eax, eax
jmp 0x14004198e
xor eax, eax
mov r14d, 0x5a4d
xor edx, edx
mov rcx, r13
call rax
mov r12d, eax
xorps xmm0, xmm0
xor eax, eax
movdqu xmmword [rbp + 0x38], xmm0
mov qword [rbp + 0x48], rax
test r12d, r12d
je 0x140041a06
cmp r12, 0x1000
jb 0x1400419e1
lea rcx, [r12 + 0x27]
cmp rcx, r12
jbe 0x140042914
call fcn.14012f630
mov rcx, rax
test rax, rax
je 0x14004290e
add rax, 0x27
and rax, 0xffffffffffffffe0
mov qword [rax - 8], rcx
jmp 0x1400419e9
mov rcx, r12
call fcn.14012f630
mov qword [rbp + 0x38], rax
lea rbx, [rax + r12]
mov qword [rbp + 0x48], rbx
mov r8, r12
xor edx, edx
mov rcx, rax
call fcn.140131fa0
mov qword [rbp + 0x40], rbx
mov cl, 0x1e
mov byte [rsp + 0x40], cl
mov dword [rsp + 0x70], 0x7a7f7b4c
mov dword [rsp + 0x74], 0x7b727758
xor eax, eax
mov byte [rsp + 0x78], al
movsx ebx, cl
mov ecx, ebx
call fcn.140014160
add ebx, eax
cmp ebx, 0xfffffff0
jg 0x140041a3d
mov edx, 0x84
call fcn.140052d80
cmp ebx, 0xffffffb7
jg 0x140041a4c
mov edx, 0x9d
call fcn.140052d80
imul r11d, ebx, 0x5bd1e995
xor r8d, r8d
lea r9, [rsp + 0x44]
mov esi, 8
mov r10d, esi
nop dword [rax]
nop word [rax + rax]
mov eax, r11d
shr eax, 0x18
xor eax, r11d
imul ecx, eax, 0x5bd1e995
xor ecx, r8d
imul edx, ecx, 0x286a90b9
xor edx, 0xaa2a7357
mov eax, edx
shr eax, 0xd
xor eax, edx
imul ecx, eax, 0x5bd1e995
mov eax, ecx
shr eax, 0xf
xor eax, ecx
mov dword [r9], eax
add r8d, 0x5bd1e995
lea r9, [r9 + 4]
sub r10, 1
jne 0x140041a70
mov eax, esi
inc eax
test al, 0xf
jne 0x140041ab8
mov qword [0x140187190], 0
lea edi, [rax + 8]
mov edx, edi
call fcn.140052d80
mov rbx, rax
mov qword [0x140187190], rax
test rax, rax
je 0x140041b1c
mov dword [0x14018719c], edi
mov dword [0x140187198], esi
mov dword [rax], edi
mov eax, dword [0x140187198]
mov dword [rbx + 4], eax
mov rax, qword [rsp + 0x70]
mov qword [rbx + 8], rax
mov edx, dword [0x14018719c]
add edx, 0xfffffff8
lea rcx, [rbx + 8]
lea r9, [rsp + 0x44]
mov r8b, 1
call fcn.140052470
mov qword [rsp + 0x68], rbx
movsx ebx, byte [rsp + 0x40]
mov ecx, ebx
call fcn.140014160
add ebx, eax
cmp ebx, 0xfffffff0
jg 0x140041b3e
mov edx, 0x84
call fcn.140052d80
cmp ebx, 0xffffffb7
jg 0x140041b4d
mov edx, 0x9d
call fcn.140052d80
imul r11d, ebx, 0x5bd1e995
xor r8d, r8d
lea r9, [rsp + 0x44]
mov r10, rsi
nop
mov eax, r11d
shr eax, 0x18
xor eax, r11d
imul ecx, eax, 0x5bd1e995
xor ecx, r8d
imul edx, ecx, 0x286a90b9
xor edx, 0xaa2a7357
mov eax, edx
shr eax, 0xd
xor eax, edx
imul ecx, eax, 0x5bd1e995
mov eax, ecx
shr eax, 0xf
xor eax, ecx
mov dword [r9], eax
add r8d, 0x5bd1e995
lea r9, [r9 + 4]
sub r10, 1
jne 0x140041b60
mov r9d, dword [0x14018719c]
lea r8, [rsp + 0x44]
mov rdx, qword [rsp + 0x68]
call fcn.1400525a0
mov rbx, rax
test rax, rax
je 0x140041be4
movzx eax, byte [rsp + 0x40]
xor byte [rbx], al
xor byte [rbx + 1], al
xor byte [rbx + 2], al
xor byte [rbx + 3], al
xor byte [rbx + 4], al
xor byte [rbx + 5], al
xor byte [rbx + 6], al
xor byte [rbx + 7], al
mov byte [rbx + 8], 0
mov rax, qword gs:[0x60]
mov rcx, qword [rax + 0x18]
mov rax, qword [rcx + 0x10]
mov rsi, qword [rax]
cmp qword [rsi + 0x60], 0
je 0x140041ccf
nop dword [rax]
nop word [rax + rax]
mov r11, qword [rsi + 0x30]
mov rsi, qword [rsi]
test r11, r11
je 0x140041cbd
cmp word [r11], r14w
jne 0x140041ccf
movsxd rax, dword [r11 + 0x3c]
cmp dword [rax + r11], 0x4550
jne 0x140041ccf
mov ecx, dword [rax + r11 + 0x88]
test ecx, ecx
je 0x140041ccf
lea rax, [r11 + rcx]
mov r14d, dword [rax + 0x1c]
add r14, r11
mov r9d, dword [rax + 0x20]
add r9, r11
mov r15d, dword [rax + 0x24]
add r15, r11
xor r10d, r10d
mov edi, dword [rax + 0x18]
test edi, edi
je 0x140041cbd
nop
xor r8b, r8b
mov ecx, dword [r9]
add rcx, r11
cmp byte [rcx], r8b
je 0x140041cb1
mov rdx, rbx
sub rdx, rcx
movzx eax, byte [rcx + rdx]
test al, al
je 0x140041cac
cmp byte [rcx], al
jne 0x140041cb1
mov r8b, 1
inc rcx
cmp byte [rcx], 0
jne 0x140041c84
movsxd rax, r10d
movzx ecx, word [r15 + rax*2]
mov eax, dword [r14 + rcx*4]
add rax, r11
jmp 0x140041cd1
test r8b, r8b
jne 0x140041c9b
inc r10d
add r9, 4
cmp r10d, edi
jb 0x140041c70
cmp qword [rsi + 0x60], 0
je 0x140041ccf
mov r14d, 0x5a4d
jmp 0x140041c10
xor eax, eax
mov qword [rsp + 0x20], 0
lea r9, [rbp + 0xa8]
mov r8d, r12d
mov rsi, qword [rbp + 0x38]
mov rdx, rsi
mov rcx, r13
call rax
test eax, eax
je 0x1400426d3
xorps xmm0, xmm0
movups xmmword [rbp + 0x18], xmm0
mov qword [rbp + 0x28], 0
mov qword [rbp + 0x30], 0
mov r8, qword [rbp + 0x40]
cmp rsi, r8
jne 0x140041d2e
mov qword [rbp + 0x28], 0
mov qword [rbp + 0x30], 0xf
mov byte [rbp + 0x18], 0
jmp 0x140041d3e
sub r8, rsi
mov rdx, rsi
lea rcx, [rbp + 0x18]
call fcn.140026260
nop
lea rcx, [rbp - 0x60]
call fcn.14004f530
mov rbx, rax
movsx edi, byte [rax]
mov ecx, edi
call fcn.140014160
add edi, eax
cmp edi, 0xfffffff0
jg 0x140041d65
mov edx, 0x84
call fcn.140052d80
cmp edi, 0xffffffb7
jg 0x140041d74
mov edx, 0x9d
call fcn.140052d80
imul edi, edi, 0x5bd1e995
xor r9d, r9d
lea r8, [rbx + 4]
mov r10, r8
mov r13d, 8
mov r11d, r13d
nop dword [rax]
mov eax, edi
shr eax, 0x18
xor eax, edi
imul eax, eax, 0x5bd1e995
mov ecx, r9d
xor ecx, eax
imul edx, ecx, 0x286a90b9
xor edx, 0xaa2a7357
mov eax, edx
shr eax, 0xd
xor eax, edx
imul ecx, eax, 0x5bd1e995
mov eax, ecx
shr eax, 0xf
xor eax, ecx
mov dword [r10], eax
add r9d, 0x5bd1e995
lea r10, [r10 + 4]
sub r11, 1
jne 0x140041d90
mov r9d, dword [0x14018719c]
mov rdx, qword [rbx + 0x28]
call fcn.1400525a0
mov rdx, rax
test rax, rax
je 0x140041e44
xor r9d, r9d
movsx eax, byte [rbx]
movd xmm1, eax
punpcklbw xmm1, xmm1
punpcklwd xmm1, xmm1
pshufd xmm1, xmm1, 0
lea rax, [rdx + 0x10]
cmp rdx, rbx
ja 0x140041e13
cmp rax, rbx
jae 0x140041e24
movdqu xmm0, xmmword [rdx]
xorps xmm1, xmm0
movdqu xmmword [rdx], xmm1
mov r9d, 0x10
lea rcx, [r9 + rdx]
mov r8d, 0x11
sub r8, r9
movzx eax, byte [rbx]
xor byte [rcx], al
lea rcx, [rcx + 1]
sub r8, 1
jne 0x140041e31
mov byte [rdx + 0x11], r8b
xorps xmm0, xmm0
movups xmmword [rbp + 0x68], xmm0
mov qword [rbp + 0x78], 0
mov qword [rbp + 0x80], 0
mov r12, 0xffffffffffffffff
mov r8, r12
nop dword [rax + rax]
inc r8
cmp byte [rdx + r8], 0
jne 0x140041e70
lea rcx, [rbp + 0x68]
call fcn.140005e70
nop
lea r14, [rbp + 0x68]
cmp qword [rbp + 0x80], 0x10
cmovae r14, qword [rbp + 0x68]
lea r15, [rbp + 0x18]
cmp qword [rbp + 0x30], 0x10
cmovae r15, qword [rbp + 0x18]
mov rdi, qword [rbp + 0x78]
mov rax, qword [rbp + 0x28]
cmp rdi, rax
ja 0x1400426bf
sub rax, rdi
test rdi, rdi
jne 0x140041ec0
xor ebx, ebx
jmp 0x140041f3e
lea r12, [r15 + rax]
movsx r13d, byte [r14]
lea r8, [r12 + 1]
sub r8, r15
mov edx, r13d
mov rcx, r15
call fcn.140132340
mov rbx, rax
test rax, rax
je 0x1400426bf
nop word [rax + rax]
mov r8, rdi
mov rdx, r14
mov rcx, rbx
call fcn.1401323e0
test eax, eax
je 0x140041f25
inc rbx
lea r8, [r12 + 1]
sub r8, rbx
mov edx, r13d
mov rcx, rbx
call fcn.140132340
mov rbx, rax
test rax, rax
jne 0x140041ef0
jmp 0x1400426bf
sub rbx, r15
cmp rbx, 0xffffffffffffffff
je 0x1400426bf
mov r12, 0xffffffffffffffff
lea r13d, [r12 + 9]
lea r15, [rbx + rdi]
mov cl, 0x4b
mov byte [rsp + 0x40], cl
mov word [rsp + 0x70], 0x3669
xor eax, eax
mov byte [rsp + 0x72], al
movsx ebx, cl
mov ecx, ebx
call fcn.140014160
add ebx, eax
cmp ebx, 0xfffffff0
jg 0x140041f70
mov edx, 0x84
call fcn.140052d80
cmp ebx, 0xffffffb7
jg 0x140041f7f
mov edx, 0x9d
call fcn.140052d80
imul r11d, ebx, 0x5bd1e995
xor r8d, r8d
lea r9, [rsp + 0x44]
mov r10, r13
mov eax, r11d
shr eax, 0x18
xor eax, r11d
imul eax, eax, 0x5bd1e995
mov ecx, r8d
xor ecx, eax
imul edx, ecx, 0x286a90b9
xor edx, 0xaa2a7357
mov eax, edx
shr eax, 0xd
xor eax, edx
imul ecx, eax, 0x5bd1e995
mov eax, ecx
shr eax, 0xf
xor eax, ecx
mov dword [r9], eax
add r8d, 0x5bd1e995
lea r9, [r9 + 4]
sub r10, 1
jne 0x140041f91
mov eax, 2
nop
inc eax
test al, 0xf
jne 0x140041fe0
mov qword [0x140187190], 0
lea edi, [rax + 8]
mov edx, edi
call fcn.140052d80
mov rbx, rax
mov qword [0x140187190], rax
test rax, rax
je 0x140042048
mov dword [0x14018719c], edi
mov dword [0x140187198], 2
mov dword [rax], edi
mov eax, dword [0x140187198]
mov dword [rbx + 4], eax
movzx eax, word [rsp + 0x70]
mov word [rbx + 8], ax
mov edx, dword [0x14018719c]
add edx, 0xfffffff8
lea rcx, [rbx + 8]
lea r9, [rsp + 0x44]
mov r8b, 1
call fcn.140052470
mov qword [rsp + 0x68], rbx
movsx ebx, byte [rsp + 0x40]
mov ecx, ebx
call fcn.140014160
add ebx, eax
cmp ebx, 0xfffffff0
jg 0x14004206a
mov edx, 0x84
call fcn.140052d80
cmp ebx, 0xffffffb7
jg 0x140042079
mov edx, 0x9d
call fcn.140052d80
imul r11d, ebx, 0x5bd1e995
xor r8d, r8d
lea r9, [rsp + 0x44]
mov r10, r13
nop dword [rax + rax]
mov eax, r11d
shr eax, 0x18
xor eax, r11d
imul eax, eax, 0x5bd1e995
mov ecx, r8d
xor ecx, eax
imul edx, ecx, 0x286a90b9
xor edx, 0xaa2a7357
mov eax, edx
shr eax, 0xd
xor eax, edx
imul ecx, eax, 0x5bd1e995
mov eax, ecx
shr eax, 0xf
xor eax, ecx
mov dword [r9], eax
add r8d, 0x5bd1e995
lea r9, [r9 + 4]
sub r10, 1
jne 0x140042090
mov r9d, dword [0x14018719c]
lea r8, [rsp + 0x44]
mov rdx, qword [rsp + 0x68]
call fcn.1400525a0
mov r9, rax
test rax, rax
je 0x140042107
movzx eax, byte [rsp + 0x40]
xor byte [r9], al
xor byte [r9 + 1], al
mov byte [r9 + 2], 0
mov rax, r12
nop word [rax + rax]
inc rax
cmp byte [r9 + rax], 0
jne 0x140042110
lea rcx, [rbp + 0x18]
mov rdi, qword [rbp + 0x18]
mov r14, qword [rbp + 0x30]
cmp r14, 0x10
cmovae rcx, rdi
mov qword [rsp + 0x20], rax
mov r8, r15
mov rbx, qword [rbp + 0x28]
mov rdx, rbx
call fcn.140025820
mov r8, rax
cmp rax, 0xffffffffffffffff
je 0x1400426bf
xorps xmm0, xmm0
movups xmmword [rbp + 0xd0], xmm0
xorps xmm1, xmm1
movdqu xmmword [rbp + 0xe0], xmm1
cmp rbx, r15
jb 0x14004291a
sub r8, r15
sub rbx, r15
cmp rbx, r8
cmovb r8, rbx
lea rdx, [rbp + 0x18]
cmp r14, 0x10
cmovae rdx, rdi
add rdx, r15
lea rcx, [rbp + 0xd0]
call fcn.140005e70
nop
xorps xmm0, xmm0
xor eax, eax
movups xmmword [rbp + 0x50], xmm0
mov qword [rbp + 0x60], rax
lea rdx, [rbp + 0xd0]
lea rcx, [rsp + 0x40]
call fcn.140005930
mov rdx, rax
lea rcx, [rbp + 0x50]
call fcn.140040e50
nop
mov r8, qword [rbp + 0x58]
mov rdx, qword [rbp + 0x50]
lea rcx, [rbp + 0xb0]
call fcn.14004f690
nop
xorps xmm0, xmm0
movups xmmword [rbp + 0x88], xmm0
xorps xmm1, xmm1
movdqu xmmword [rbp + 0x98], xmm1
mov rax, qword [rbp + 0xc0]
cmp rax, 5
jb 0x140042920
add rax, 0xfffffffffffffffb
mov r8, r12
cmp rax, 0xffffffffffffffff
cmovb r8, rax
lea rdx, [rbp + 0xb0]
cmp qword [rbp + 0xc8], 0x10
cmovae rdx, qword [rbp + 0xb0]
add rdx, 5
lea rcx, [rbp + 0x88]
call fcn.140005e70
nop
mov dword [rbp + 4], 0
mov eax, dword [rbp + 0x98]
mov dword [rbp], eax
lea rax, [rbp + 0x88]
cmp qword [rbp + 0xa0], 0x10
cmovae rax, qword [rbp + 0x88]
mov qword [rbp + 8], rax
lea rcx, [rbp - 0x60]
call fcn.14004f7d0
mov rbx, rax
movsx edi, byte [rax]
mov ecx, edi
call fcn.140014160
add edi, eax
cmp edi, 0xfffffff0
jg 0x140042285
mov edx, 0x84
call fcn.140052d80
cmp edi, 0xffffffb7
jg 0x140042294
mov edx, 0x9d
call fcn.140052d80
imul edi, edi, 0x5bd1e995
xor r9d, r9d
lea r8, [rbx + 4]
mov r10, r8
mov r11, r13
nop word [rax + rax]
mov eax, edi
shr eax, 0x18
xor eax, edi
imul ecx, eax, 0x5bd1e995
xor ecx, r9d
imul edx, ecx, 0x286a90b9
xor edx, 0xaa2a7357
mov eax, edx
shr eax, 0xd
xor eax, edx
imul ecx, eax, 0x5bd1e995
mov eax, ecx
shr eax, 0xf
xor eax, ecx
mov dword [r10], eax
add r9d, 0x5bd1e995
lea r10, [r10 + 4]
sub r11, 1
jne 0x1400422b0
mov r9d, dword [0x14018719c]
mov rdx, qword [rbx + 0x28]
call fcn.1400525a0
mov rdi, rax
test rax, rax
je 0x140042362
xor r8d, r8d
movsx eax, byte [rbx]
movd xmm1, eax
punpcklbw xmm1, xmm1
punpcklwd xmm1, xmm1
pshufd xmm1, xmm1, 0
lea rax, [rdi + 0x11]
cmp rdi, rbx
ja 0x140042331
cmp rax, rbx
jae 0x140042342
movdqu xmm0, xmmword [rdi]
xorps xmm0, xmm1
movdqu xmmword [rdi], xmm0
mov r8d, 0x10
lea rcx, [r8 + rdi]
mov edx, 0x12
sub rdx, r8
nop
movzx eax, byte [rbx]
xor byte [rcx], al
lea rcx, [rcx + 1]
sub rdx, 1
jne 0x140042350
mov byte [rdi + 0x12], dl
mov rax, qword gs:[0x60]
mov rcx, qword [rax + 0x18]
mov rax, qword [rcx + 0x10]
mov rsi, qword [rax]
cmp qword [rsi + 0x60], 0
je 0x140042436
mov r11, qword [rsi + 0x30]
mov rsi, qword [rsi]
test r11, r11
je 0x140042376
mov ebx, 0x5a4d
cmp word [r11], bx
jne 0x140042432
movsxd rax, dword [r11 + 0x3c]
cmp dword [rax + r11], 0x4550
jne 0x140042432
mov ecx, dword [rax + r11 + 0x88]
test ecx, ecx
je 0x140042432
lea rax, [r11 + rcx]
mov r14d, dword [rax + 0x1c]
add r14, r11
mov r9d, dword [rax + 0x20]
add r9, r11
mov r15d, dword [rax + 0x24]
add r15, r11
xor r10d, r10d
mov ebx, dword [rax + 0x18]
test ebx, ebx
je 0x140042376
nop dword [rax]
xor r8b, r8b
mov ecx, dword [r9]
add rcx, r11
cmp byte [rcx], r8b
je 0x140042421
mov rdx, rdi
sub rdx, rcx
movzx eax, byte [rdx + rcx]
test al, al
je 0x14004241c
cmp byte [rcx], al
jne 0x140042421
mov r8b, 1
inc rcx
cmp byte [rcx], 0
jne 0x1400423f4
movsxd rax, r10d
movzx ecx, word [r15 + rax*2]
mov eax, dword [r14 + rcx*4]
add rax, r11
jmp 0x140042438
test r8b, r8b
jne 0x14004240b
inc r10d
add r9, 4
cmp r10d, ebx
jb 0x1400423e0
jmp 0x140042376
xor eax, eax
jmp 0x14004243d
xor eax, eax
mov ebx, 0x5a4d
lea rcx, [rbp - 0x10]
mov qword [rsp + 0x30], rcx
mov dword [rsp + 0x28], 0
mov qword [rsp + 0x20], 0
xor r9d, r9d
xor r8d, r8d
xor edx, edx
lea rcx, [rbp]
call rax
test eax, eax
je 0x14004265a
lea rdx, [0x1401669a8]
lea rcx, [rsp + 0x40]
call fcn.14001f230
mov rcx, rax
call fcn.14001c8d0
mov rsi, rax
mov rax, qword gs:[0x60]
mov rcx, qword [rax + 0x18]
mov rax, qword [rcx + 0x10]
mov rdi, qword [rax]
cmp qword [rdi + 0x60], 0
je 0x14004256e
nop dword [rax + rax]
mov r11, qword [rdi + 0x30]
mov rdi, qword [rdi]
test r11, r11
je 0x14004255d
cmp word [r11], bx
jne 0x14004256e
movsxd rax, dword [r11 + 0x3c]
cmp dword [rax + r11], 0x4550
jne 0x14004256e
mov ecx, dword [rax + r11 + 0x88]
test ecx, ecx
je 0x14004256e
lea rax, [r11 + rcx]
mov r14d, dword [rax + 0x1c]
add r14, r11
mov r9d, dword [rax + 0x20]
add r9, r11
mov r15d, dword [rax + 0x24]
add r15, r11
xor r10d, r10d
mov ebx, dword [rax + 0x18]
test ebx, ebx
je 0x14004255d
nop
xor r8b, r8b
mov eax, dword [r9]
add rax, r11
cmp byte [rax], r8b
je 0x140042551
mov rdx, rsi
sub rdx, rax
movzx ecx, byte [rax + rdx]
test cl, cl
je 0x14004254c
cmp byte [rax], cl
jne 0x140042551
mov r8b, 1
inc rax
cmp byte [rax], 0
jne 0x140042524
movsxd rax, r10d
movzx ecx, word [r15 + rax*2]
mov eax, dword [r14 + rcx*4]
add rax, r11
jmp 0x140042570
test r8b, r8b
jne 0x14004253b
inc r10d
add r9, 4
cmp r10d, ebx
jb 0x140042510
cmp qword [rdi + 0x60], 0
je 0x14004256e
mov ebx, 0x5a4d
jmp 0x1400424b0
xor eax, eax
mov rcx, qword [rbp - 8]
call rax
mov r8d, dword [rbp - 0x10]
xorps xmm0, xmm0
mov rbx, qword [rbp - 0x80]
movups xmmword [rbx], xmm0
mov qword [rbx + 0x10], 0
mov qword [rbx + 0x18], 0
mov rdx, qword [rbp - 8]
mov rcx, rbx
call fcn.140005e70
nop
lea rcx, [rbp + 0x88]
call fcn.140005a50
nop
lea rcx, [rbp + 0xb0]
call fcn.140005a50
nop
mov rcx, qword [rbp + 0x50]
test rcx, rcx
je 0x1400425f6
mov rdx, qword [rbp + 0x60]
sub rdx, rcx
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400425f0
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14004292c
call fcn.14012f66c
nop
lea rcx, [rbp + 0xd0]
call fcn.140005a50
nop
lea rcx, [rbp + 0x68]
call fcn.140005a50
nop
lea rcx, [rbp + 0x18]
call fcn.140005a50
nop
mov rcx, qword [rbp + 0x38]
test rcx, rcx
je 0x1400428d8
mov rdx, qword [rbp + 0x48]
sub rdx, rcx
mov rax, rcx
cmp rdx, 0x1000
jb 0x140042650
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140042926
call fcn.14012f66c
jmp 0x1400428d8
lea rcx, [rbp + 0x88]
call fcn.140005a50
nop
lea rcx, [rbp + 0xb0]
call fcn.140005a50
nop
mov rcx, qword [rbp + 0x50]
test rcx, rcx
je 0x1400426af
mov rdx, qword [rbp + 0x60]
sub rdx, rcx
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400426a9
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14004292c
call fcn.14012f66c
nop
lea rcx, [rbp + 0xd0]
call fcn.140005a50
mov rsi, qword [rbp + 0x38]
lea rcx, [rbp + 0x68]
call fcn.140005a50
nop
lea rcx, [rbp + 0x18]
call fcn.140005a50
nop
test rsi, rsi
je 0x14004270c
mov rdx, qword [rbp + 0x48]
sub rdx, rsi
mov rax, rsi
cmp rdx, 0x1000
jb 0x140042704
add rdx, 0x27
mov rsi, qword [rsi - 8]
sub rax, rsi
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14004290e
mov rcx, rsi
call fcn.14012f66c
mov rdi, 0xffffffffffffffff
mov cl, 0x27
mov byte [rsp + 0x40], cl
xor eax, eax
mov byte [rsp + 0x70], al
movsx ebx, cl
mov ecx, ebx
call fcn.140014160
add ebx, eax
cmp ebx, 0xfffffff0
jg 0x14004273a
mov edx, 0x84
call fcn.140052d80
cmp ebx, 0xffffffb7
jg 0x140042749
mov edx, 0x9d
call fcn.140052d80
imul r11d, ebx, 0x5bd1e995
xor r8d, r8d
lea r9, [rsp + 0x44]
mov esi, 8
mov r10d, esi
mov eax, r11d
shr eax, 0x18
xor eax, r11d
imul ecx, eax, 0x5bd1e995
xor ecx, r8d
imul edx, ecx, 0x286a90b9
xor edx, 0xaa2a7357
mov eax, edx
shr eax, 0xd
xor eax, edx
imul ecx, eax, 0x5bd1e995
mov eax, ecx
shr eax, 0xf
xor eax, ecx
mov dword [r9], eax
add r8d, 0x5bd1e995
lea r9, [r9 + 4]
sub r10, 1
jne 0x140042760
mov qword [0x140187190], r10
mov rdx, rsi
call fcn.140052d80
mov rbx, rax
mov qword [0x140187190], rax
test rax, rax
je 0x1400427f9
mov dword [0x14018719c], esi
mov dword [0x140187198], 0
mov dword [rax], esi
mov eax, dword [0x140187198]
mov dword [rbx + 4], eax
mov edx, dword [0x14018719c]
add edx, 0xfffffff8
lea rcx, [rbx + 8]
lea r9, [rsp + 0x44]
mov r8b, 1
call fcn.140052470
mov qword [rsp + 0x68], rbx
movsx ebx, byte [rsp + 0x40]
mov ecx, ebx
call fcn.140014160
add ebx, eax
cmp ebx, 0xfffffff0
jg 0x14004281b
mov edx, 0x84
call fcn.140052d80
cmp ebx, 0xffffffb7
jg 0x14004282a
mov edx, 0x9d
call fcn.140052d80
imul r10d, ebx, 0x5bd1e995
xor r8d, r8d
lea r9, [rsp + 0x44]
nop dword [rax]
mov eax, r10d
shr eax, 0x18
xor eax, r10d
imul ecx, eax, 0x5bd1e995
xor ecx, r8d
imul edx, ecx, 0x286a90b9
xor edx, 0xaa2a7357
mov eax, edx
shr eax, 0xd
xor eax, edx
imul ecx, eax, 0x5bd1e995
mov eax, ecx
shr eax, 0xf
xor eax, ecx
mov dword [r9], eax
add r8d, 0x5bd1e995
lea r9, [r9 + 4]
sub rsi, 1
jne 0x140042840
mov r9d, dword [0x14018719c]
lea r8, [rsp + 0x44]
mov rdx, qword [rsp + 0x68]
call fcn.1400525a0
test rax, rax
je 0x1400428a4
mov byte [rax], 0
xorps xmm0, xmm0
mov rbx, qword [rbp - 0x80]
movups xmmword [rbx], xmm0
mov qword [rbx + 0x10], 0
mov qword [rbx + 0x18], 0
nop
inc rdi
cmp byte [rax + rdi], 0
jne 0x1400428c0
mov r8, rdi
mov rdx, rax
mov rcx, rbx
call fcn.140005e70
nop
mov rcx, qword [rbp - 0x78]
call fcn.140005a50
mov rax, rbx
mov rcx, qword [rbp + 0x110]
xor rcx, rsp
call fcn.14012f610
mov rbx, qword [rsp + 0x270]
add rsp, 0x220
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret
call fcn.140136294
nop
call fcn.140005160
nop
call fcn.140025f50
nop
call fcn.140025f50
nop
call fcn.140136294
nop
call fcn.140136294
int3