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

Disassembly:
push rbx
push rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x410
mov rax, qword [0x140181020]
xor rax, rsp
mov qword [rsp + 0x400], rax
mov r15, r9
mov qword [rsp + 0x80], r9
mov r14, r8
mov qword [rsp + 0xd8], r8
mov qword [rsp + 0xd0], rdx
mov qword [rsp + 0x310], r8
mov qword [rsp + 0x318], r9
xor r13d, r13d
mov r12d, r13d
mov dword [rsp + 0x40], r13d
mov rcx, r8
cmp qword [r8 + 0x18], 0x10
jb 0x1400263cb
mov rcx, qword [r8]
xor r9d, r9d
lea r8d, [r9 + 6]
lea rdx, [rsp + 0x78]
call fcn.1401232c0
test eax, eax
je 0x1400263f8
mov rcx, r14
call fcn.140005a50
nop
mov rcx, r15
call fcn.140005a50
xor al, al
jmp 0x140027944
lea rcx, [rsp + 0x100]
call fcn.140029470
mov rbx, rax
movsx edi, byte [rax]
mov ecx, edi
call fcn.140014160
add edi, eax
cmp edi, 0xfffffff0
jg 0x140026423
mov edx, 0x84
call fcn.140052d80
cmp edi, 0xffffffb7
jg 0x140026432
mov edx, 0x9d
call fcn.140052d80
imul edi, edi, 0x5bd1e995
mov r9d, r13d
lea r8, [rbx + 4]
mov r10, r8
mov r11d, 8
nop dword [rax + 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 0x140026450
mov r9d, dword [0x14018719c]
mov rdx, qword [rbx + 0x28]
call fcn.1400525a0
mov r10, rax
test rax, rax
jne 0x1400264b3
mov r10, r13
jmp 0x140026513
mov r8, r13
movsx eax, byte [rbx]
movd xmm1, eax
punpcklbw xmm1, xmm1
punpcklwd xmm1, xmm1
pshufd xmm1, xmm1, 0
lea rax, [r10 + 0x18]
cmp r10, rbx
ja 0x1400264d8
cmp rax, rbx
jae 0x1400264eb
movdqu xmm0, xmmword [r10]
xorps xmm1, xmm0
movdqu xmmword [r10], xmm1
mov r8d, 0x10
lea rcx, [r8 + r10]
mov edx, 0x19
sub rdx, r8
nop word [rax + rax]
movzx eax, byte [rbx]
xor byte [rcx], al
lea rcx, [rcx + 1]
sub rdx, 1
jne 0x140026500
mov byte [r10 + 0x19], dl
mov qword [rsp + 0x30], r13
lea rax, [rsp + 0x70]
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], r13
mov r9d, 0x80
mov r8d, 0xffffffff
mov rdx, r10
mov rbx, qword [rsp + 0x78]
mov rcx, rbx
call fcn.1400e14c0
test eax, eax
je 0x14002656a
xor edx, edx
mov rcx, rbx
call fcn.140120730
nop
mov rcx, r14
call fcn.140005a50
nop
mov rcx, r15
call fcn.140005a50
xor al, al
jmp 0x140027944
xorps xmm0, xmm0
movups xmmword [rsp + 0x3c0], xmm0
movdqa xmm1, xmmword [0x14016e0a0]
movdqu xmmword [rsp + 0x3d0], xmm1
mov byte [rsp + 0x3c0], 0
lea r13, [0x140162508]
mov rdi, qword [rsp + 0x70]
xor ebx, ebx
mov r15d, 0x202
mov esi, 4
mov rcx, rdi
call fcn.14008f6a0
cmp eax, 0x64
jne 0x14002705e
xorps xmm0, xmm0
movups xmmword [rsp + 0x320], xmm0
mov qword [rsp + 0x330], rbx
mov qword [rsp + 0x338], 0xf
mov byte [rsp + 0x320], 0
movups xmmword [rsp + 0x340], xmm0
mov qword [rsp + 0x350], rbx
mov qword [rsp + 0x358], 0xf
mov byte [rsp + 0x340], 0
movups xmmword [rsp + 0x360], xmm0
mov qword [rsp + 0x370], rbx
mov qword [rsp + 0x378], 0xf
mov byte [rsp + 0x360], 0
movups xmmword [rsp + 0x380], xmm0
mov qword [rsp + 0x390], rbx
mov qword [rsp + 0x398], 0xf
mov byte [rsp + 0x380], 0
movups xmmword [rsp + 0x3a0], xmm0
mov qword [rsp + 0x3b0], rbx
mov qword [rsp + 0x3b8], 0xf
mov byte [rsp + 0x3a0], 0
test rdi, rdi
je 0x1400266bd
mov rax, qword [rdi]
mov rcx, qword [rax + 0x18]
test rcx, rcx
je 0x140026686
call qword [0x140181e70]
mov rcx, qword [rdi + 0xa0]
test rcx, rcx
je 0x1400266a9
cmp si, word [rdi + 0xc0]
jae 0x1400266a9
add rcx, 0xe0
jne 0x1400266c0
mov r14, rbx
jmp 0x1400266f1
mov rcx, qword [rdi]
mov dword [rcx + 0x50], 0x19
mov edx, 0x19
call fcn.1400614d0
mov rcx, r13
movzx edx, word [rcx + 0x14]
movzx eax, dx
and ax, r15w
cmp ax, r15w
jne 0x1400266dd
cmp byte [rcx + 0x16], 1
jne 0x1400266dd
mov r14, qword [rcx + 8]
jmp 0x1400266f1
test dl, 1
je 0x1400266e7
mov r14, rbx
jmp 0x1400266f1
mov dl, 1
call fcn.1400889f0
mov r14, rax
test rdi, rdi
je 0x140026724
mov edx, dword [rdi + 0x34]
mov rcx, qword [rdi]
cmp byte [rcx + 0x67], 0
jne 0x14002670a
test edx, edx
jne 0x14002670a
mov eax, ebx
jmp 0x14002670f
call fcn.14005dd90
mov dword [rdi + 0x34], eax
mov rax, qword [rdi]
mov rcx, qword [rax + 0x18]
test rcx, rcx
je 0x140026724
call qword [0x140181e80]
mov rsi, 0xffffffffffffffff
nop dword [rax + rax]
inc rsi
cmp byte [r14 + rsi], 0
jne 0x140026730
mov rax, qword [rsp + 0x338]
cmp rsi, rax
ja 0x14002677a
lea rbx, [rsp + 0x320]
cmp rax, 0x10
cmovae rbx, qword [rsp + 0x320]
mov qword [rsp + 0x330], rsi
mov r8, rsi
mov rdx, r14
mov rcx, rbx
call fcn.140131900
mov byte [rbx + rsi], 0
xor ebx, ebx
jmp 0x14002678d
mov r9, r14
mov rdx, rsi
lea rcx, [rsp + 0x320]
call fcn.140029d40
test rdi, rdi
je 0x1400267dd
mov rax, qword [rdi]
mov rcx, qword [rax + 0x18]
test rcx, rcx
je 0x1400267a4
call qword [0x140181e70]
mov rcx, qword [rdi + 0xa0]
test rcx, rcx
je 0x1400267c9
mov eax, 2
cmp ax, word [rdi + 0xc0]
jae 0x1400267c9
add rcx, 0x70
jne 0x1400267e0
mov r14, rbx
jmp 0x140026811
mov rcx, qword [rdi]
mov dword [rcx + 0x50], 0x19
mov edx, 0x19
call fcn.1400614d0
mov rcx, r13
movzx edx, word [rcx + 0x14]
movzx eax, dx
and ax, r15w
cmp ax, r15w
jne 0x1400267fd
cmp byte [rcx + 0x16], 1
jne 0x1400267fd
mov r14, qword [rcx + 8]
jmp 0x140026811
test dl, 1
je 0x140026807
mov r14, rbx
jmp 0x140026811
mov dl, 1
call fcn.1400889f0
mov r14, rax
test rdi, rdi
je 0x140026844
mov edx, dword [rdi + 0x34]
mov rcx, qword [rdi]
cmp byte [rcx + 0x67], 0
jne 0x14002682a
test edx, edx
jne 0x14002682a
mov eax, ebx
jmp 0x14002682f
call fcn.14005dd90
mov dword [rdi + 0x34], eax
mov rax, qword [rdi]
mov rcx, qword [rax + 0x18]
test rcx, rcx
je 0x140026844
call qword [0x140181e80]
mov rsi, 0xffffffffffffffff
nop dword [rax + rax]
inc rsi
cmp byte [r14 + rsi], 0
jne 0x140026850
mov rax, qword [rsp + 0x358]
cmp rsi, rax
ja 0x140026898
lea rbx, [rsp + 0x340]
cmp rax, 0x10
cmovae rbx, qword [rsp + 0x340]
mov qword [rsp + 0x350], rsi
mov r8, rsi
mov rdx, r14
mov rcx, rbx
call fcn.140131900
mov byte [rbx + rsi], 0
jmp 0x1400268ab
mov r9, r14
mov rdx, rsi
lea rcx, [rsp + 0x340]
call fcn.140029d40
test rdi, rdi
je 0x140026900
mov rax, qword [rdi]
mov rcx, qword [rax + 0x18]
test rcx, rcx
je 0x1400268c2
call qword [0x140181e70]
mov rcx, qword [rdi + 0xa0]
test rcx, rcx
je 0x1400268ec
mov eax, 3
cmp ax, word [rdi + 0xc0]
jae 0x1400268ec
add rcx, 0xa8
jne 0x140026903
xor eax, eax
mov r14d, eax
jmp 0x140026938
mov rcx, qword [rdi]
mov dword [rcx + 0x50], 0x19
mov edx, 0x19
call fcn.1400614d0
mov rcx, r13
movzx edx, word [rcx + 0x14]
movzx eax, dx
and ax, r15w
cmp ax, r15w
jne 0x140026920
cmp byte [rcx + 0x16], 1
jne 0x140026920
mov r14, qword [rcx + 8]
jmp 0x140026936
test dl, 1
je 0x14002692c
xor eax, eax
mov r14d, eax
jmp 0x140026938
mov dl, 1
call fcn.1400889f0
mov r14, rax
xor eax, eax
test rdi, rdi
je 0x140026967
mov edx, dword [rdi + 0x34]
mov rcx, qword [rdi]
cmp byte [rcx + 0x67], 0
jne 0x14002694d
test edx, edx
je 0x140026952
call fcn.14005dd90
mov dword [rdi + 0x34], eax
mov rax, qword [rdi]
mov rcx, qword [rax + 0x18]
test rcx, rcx
je 0x140026967
call qword [0x140181e80]
mov rsi, 0xffffffffffffffff
nop
inc rsi
cmp byte [r14 + rsi], 0
jne 0x140026970
mov rax, qword [rsp + 0x378]
cmp rsi, rax
ja 0x1400269b8
lea rbx, [rsp + 0x360]
cmp rax, 0x10
cmovae rbx, qword [rsp + 0x360]
mov qword [rsp + 0x370], rsi
mov r8, rsi
mov rdx, r14
mov rcx, rbx
call fcn.140131900
mov byte [rbx + rsi], 0
jmp 0x1400269cb
mov r9, r14
mov rdx, rsi
lea rcx, [rsp + 0x360]
call fcn.140029d40
test rdi, rdi
je 0x140026a20
mov rax, qword [rdi]
mov rcx, qword [rax + 0x18]
test rcx, rcx
je 0x1400269e2
call qword [0x140181e70]
mov rcx, qword [rdi + 0xa0]
test rcx, rcx
je 0x140026a0c
mov eax, 5
cmp ax, word [rdi + 0xc0]
jae 0x140026a0c
add rcx, 0x118
jne 0x140026a23
xor eax, eax
mov r14d, eax
jmp 0x140026a58
mov rcx, qword [rdi]
mov dword [rcx + 0x50], 0x19
mov edx, 0x19
call fcn.1400614d0
mov rcx, r13
movzx edx, word [rcx + 0x14]
movzx eax, dx
and ax, r15w
cmp ax, r15w
jne 0x140026a40
cmp byte [rcx + 0x16], 1
jne 0x140026a40
mov r14, qword [rcx + 8]
jmp 0x140026a56
test dl, 1
je 0x140026a4c
xor eax, eax
mov r14d, eax
jmp 0x140026a58
mov dl, 1
call fcn.1400889f0
mov r14, rax
xor eax, eax
test rdi, rdi
je 0x140026a87
mov edx, dword [rdi + 0x34]
mov rcx, qword [rdi]
cmp byte [rcx + 0x67], 0
jne 0x140026a6d
test edx, edx
je 0x140026a72
call fcn.14005dd90
mov dword [rdi + 0x34], eax
mov rax, qword [rdi]
mov rcx, qword [rax + 0x18]
test rcx, rcx
je 0x140026a87
call qword [0x140181e80]
mov rsi, 0xffffffffffffffff
nop
inc rsi
cmp byte [r14 + rsi], 0
jne 0x140026a90
mov rax, qword [rsp + 0x398]
cmp rsi, rax
ja 0x140026ad8
lea rbx, [rsp + 0x380]
cmp rax, 0x10
cmovae rbx, qword [rsp + 0x380]
mov qword [rsp + 0x390], rsi
mov r8, rsi
mov rdx, r14
mov rcx, rbx
call fcn.140131900
mov byte [rbx + rsi], 0
jmp 0x140026aeb
mov r9, r14
mov rdx, rsi
lea rcx, [rsp + 0x380]
call fcn.140029d40
test rdi, rdi
je 0x140026b40
mov rax, qword [rdi]
mov rcx, qword [rax + 0x18]
test rcx, rcx
je 0x140026b02
call qword [0x140181e70]
mov rcx, qword [rdi + 0xa0]
test rcx, rcx
je 0x140026b2c
mov eax, 6
cmp ax, word [rdi + 0xc0]
jae 0x140026b2c
add rcx, 0x150
jne 0x140026b43
xor eax, eax
mov r14d, eax
jmp 0x140026b78
mov rcx, qword [rdi]
mov dword [rcx + 0x50], 0x19
mov edx, 0x19
call fcn.1400614d0
mov rcx, r13
movzx edx, word [rcx + 0x14]
movzx eax, dx
and ax, r15w
cmp ax, r15w
jne 0x140026b60
cmp byte [rcx + 0x16], 1
jne 0x140026b60
mov r14, qword [rcx + 8]
jmp 0x140026b76
test dl, 1
je 0x140026b6c
xor eax, eax
mov r14d, eax
jmp 0x140026b78
mov dl, 1
call fcn.1400889f0
mov r14, rax
xor eax, eax
test rdi, rdi
je 0x140026ba7
mov edx, dword [rdi + 0x34]
mov rcx, qword [rdi]
cmp byte [rcx + 0x67], 0
jne 0x140026b8d
test edx, edx
je 0x140026b92
call fcn.14005dd90
mov dword [rdi + 0x34], eax
mov rax, qword [rdi]
mov rcx, qword [rax + 0x18]
test rcx, rcx
je 0x140026ba7
call qword [0x140181e80]
mov rsi, 0xffffffffffffffff
nop
inc rsi
cmp byte [r14 + rsi], 0
jne 0x140026bb0
mov rax, qword [rsp + 0x3b8]
cmp rsi, rax
ja 0x140026bf8
lea rbx, [rsp + 0x3a0]
cmp rax, 0x10
cmovae rbx, qword [rsp + 0x3a0]
mov qword [rsp + 0x3b0], rsi
mov r8, rsi
mov rdx, r14
mov rcx, rbx
call fcn.140131900
mov byte [rbx + rsi], 0
jmp 0x140026c0b
mov r9, r14
mov rdx, rsi
lea rcx, [rsp + 0x3a0]
call fcn.140029d40
lea rcx, [rsp + 0x2a0]
call fcn.140029050
mov rcx, rax
call fcn.14001cad0
mov r15, rax
lea rcx, [rsp + 0x2d8]
call fcn.140028f10
mov rcx, rax
call fcn.14001c7f0
mov r14, rax
lea rdx, [0x14015f278]
lea rcx, [rsp + 0x240]
call fcn.140028dd0
mov rcx, rax
call fcn.14001c7f0
mov rsi, rax
lea rcx, [rsp + 0x1f0]
call fcn.140028c80
mov rcx, rax
call fcn.14001e200
mov rbx, rax
lea rcx, [rsp + 0x100]
call fcn.140028b30
mov rcx, rax
call fcn.14001d5f0
mov rdx, rax
mov rcx, 0xffffffffffffffff
inc rcx
cmp byte [rax + rcx], 0
jne 0x140026c91
movabs rax, 0x7fffffffffffffff
mov r8, qword [rsp + 0x330]
sub rax, r8
cmp rax, rcx
jb 0x140027967
lea r9, [rsp + 0x320]
cmp qword [rsp + 0x338], 0x10
cmovae r9, qword [rsp + 0x320]
mov qword [rsp + 0x30], rcx
mov qword [rsp + 0x28], rdx
mov qword [rsp + 0x20], r8
lea rcx, [rsp + 0x1d0]
call fcn.140025d40
or r12d, 2
lea rdx, [rsp + 0x380]
lea rcx, [rsp + 0x1d0]
call fcn.1400057f0
xorps xmm0, xmm0
movups xmmword [rsp + 0xa8], xmm0
xor ecx, ecx
mov qword [rsp + 0xb8], rcx
mov qword [rsp + 0xc0], rcx
movups xmm0, xmmword [rax]
movups xmmword [rsp + 0xa8], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rsp + 0xb8], xmm1
mov qword [rax + 0x10], rcx
mov qword [rax + 0x18], 0xf
mov byte [rax], cl
or r12d, 4
mov rdx, rbx
lea rcx, [rsp + 0xa8]
call fcn.140005750
xorps xmm0, xmm0
movups xmmword [rsp + 0x88], xmm0
xor ebx, ebx
mov qword [rsp + 0x98], rbx
mov qword [rsp + 0xa0], rbx
movups xmm0, xmmword [rax]
movups xmmword [rsp + 0x88], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rsp + 0x98], xmm1
mov qword [rax + 0x10], rbx
mov qword [rax + 0x18], 0xf
mov byte [rax], bl
or r12d, 8
lea rdx, [rsp + 0x3a0]
lea rcx, [rsp + 0x88]
call fcn.1400057f0
xorps xmm0, xmm0
movups xmmword [rsp + 0x1b0], xmm0
mov qword [rsp + 0x1c0], rbx
mov qword [rsp + 0x1c8], rbx
movups xmm0, xmmword [rax]
movups xmmword [rsp + 0x1b0], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rsp + 0x1c0], xmm1
mov qword [rax + 0x10], rbx
mov qword [rax + 0x18], 0xf
mov byte [rax], bl
or r12d, 0x10
mov rdx, rsi
lea rcx, [rsp + 0x1b0]
call fcn.140005750
xorps xmm0, xmm0
movups xmmword [rsp + 0x190], xmm0
mov qword [rsp + 0x1a0], rbx
mov qword [rsp + 0x1a8], rbx
movups xmm0, xmmword [rax]
movups xmmword [rsp + 0x190], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rsp + 0x1a0], xmm1
mov qword [rax + 0x10], rbx
mov qword [rax + 0x18], 0xf
mov byte [rax], bl
or r12d, 0x20
lea rdx, [rsp + 0x340]
lea rcx, [rsp + 0x190]
call fcn.1400057f0
xorps xmm0, xmm0
movups xmmword [rsp + 0x170], xmm0
mov qword [rsp + 0x180], rbx
mov qword [rsp + 0x188], rbx
movups xmm0, xmmword [rax]
movups xmmword [rsp + 0x170], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rsp + 0x180], xmm1
mov qword [rax + 0x10], rbx
mov qword [rax + 0x18], 0xf
mov byte [rax], bl
or r12d, 0x40
mov rdx, r14
lea rcx, [rsp + 0x170]
call fcn.140005750
xorps xmm0, xmm0
movups xmmword [rsp + 0x150], xmm0
mov qword [rsp + 0x160], rbx
mov qword [rsp + 0x168], rbx
movups xmm0, xmmword [rax]
movups xmmword [rsp + 0x150], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rsp + 0x160], xmm1
mov qword [rax + 0x10], rbx
mov qword [rax + 0x18], 0xf
mov byte [rax], bl
bts r12d, 7
lea rdx, [rsp + 0x360]
lea rcx, [rsp + 0x150]
call fcn.1400057f0
xorps xmm0, xmm0
movups xmmword [rsp + 0x50], xmm0
mov qword [rsp + 0x60], rbx
mov qword [rsp + 0x68], rbx
movups xmm0, xmmword [rax]
movups xmmword [rsp + 0x50], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rsp + 0x60], xmm1
mov qword [rax + 0x10], rbx
mov qword [rax + 0x18], 0xf
mov byte [rax], bl
bts r12d, 8
mov rdx, r15
lea rcx, [rsp + 0x50]
call fcn.140005750
movups xmm0, xmmword [rax]
movups xmmword [rsp + 0xe0], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rsp + 0xf0], xmm1
mov qword [rax + 0x10], rbx
mov qword [rax + 0x18], 0xf
mov byte [rax], bl
or r12d, 0x201
mov dword [rsp + 0x40], r12d
lea rcx, [rsp + 0x50]
call fcn.140005a50
nop
lea rcx, [rsp + 0x150]
call fcn.140005a50
nop
lea rcx, [rsp + 0x170]
call fcn.140005a50
nop
lea rcx, [rsp + 0x190]
call fcn.140005a50
nop
lea rcx, [rsp + 0x1b0]
call fcn.140005a50
nop
lea rcx, [rsp + 0x88]
call fcn.140005a50
nop
lea rcx, [rsp + 0xa8]
call fcn.140005a50
nop
lea rcx, [rsp + 0x1d0]
call fcn.140005a50
nop
lea rdx, [rsp + 0xe0]
lea rcx, [rsp + 0x3c0]
call fcn.1400057f0
nop
lea rcx, [rsp + 0xe0]
call fcn.140005a50
nop
lea rcx, [rsp + 0x3a0]
call fcn.140005a50
lea rcx, [rsp + 0x380]
call fcn.140005a50
lea rcx, [rsp + 0x360]
call fcn.140005a50
lea rcx, [rsp + 0x340]
call fcn.140005a50
lea rcx, [rsp + 0x320]
call fcn.140005a50
jmp 0x14002659c
mov edx, 0x62
mov word [rsp + 0x100], dx
mov dword [rsp + 0x130], 0x16004c
mov dword [rsp + 0x134], 0x16001a
xor eax, eax
mov word [rsp + 0x138], ax
movsx ebx, dl
mov ecx, ebx
call fcn.140014160
add ebx, eax
cmp ebx, 0xfffffff0
jg 0x1400270a6
mov edx, 0x84
call fcn.140052d80
cmp ebx, 0xffffffb7
jg 0x1400270b5
mov edx, 0x9d
call fcn.140052d80
imul r11d, ebx, 0x5bd1e995
xor r14d, r14d
mov r8d, r14d
lea r9, [rsp + 0x104]
mov esi, 8
mov r10d, esi
nop dword [rax]
nop word [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 0x1400270e0
mov eax, esi
nop word [rax + rax]
inc eax
test al, 0xf
jne 0x140027130
mov qword [0x140187190], r14
lea edi, [rax + 8]
mov edx, edi
call fcn.140052d80
mov rbx, rax
mov qword [0x140187190], rax
test rax, rax
jne 0x14002715b
mov rbx, r14
jmp 0x14002719b
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 + 0x130]
mov qword [rbx + 8], rax
mov edx, dword [0x14018719c]
add edx, 0xfffffff8
lea rcx, [rbx + 8]
lea r9, [rsp + 0x104]
mov r8b, 1
call fcn.140052470
mov qword [rsp + 0x128], rbx
movsx ebx, byte [rsp + 0x100]
mov ecx, ebx
call fcn.140014160
add ebx, eax
cmp ebx, 0xfffffff0
jg 0x1400271c3
mov edx, 0x84
call fcn.140052d80
cmp ebx, 0xffffffb7
jg 0x1400271d2
mov edx, 0x9d
call fcn.140052d80
imul r11d, ebx, 0x5bd1e995
mov r8d, r14d
lea r9, [rsp + 0x104]
mov r10, rsi
nop word [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 0x1400271f0
mov r9d, dword [0x14018719c]
lea r8, [rsp + 0x104]
mov rdx, qword [rsp + 0x128]
call fcn.1400525a0
mov rdx, rax
test rax, rax
jne 0x140027261
mov rdx, r14
jmp 0x14002727d
movzx eax, word [rsp + 0x100]
xor word [rdx], ax
xor word [rdx + 2], ax
xor word [rdx + 4], ax
xor word [rdx + 6], ax
mov word [rdx + 8], r14w
lea rcx, [rsp + 0x88]
call fcn.140028a40
mov qword [rsp + 0xc8], rax
mov rdx, qword [rsp + 0x80]
lea rcx, [rsp + 0x1d0]
call fcn.140005930
mov r13, rax
mov qword [rsp + 0x48], rax
mov r12, rax
cmp qword [rax + 0x18], 0x10
jb 0x1400272bc
mov r12, qword [rax]
lea rcx, [rsp + 0x100]
call fcn.140029190
mov rcx, rax
call fcn.14001d6f0
mov rsi, rax
mov rcx, qword gs:[0x60]
mov rdx, qword [rcx + 0x18]
mov rcx, qword [rdx + 0x10]
mov rdi, qword [rcx]
mov ebx, 0x5a4d
cmp qword [rdi + 0x60], 0
je 0x1400273c5
nop dword [rax + rax]
mov r11, qword [rdi + 0x30]
mov rdi, qword [rdi]
test r11, r11
je 0x1400273b7
cmp word [r11], bx
jne 0x1400273c2
movsxd rax, dword [r11 + 0x3c]
cmp dword [rax + r11], 0x4550
jne 0x1400273c2
mov ecx, dword [rax + r11 + 0x88]
test ecx, ecx
je 0x1400273c2
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 0x1400273b2
nop
xor dl, dl
mov eax, dword [r9]
add rax, r11
cmp byte [rax], dl
je 0x1400273a6
mov r8, rsi
sub r8, rax
movzx ecx, byte [r8 + rax]
test cl, cl
je 0x1400273a2
cmp byte [rax], cl
jne 0x1400273a6
mov dl, 1
inc rax
cmp byte [rax], 0
jne 0x140027372
movsxd rax, r10d
movzx ecx, word [r15 + rax*2]
mov eax, dword [r14 + rcx*4]
add rax, r11
mov ebx, 0x5a4d
xor r14d, r14d
jmp 0x1400273c8
test dl, dl
jne 0x140027389
inc r10d
add r9, 4
cmp r10d, ebx
jb 0x140027360
mov ebx, 0x5a4d
cmp qword [rdi + 0x60], 0
jne 0x140027300
xor r14d, r14d
mov rax, r14
mov dword [rsp + 0x28], r14d
mov qword [rsp + 0x20], r14
mov r9d, 0xffffffff
mov r8, r12
xor edx, edx
mov ecx, 0xfde9
call rax
mov dword [rsp + 0x44], eax
xor r8d, r8d
movsxd rdx, eax
lea rcx, [rsp + 0x50]
call fcn.14001e3a0
or dword [rsp + 0x40], 0x400
lea r12, [rsp + 0x50]
cmp qword [rsp + 0x68], 8
cmovae r12, qword [rsp + 0x50]
mov rax, qword [rsp + 0x48]
cmp qword [rax + 0x18], 0x10
jb 0x140027420
mov r13, qword [rax]
lea rcx, [rsp + 0x1f0]
call fcn.140029300
mov rcx, rax
call fcn.14001d6f0
mov rsi, rax
mov rcx, qword gs:[0x60]
mov rdx, qword [rcx + 0x18]
mov rcx, qword [rdx + 0x10]
mov rdi, qword [rcx]
cmp qword [rdi + 0x60], 0
je 0x140027521
nop word [rax + rax]
mov r11, qword [rdi + 0x30]
mov rdi, qword [rdi]
test r11, r11
je 0x14002750d
cmp word [r11], bx
jne 0x14002751e
movsxd rax, dword [r11 + 0x3c]
cmp dword [rax + r11], 0x4550
jne 0x14002751e
mov ecx, dword [rax + r11 + 0x88]
test ecx, ecx
je 0x14002751e
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 0x14002750d
nop
xor dl, dl
mov ecx, dword [r9]
add rcx, r11
cmp byte [rcx], dl
je 0x140027501
mov r8, rsi
sub r8, rcx
movzx eax, byte [r8 + rcx]
test al, al
je 0x1400274fd
cmp byte [rcx], al
jne 0x140027501
mov dl, 1
inc rcx
cmp byte [rcx], 0
jne 0x1400274d2
movsxd rax, r10d
movzx ecx, word [r15 + rax*2]
mov eax, dword [r14 + rcx*4]
add rax, r11
xor r14d, r14d
jmp 0x140027524
test dl, dl
jne 0x1400274e9
inc r10d
add r9, 4
cmp r10d, ebx
jb 0x1400274c0
cmp qword [rdi + 0x60], 0
je 0x14002751e
mov ebx, 0x5a4d
jmp 0x140027460
xor r14d, r14d
mov rax, r14
mov edx, dword [rsp + 0x44]
mov dword [rsp + 0x28], edx
mov qword [rsp + 0x20], r12
mov r9d, 0xffffffff
mov r8, r13
xor edx, edx
mov ecx, 0xfde9
call rax
nop
mov rcx, qword [rsp + 0x48]
call fcn.140005a50
lea rcx, [rsp + 0x240]
call fcn.1400295f0
mov rbx, rax
movsx edi, byte [rax]
mov ecx, edi
call fcn.140014160
add edi, eax
cmp edi, 0xfffffff0
jg 0x140027579
mov edx, 0x84
call fcn.140052d80
cmp edi, 0xffffffb7
jg 0x140027588
mov edx, 0x9d
call fcn.140052d80
imul r11d, edi, 0x5bd1e995
mov r9d, r14d
lea r8, [rbx + 4]
mov r10, r8
mov edi, 8
nop
mov eax, r11d
shr eax, 0x18
xor eax, r11d
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 rdi, 1
jne 0x1400275a0
mov r9d, dword [0x14018719c]
mov rdx, qword [rbx + 0x28]
call fcn.1400525a0
mov rdx, rax
test rax, rax
jne 0x140027603
mov rdx, r14
jmp 0x140027662
mov rcx, r14
movsx eax, word [rbx]
movd xmm2, eax
punpcklwd xmm2, xmm2
pshufd xmm2, xmm2, 0
lea rax, [rdx + 0x1e]
cmp rdx, rbx
ja 0x140027642
cmp rax, rbx
jb 0x140027642
nop dword [rax]
nop dword [rax + rax]
movzx eax, word [rbx]
xor word [rdx + rcx*2], ax
inc rcx
cmp rcx, 0x10
jb 0x140027630
jmp 0x14002765d
movdqu xmm0, xmmword [rdx + rcx*2]
movdqa xmm1, xmm2
xorps xmm1, xmm0
movdqu xmmword [rdx + rcx*2], xmm1
add rcx, 8
cmp rcx, 0x10
jb 0x140027642
mov word [rdx + 0x20], r14w
lea rcx, [rsp + 0xa8]
call fcn.140028a40
nop
lea r9, [rsp + 0x50]
mov r8, rax
lea rcx, [rsp + 0xe0]
call fcn.140029e80
or dword [rsp + 0x40], 0x800
mov r9, qword [rsp + 0xc8]
lea r8, [rsp + 0xe0]
lea rcx, [rsp + 0x3e0]
call fcn.140029e80
nop
mov rdx, qword [rsp + 0xf8]
cmp rdx, 8
jb 0x1400276f4
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0xe0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400276ee
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14002796d
call fcn.14012f66c
nop
mov rdx, qword [rsp + 0xc0]
cmp rdx, 8
jb 0x14002773c
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0xa8]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140027737
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140027973
call fcn.14012f66c
movdqa xmm0, xmmword [0x14016e080]
movdqu xmmword [rsp + 0xb8], xmm0
mov word [rsp + 0xa8], r14w
mov rdx, qword [rsp + 0x68]
cmp rdx, 8
jb 0x140027798
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x50]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140027793
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140027979
call fcn.14012f66c
movdqa xmm0, xmmword [0x14016e080]
movdqu xmmword [rsp + 0x60], xmm0
mov word [rsp + 0x50], r14w
mov rdx, qword [rsp + 0xa0]
cmp rdx, 8
jb 0x1400277f4
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x88]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400277ef
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14002797f
call fcn.14012f66c
movdqa xmm0, xmmword [0x14016e080]
movdqu xmmword [rsp + 0x98], xmm0
mov word [rsp + 0x88], r14w
lea r8, [rsp + 0x3c0]
cmp qword [rsp + 0x3d8], 0x10
cmovae r8, qword [rsp + 0x3c0]
lea rdx, [rsp + 0x3e0]
cmp qword [rsp + 0x3f8], 8
cmovae rdx, qword [rsp + 0x3e0]
mov rax, qword [rsp + 0xd0]
test rax, rax
jne 0x140027856
mov eax, 0x10000
jmp 0x14002787b
cmp dword [rax], 2
je 0x140027862
mov eax, 0x80000
jmp 0x14002787b
mov dword [rsp + 0x20], 3
mov r9d, dword [rsp + 0x3d0]
mov rcx, qword [rax + 8]
call fcn.140032660
mov dword [0x140186cd0], eax
mov rcx, qword [rsp + 0x70]
call fcn.14008e700
xor edx, edx
mov rcx, qword [rsp + 0x78]
call fcn.140120730
nop
mov rdx, qword [rsp + 0x3f8]
cmp rdx, 8
jb 0x1400278e0
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x3e0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400278db
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140027985
call fcn.14012f66c
movdqa xmm0, xmmword [0x14016e080]
movdqu xmmword [rsp + 0x3f0], xmm0
mov word [rsp + 0x3e0], r14w
lea rcx, [rsp + 0x3c0]
call fcn.140005a50
nop
mov rcx, qword [rsp + 0xd8]
call fcn.140005a50
nop
mov rcx, qword [rsp + 0x80]
call fcn.140005a50
mov al, 1
jmp 0x140027944
mov rcx, qword [rsp + 0x400]
xor rcx, rsp
call fcn.14012f610
add rsp, 0x410
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbx
ret
call fcn.140005200
nop
call fcn.140136294
nop
call fcn.140136294
nop
call fcn.140136294
nop
call fcn.140136294
nop
call fcn.140136294
int3