Function at 0x180036a10
Capabilities:
Encode data using xor

Disassembly:
push rbp
push rsi
push r14
lea rbp, [rsp - 0xb30]
sub rsp, 0xc30
xor r14d, r14d
lea rdx, [rbp + 0xf0]
mov dword [rbp + 0xb58], r14d
mov rsi, rcx
call fcn.18003bb30
mov rax, qword [rbp + 0xf0]
lea rdx, [0x180000000]
cmp eax, 1
jne 0x180036a9c
mov eax, dword [rbp + 0xf4]
dec eax
cmp eax, 5
ja case.default.0x180036a69
cdqe
mov ecx, dword [rdx + rax*4 + 0x3ba1c]
add rcx, rdx
jmp rcx
lea rax, [rsi + 0x20]
jmp 0x180036a92
lea rax, [rsi + 0x28]
jmp 0x180036a92
lea rax, [rsi + 0x30]
jmp 0x180036a92
lea rax, [rsi + 0x38]
jmp 0x180036a92
lea rax, [rsi + 0x40]
jmp 0x180036a92
lea rax, [rsi + 0x48]
jmp 0x180036a92
mov rax, r14
mov rax, qword [rax]
mov qword [rbp + 0xf0], rax
cmp eax, 4
jne case.default.0x180036aea
shr rax, 0x20
lea ecx, [rax - 1]
cmp ecx, 0x29
ja case.default.0x180036aea
mov qword [rsp + 0xc50], rbx
mov qword [rsp + 0xc28], rdi
mov qword [rsp + 0xc20], r12
movsxd rax, ecx
mov qword [rsp + 0xc18], r13
mov qword [rsp + 0xc10], r15
mov ecx, dword [rdx + rax*4 + 0x3ba34]
add rcx, rdx
jmp rcx
lea rdx, [rbp + 0x318]
mov rcx, rsi
call fcn.18003c7b0
jmp 0x18003b9e7
lea rdx, [rbp + 0x108]
mov rcx, rsi
call fcn.18003c7b0
cmp dword [rbp + 0x108], 3
jne 0x18003b9e7
mov eax, dword [rbp + 0x10c]
dec eax
movsxd rcx, eax
shl rcx, 5
add rcx, qword [rsi + 0x70]
call fcn.18023b140
mov qword [rbp + 0x2a0], rax
lea rdx, [rbp + 0x2a0]
mov qword [rbp + 0xc8], 0x103440ca
lea rax, [0x180252128]
add rax, 0x103440ca
lea rcx, [rbp + 0xc0]
mov qword [rbp + 0xc0], rax
movaps xmm0, xmmword [rbp + 0xc0]
movdqa xmmword [rbp + 0xc0], xmm0
call fcn.18023c5e0
jmp 0x18003b9e7
lea rdx, [rbp + 0x110]
mov rcx, rsi
call fcn.18003c7b0
cmp dword [rbp + 0x110], 2
jne 0x18003b9e7
mov ecx, 0x148
call fcn.180249f28
movzx edx, word [rbp + 0x114]
mov r8, rax
mov rcx, rax
call fcn.180062160
jmp 0x18003b9e7
lea rdx, [rbp + 0x118]
mov rcx, rsi
call fcn.18003c7b0
cmp dword [rbp + 0x118], 3
jne 0x18003b9e7
lea rcx, [rbp + 0x320]
call fcn.18000ba20
mov eax, dword [rbp + 0x11c]
dec eax
movsxd rcx, eax
shl rcx, 5
add rcx, qword [rsi + 0x70]
call fcn.18023b140
mov rdx, rax
lea rcx, [rbp + 0x320]
xor r8d, r8d
call fcn.1800319e0
lea rcx, [rbp + 0x320]
call fcn.18000ba40
jmp 0x18003b9e7
lea rdx, [rbp + 0x120]
mov rcx, rsi
call fcn.18003c7b0
lea rdx, [rbp + 0x128]
mov rcx, rsi
call fcn.18003c7b0
cmp dword [rbp + 0x128], 3
jne 0x18003b9e7
cmp dword [rbp + 0x120], 3
jne 0x18003b9e7
lea rcx, [rbp + 0x338]
call fcn.18000ba20
mov eax, dword [rbp + 0x124]
dec eax
movsxd rcx, eax
shl rcx, 5
add rcx, qword [rsi + 0x70]
call fcn.18023b140
mov ecx, dword [rbp + 0x12c]
mov rbx, rax
dec ecx
movsxd rcx, ecx
shl rcx, 5
add rcx, qword [rsi + 0x70]
call fcn.18023b140
mov r8, rbx
lea rcx, [rbp + 0x338]
mov rdx, rax
call fcn.1800319e0
lea rcx, [rbp + 0x338]
call fcn.18000ba40
jmp 0x18003b9e7
lea rdx, [rbp + 0x130]
mov rcx, rsi
call fcn.18003c7b0
cmp dword [rbp + 0x130], 3
jne 0x18003b9e7
mov ecx, 0x98
call fcn.180249f28
mov ecx, dword [rbp + 0x134]
mov rbx, rax
dec ecx
movsxd rcx, ecx
shl rcx, 5
add rcx, qword [rsi + 0x70]
call fcn.18023b140
lea rdx, [0x18027a397]
mov r9b, 1
mov qword [rsp + 0x20], rdx
mov r8, rdx
mov rdx, rax
mov rcx, rbx
call fcn.180034150
jmp 0x18003b9e7
mov dword [rsi + 0x20], 2
call fcn.18000ab80
mov dword [rsi + 0x24], eax
jmp 0x18003b9e7
lea rdx, [rbp + 0x138]
mov rcx, rsi
call fcn.18003c7b0
lea rdx, [rbp + 0x140]
mov rcx, rsi
call fcn.18003c7b0
cmp dword [rbp + 0x140], 2
jne 0x18003b9e7
cmp dword [rbp + 0x138], 2
jne 0x18003b9e7
mov dword [rsi + 0x20], 2
mov ebx, dword [rbp + 0x13c]
mov edi, dword [rbp + 0x144]
call fcn.18000ab80
xor edx, edx
mov ecx, ebx
sub ecx, edi
inc ecx
div ecx
lea ecx, [rbx + 1]
mov eax, edx
xor edx, edx
div ecx
add edx, edi
mov dword [rsi + 0x24], edx
jmp 0x18003b9e7
lea rdx, [rbp + 0x148]
mov rcx, rsi
call fcn.18003c7b0
cmp dword [rbp + 0x148], 2
jne 0x18003b9e7
xor eax, eax
mov dword [rsp + 0x60], 0xa6c6b2
mov byte [rsp + 0x66], al
movabs r9, 0xaaaaaaaaaaaaaaab
mov word [rsp + 0x64], 0x29d7
mov qword [rsp + 0x30], r14
mov rax, qword [rsp + 0x30]
nop dword [rax]
nop dword [rax + rax]
mov rcx, qword [rsp + 0x30]
mov rax, qword [rsp + 0x30]
movzx r8d, byte [rsp + rax + 0x61]
mov rax, r9
mul rcx
shr rdx, 4
movzx eax, dl
add al, al
add dl, al
mov rax, qword [rsp + 0x30]
shl dl, 3
sub cl, dl
mov edx, 0x472fe595
sar edx, cl
xor dl, r8b
mov byte [rsp + rax + 0x61], dl
mov rax, qword [rsp + 0x30]
inc rax
mov qword [rsp + 0x30], rax
mov rax, qword [rsp + 0x30]
cmp rax, 5
jb 0x180036df0
mov byte [rsp + 0x66], r14b
call fcn.1800015c0
mov edx, dword [0x1802848b4]
mov rsi, rax
mov rcx, qword gs:[0x58]
mov edi, 4
lea rbx, [rcx + rdx*8]
mov rcx, qword [rcx + rdx*8]
mov edx, dword [rdi + rcx]
cmp dword [0x180286968], edx
jle 0x180036ea4
lea rcx, [0x180286968]
call fcn.180249e18
cmp dword [0x180286968], 0xffffffff
jne 0x180036ea4
mov rax, qword [sym.imp.KERNEL32.dll_LoadLibraryA]
lea rcx, [0x180286968]
mov qword [0x18028a9f8], rax
call fcn.180249db8
mov rax, qword [rbx]
mov ecx, dword [rdi + rax]
cmp dword [0x18028a99c], ecx
jle 0x180036ee1
lea rcx, [0x18028a99c]
call fcn.180249e18
cmp dword [0x18028a99c], 0xffffffff
jne 0x180036ee1
mov rax, qword [sym.imp.KERNEL32.dll_GetProcAddress]
lea rcx, [0x18028a99c]
mov qword [0x18028a9a0], rax
call fcn.180249db8
mov rax, qword [0x18028a9f8]
mov rcx, rsi
call rax
mov r8, qword [0x18028a9a0]
lea rdx, [rsp + 0x61]
mov rcx, rax
call r8
mov ecx, dword [rbp + 0x14c]
call rax
jmp 0x18003b9e7
lea rdx, [rbp + 0x150]
mov rcx, rsi
call fcn.18003c7b0
cmp dword [rbp + 0x150], 3
jne 0x18003b9e7
mov eax, dword [rbp + 0x154]
dec eax
movsxd rcx, eax
shl rcx, 5
add rcx, qword [rsi + 0x70]
call fcn.18023b140
mov rcx, qword gs:[0x58]
lea rsi, [0x18027a648]
mov edx, dword [0x1802848b4]
mov rdi, rax
mov r15d, 4
movabs rbx, 0xaaaaaaaaaaaaaaab
mov qword [rbp + 0x90], rax
mov qword [rbp + 0xc0], r15
lea r13, [rcx + rdx*8]
mov rcx, qword [rcx + rdx*8]
mov qword [rsp + 0x58], r13
mov ecx, dword [r15 + rcx]
cmp dword [0x18028aed4], ecx
jle 0x180037056
lea rcx, [0x18028aed4]
call fcn.180249e18
cmp dword [0x18028aed4], 0xffffffff
jne 0x180037056
xor eax, eax
mov word [rsp + 0x38], 0x4ee5
mov byte [rsp + 0x3a], al
mov qword [rsp + 0x30], r14
mov rax, qword [rsp + 0x30]
nop dword [rax]
nop dword [rax + rax]
mov rcx, qword [rsp + 0x30]
mov rax, qword [rsp + 0x30]
movzx r8d, byte [rsp + rax + 0x39]
mov rax, rbx
mul rcx
shr rdx, 4
movzx eax, dl
add al, al
add dl, al
mov rax, qword [rsp + 0x30]
shl dl, 3
sub cl, dl
mov edx, 0x7adb842c
sar edx, cl
xor dl, r8b
mov byte [rsp + rax + 0x39], dl
mov rax, qword [rsp + 0x30]
inc rax
mov qword [rsp + 0x30], rax
mov rax, qword [rsp + 0x30]
cmp rax, 1
jb 0x180036fd0
lea rdx, [rsp + 0x39]
mov byte [rsp + 0x3a], r14b
lea rcx, [0x18028ae80]
call fcn.1800046e0
lea rcx, [0x180269ec0]
mov qword [0x18028ae80], rsi
call fcn.18024a2cc
lea rcx, [0x18028aed4]
call fcn.180249db8
mov rax, qword [0x18028ae80]
lea rcx, [0x18028ae80]
mov rdx, rdi
mov r8, qword [rax]
call r8
test al, al
je 0x1800374b9
mov rax, qword [r13]
mov ecx, dword [r15 + rax]
cmp dword [0x18028aed0], ecx
jle 0x1800372d1
lea rcx, [0x18028aed0]
call fcn.180249e18
cmp dword [0x18028aed0], 0xffffffff
jne 0x1800372d1
lea rcx, [0x180286978]
call fcn.18000ba20
lea rcx, [0x180286990]
call fcn.18000ba20
lea rdi, [0x180286970]
lea rcx, [0x1802869b0]
mov qword [0x180286970], rdi
call fcn.18000ba20
lea rcx, [0x1802869c8]
call fcn.18000ba20
lea rcx, [0x1802869e0]
mov qword [0x1802869a8], rdi
call fcn.18000ba20
lea rcx, [0x18028a498]
mov word [0x18028873c], r14w
mov word [0x18028a484], r14w
mov qword [0x18028a498], r14
mov qword [0x18028a4a0], r14
call fcn.18023be80
mov dword [0x18028a488], r14d
mov qword [0x18028a490], r14
mov dword [rbp + 0xf], 0xf6540ee6
mov dword [rbp + 0x13], 0x14d710a8
mov dword [rbp + 0x17], 0xfd6e6259
mov word [rbp + 0x1b], 0x83
mov qword [rsp + 0x30], r14
mov rax, qword [rsp + 0x30]
mov rcx, qword [rsp + 0x30]
mov rax, qword [rsp + 0x30]
movzx r8d, byte [rbp + rax + 0x10]
mov rax, rbx
mul rcx
shr rdx, 4
movzx eax, dl
add al, al
add dl, al
mov rax, qword [rsp + 0x30]
shl dl, 3
sub cl, dl
mov edx, 0x736e164d
sar edx, cl
xor dl, r8b
mov byte [rbp + rax + 0x10], dl
mov rax, qword [rsp + 0x30]
inc rax
mov qword [rsp + 0x30], rax
mov rax, qword [rsp + 0x30]
cmp rax, 0xc
jb 0x180037150
mov byte [rbp + 0x1c], r14b
call fcn.1800015c0
mov rcx, qword [r13]
mov rbx, rax
mov edx, dword [r15 + rcx]
cmp dword [0x180286968], edx
jle 0x1800371ec
lea rcx, [0x180286968]
call fcn.180249e18
cmp dword [0x180286968], 0xffffffff
jne 0x1800371ec
mov rcx, qword [sym.imp.KERNEL32.dll_LoadLibraryA]
mov qword [0x18028a9f8], rcx
lea rcx, [0x180286968]
call fcn.180249db8
mov rax, qword [r13]
mov ecx, dword [r15 + rax]
cmp dword [0x18028a99c], ecx
jle 0x18003722b
lea rcx, [0x18028a99c]
call fcn.180249e18
cmp dword [0x18028a99c], 0xffffffff
jne 0x18003722b
mov rax, qword [sym.imp.KERNEL32.dll_GetProcAddress]
lea rcx, [0x18028a99c]
mov qword [0x18028a9a0], rax
call fcn.180249db8
mov rax, qword [0x18028a9f8]
mov rcx, rbx
call rax
mov r8, qword [0x18028a9a0]
lea rdx, [rbp + 0x10]
mov rcx, rax
call r8
xor r8d, r8d
xor edx, edx
xor ecx, ecx
call rax
lea rcx, [0x18028a4c8]
mov qword [0x18028a4b8], rax
mov qword [0x18028a4c8], r14
mov qword [0x18028a4d0], r14
call fcn.18023b970
lea rcx, [0x18028a4e0]
call fcn.18000ba20
lea rcx, [0x180269f20]
mov qword [0x18028a4a8], r14
mov qword [0x18028a4b0], r14
mov byte [0x18028a4c0], r14b
mov dword [0x18028a4d8], 0x10000
mov dword [0x18028a4f8], r14d
mov qword [0x18028a910], r14
mov qword [0x18028a918], r14
mov byte [0x18028a920], r14b
call fcn.18024a2cc
lea rcx, [0x18028aed0]
call fcn.180249db8
lea rcx, [0x18028a4b8]
call fcn.180001a60
mov rax, qword [0x1802869e8]
mov esi, r14d
mov rcx, qword [0x1802869e0]
sub rax, rcx
sar rax, 3
test eax, eax
je 0x18003749c
mov r13, qword [rbp + 0x90]
lea rdi, [0x18028a9a8]
mov r15d, 0x57
mov eax, esi
lea rdx, [rbp + 0x218]
lea r12, [rax*8]
mov rax, qword [rcx + rax*8]
mov rcx, qword [rax + 0x20]
call fcn.18000a090
mov rbx, r14
mov ecx, dword [rax]
mov dword [rbp + 0xd0], ecx
mov byte [0x18028a9a8], r14b
movzx ecx, byte [rbp + rbx + 0xd0]
lea r8, [rbp + 0x3c]
nop dword [rax]
mov eax, 0xcccccccd
mul ecx
shr edx, 3
lea eax, [rdx + rdx*4]
add eax, eax
sub ecx, eax
mov eax, 0x30
cmp ecx, 0xa
cmovge eax, r15d
add al, cl
mov ecx, edx
mov byte [r8], al
inc r8
test edx, edx
jg 0x180037350
lea rax, [rbp + 0x3c]
mov byte [r8], r14b
sub r8d, eax
mov r10d, r14d
mov r11d, r8d
shr r11d, 1
je 0x1800373c8
lea r9, [rbp + 0x3c]
nop dword [rax]
nop dword [rax + rax]
movzx edx, byte [r9]
lea rcx, [rbp + 0x3c]
mov eax, r8d
lea r9, [r9 + 1]
sub eax, r10d
inc r10d
dec eax
add rcx, rax
movzx eax, byte [rcx]
mov byte [r9 - 1], al
mov byte [rcx], dl
cmp r10d, r11d
jb 0x1800373a0
cmp byte [0x18028a9a8], r14b
mov ecx, r14d
je 0x1800373dc
inc ecx
cmp byte [rcx + rdi], r14b
jne 0x1800373d4
lea rdx, [rbp + 0x3c]
add rcx, rdi
nop dword [rax]
nop word [rax + rax]
movzx eax, byte [rdx]
lea rdx, [rdx + 1]
mov byte [rcx], al
lea rcx, [rcx + 1]
test al, al
jne 0x1800373f0
cmp rbx, 3
jae 0x180037441
cmp byte [0x18028a9a8], r14b
mov ecx, r14d
je 0x18003741b
inc ecx
cmp byte [rcx + rdi], r14b
jne 0x180037413
lea rdx, [0x18027a378]
add rcx, rdi
nop word [rax + rax]
movzx eax, byte [rdx]
lea rdx, [rdx + 1]
mov byte [rcx], al
lea rcx, [rcx + 1]
test al, al
jne 0x180037430
inc rbx
cmp rbx, 4
jl 0x180037341
mov rdx, rdi
mov rcx, r13
call fcn.180005170
test al, al
je 0x180037471
mov rax, qword [0x1802869e0]
mov rcx, qword [rax + r12]
mov rcx, qword [rcx + 0x20]
call fcn.180009b60
mov rax, qword [0x1802869e8]
inc esi
mov rcx, qword [0x1802869e0]
sub rax, rcx
sar rax, 3
cmp esi, eax
jb 0x180037311
mov r13, qword [rsp + 0x58]
mov r15, qword [rbp + 0xc0]
lea rcx, [0x18028a4b8]
call fcn.180001bf0
movabs rbx, 0xaaaaaaaaaaaaaaab
lea rsi, [0x18027a648]
mov rax, qword [r13]
mov ecx, dword [r15 + rax]
cmp dword [0x18028aed4], ecx
jle 0x180037766
lea rcx, [0x18028aed4]
call fcn.180249e18
cmp dword [0x18028aed4], 0xffffffff
jne 0x180037766
xor eax, eax
mov word [rsp + 0x3b], 0x4ee5
mov byte [rsp + 0x3d], al
mov qword [rsp + 0x30], r14
mov rax, qword [rsp + 0x30]
nop dword [rax]
mov rcx, qword [rsp + 0x30]
mov rax, qword [rsp + 0x30]
movzx r8d, byte [rsp + rax + 0x3c]
mov rax, rbx
mul rcx
shr rdx, 4
movzx eax, dl
add al, al
add dl, al
mov rax, qword [rsp + 0x30]
shl dl, 3
sub cl, dl
mov edx, 0x7adb842c
sar edx, cl
xor dl, r8b
mov byte [rsp + rax + 0x3c], dl
mov rax, qword [rsp + 0x30]
inc rax
mov qword [rsp + 0x30], rax
mov rax, qword [rsp + 0x30]
cmp rax, 1
jb 0x180037500
lea rdx, [rsp + 0x3c]
mov byte [rsp + 0x3d], r14b
lea rcx, [0x18028ae80]
call fcn.1800046e0
mov qword [0x18028ae80], rsi
jmp 0x18003774e
lea rdx, [rbp + 0x298]
mov rcx, rsi
call fcn.18003c7b0
cmp dword [rbp + 0x298], 3
jne 0x18003b9e7
mov ecx, dword [0x1802848b4]
lea r15, [0x18027a648]
mov rax, qword gs:[0x58]
movabs rsi, 0xaaaaaaaaaaaaaaab
lea rbx, [rax + rcx*8]
mov ecx, 4
mov rax, qword [rbx]
mov edi, ecx
mov eax, dword [rcx + rax]
cmp dword [0x18028aed4], eax
jle 0x180037686
lea rcx, [0x18028aed4]
call fcn.180249e18
cmp dword [0x18028aed4], 0xffffffff
jne 0x180037686
xor eax, eax
mov word [rsp + 0x3e], 0x4ee5
mov byte [rsp + 0x40], al
mov qword [rsp + 0x30], r14
mov rax, qword [rsp + 0x30]
nop dword [rax]
mov rcx, qword [rsp + 0x30]
mov rax, qword [rsp + 0x30]
movzx r8d, byte [rsp + rax + 0x3f]
mov rax, rsi
mul rcx
shr rdx, 4
movzx eax, dl
add al, al
add dl, al
mov rax, qword [rsp + 0x30]
shl dl, 3
sub cl, dl
mov edx, 0x7adb842c
sar edx, cl
xor dl, r8b
mov byte [rsp + rax + 0x3f], dl
mov rax, qword [rsp + 0x30]
inc rax
mov qword [rsp + 0x30], rax
mov rax, qword [rsp + 0x30]
cmp rax, 1
jb 0x180037600
lea rdx, [rsp + 0x3f]
mov byte [rsp + 0x40], r14b
lea rcx, [0x18028ae80]
call fcn.1800046e0
lea rcx, [0x180269ec0]
mov qword [0x18028ae80], r15
call fcn.18024a2cc
lea rcx, [0x18028aed4]
call fcn.180249db8
lea rcx, [0x18028ae80]
call fcn.180004f70
mov rax, qword [rbx]
mov ecx, dword [rdi + rax]
cmp dword [0x18028aed4], ecx
jle 0x180037766
lea rcx, [0x18028aed4]
call fcn.180249e18
cmp dword [0x18028aed4], 0xffffffff
jne 0x180037766
xor eax, eax
mov word [rsp + 0x41], 0x4ee5
mov byte [rsp + 0x43], al
mov qword [rsp + 0x30], r14
mov rax, qword [rsp + 0x30]
nop dword [rax]
nop dword [rax + rax]
mov rcx, qword [rsp + 0x30]
mov rax, qword [rsp + 0x30]
movzx r8d, byte [rsp + rax + 0x42]
mov rax, rsi
mul rcx
shr rdx, 4
movzx eax, dl
add al, al
add dl, al
mov rax, qword [rsp + 0x30]
shl dl, 3
sub cl, dl
mov edx, 0x7adb842c
sar edx, cl
xor dl, r8b
mov byte [rsp + rax + 0x42], dl
mov rax, qword [rsp + 0x30]
inc rax
mov qword [rsp + 0x30], rax
mov rax, qword [rsp + 0x30]
cmp rax, 1
jb 0x1800376e0
lea rdx, [rsp + 0x42]
mov byte [rsp + 0x43], r14b
lea rcx, [0x18028ae80]
call fcn.1800046e0
mov qword [0x18028ae80], r15
lea rcx, [0x180269ec0]
call fcn.18024a2cc
lea rcx, [0x18028aed4]
call fcn.180249db8
lea rcx, [0x18028ae80]
call fcn.180004d10
jmp 0x18003b9e7
lea rdx, [rbp + 0x158]
mov rcx, rsi
call fcn.18003c7b0
cmp dword [rbp + 0x158], 3
jne 0x18003b9e7
mov edx, dword [0x1802848b4]
mov rax, qword gs:[0x58]
mov ecx, 4
mov rax, qword [rax + rdx*8]
mov eax, dword [rcx + rax]
cmp dword [0x18028aa10], eax
jle 0x1800377ef
lea rcx, [0x18028aa10]
call fcn.180249e18
cmp dword [0x18028aa10], 0xffffffff
jne 0x1800377ef
lea rcx, [0x18028a930]
call fcn.180002cc0
lea rcx, [0x180269e90]
call fcn.18024a2cc
lea rcx, [0x18028aa10]
call fcn.180249db8
mov eax, dword [rbp + 0x15c]
dec eax
movsxd rcx, eax
shl rcx, 5
add rcx, qword [rsi + 0x70]
call fcn.18023b140
mov r8, rax
lea rdx, [rbp + 0x1e0]
lea rcx, [0x18028a930]
call fcn.180003fd0
mov rcx, qword [rbp + 0x1e8]
mov rdx, qword [rbp + 0x1e0]
cmp rcx, rdx
je 0x180037836
cmp byte [rcx - 1], r14b
je 0x18003785e
lea rdx, [rbp + 0xb58]
mov byte [rbp + 0xb58], r14b
lea rcx, [rbp + 0x1e0]
call fcn.18023aa40
mov rcx, qword [rbp + 0x1e8]
mov rdx, qword [rbp + 0x1e0]
cmp rcx, rdx
je 0x180037923
mov dword [rsi + 0x20], 3
lea rcx, [rbp + 0x720]
mov r15, qword [rbp + 0x1e0]
mov rdx, r15
call fcn.18023b220
lea rdx, [rbp + 0x48]
mov r14, rax
lea rcx, [rsi + 0x70]
mov ebx, 1
call fcn.1802393e0
lea rdx, [rbp + 0x290]
lea rcx, [rsi + 0x70]
call fcn.1802393d0
mov rcx, qword [rbp + 0x48]
cmp rcx, qword [rax]
je 0x1800378e1
mov rdx, rcx
mov rcx, r14
call fcn.18023c690
test al, al
jne 0x180037934
add qword [rbp + 0x48], 0x20
lea rdx, [rbp + 0x290]
lea rcx, [rsi + 0x70]
inc ebx
call fcn.1802393d0
mov rcx, qword [rbp + 0x48]
cmp rcx, qword [rax]
jne 0x1800378b2
mov rcx, r14
call fcn.18023c0a0
mov rdx, r15
lea rcx, [rbp + 0x380]
call fcn.18023b220
lea rdx, [rbp + 0x380]
lea rcx, [rsi + 0x70]
call fcn.18023ad30
lea rcx, [rbp + 0x380]
call fcn.18023c0a0
mov rbx, qword [rsi + 0x78]
sub rbx, qword [rsi + 0x70]
sar rbx, 5
mov dword [rsi + 0x24], ebx
lea rcx, [rbp + 0x1e0]
call fcn.18000ba40
jmp 0x18003b9e7
mov rcx, r14
call fcn.18023c0a0
test ebx, ebx
jne 0x180037920
jmp 0x1800378e9
lea rdx, [rbp + 0x160]
mov rcx, rsi
call fcn.18003c7b0
lea rdx, [rbp + 0x168]
mov rcx, rsi
call fcn.18003c7b0
cmp dword [rbp + 0x168], 3
jne 0x18003b9e7
cmp dword [rbp + 0x160], 3
jne 0x18003b9e7
mov ecx, dword [0x1802848b4]
mov rax, qword gs:[0x58]
lea rdi, [rax + rcx*8]
mov ecx, 4
mov rax, qword [rdi]
mov r14d, ecx
mov eax, dword [rcx + rax]
cmp dword [0x18028aa10], eax
jle 0x1800379dc
lea rcx, [0x18028aa10]
call fcn.180249e18
cmp dword [0x18028aa10], 0xffffffff
jne 0x1800379dc
lea rcx, [0x18028a930]
call fcn.180002cc0
lea rcx, [0x180269e90]
call fcn.18024a2cc
lea rcx, [0x18028aa10]
call fcn.180249db8
mov eax, dword [rbp + 0x164]
dec eax
movsxd rcx, eax
shl rcx, 5
add rcx, qword [rsi + 0x70]
call fcn.18023b140
mov ecx, dword [rbp + 0x16c]
mov rbx, rax
dec ecx
movsxd rcx, ecx
shl rcx, 5
add rcx, qword [rsi + 0x70]
call fcn.18023b140
mov r8, rbx
lea rcx, [0x18028a930]
mov rdx, rax
call fcn.180003d40
mov rax, qword [rdi]
mov ecx, dword [r14 + rax]
jmp 0x180037c54
lea rdx, [rbp + 0x170]
mov rcx, rsi
call fcn.18003c7b0
lea rdx, [rbp + 0xe0]
mov rcx, rsi
call fcn.18003c7b0
cmp dword [rbp + 0xe0], 3
jne 0x18003b9e7
cmp dword [rbp + 0x170], 3
jne 0x18003b9e7
mov ecx, dword [0x1802848b4]
mov rax, qword gs:[0x58]
lea r14, [rax + rcx*8]
mov ecx, 4
mov rax, qword [r14]
mov r15d, ecx
mov eax, dword [rcx + rax]
cmp dword [0x18028aa10], eax
jle 0x180037ac7
lea rcx, [0x18028aa10]
call fcn.180249e18
cmp dword [0x18028aa10], 0xffffffff
jne 0x180037ac7
lea rcx, [0x18028a930]
call fcn.180002cc0
lea rcx, [0x180269e90]
call fcn.18024a2cc
lea rcx, [0x18028aa10]
call fcn.180249db8
mov eax, dword [rbp + 0xe4]
dec eax
movsxd rcx, eax
shl rcx, 5
add rcx, qword [rsi + 0x70]
call fcn.18023b140
mov r8, rax
lea rdx, [rbp + 0x560]
lea rcx, [0x18028a930]
call fcn.180003fd0
lea rcx, [rbp + 0x560]
mov rdi, qword [rax + 8]
mov rbx, qword [rax]
call fcn.18000ba40
cmp rdi, rbx
jne 0x18003b9e7
mov rax, qword [r14]
mov ecx, dword [r15 + rax]
cmp dword [0x18028aa10], ecx
jle 0x180037b59
lea rcx, [0x18028aa10]
call fcn.180249e18
cmp dword [0x18028aa10], 0xffffffff
jne 0x180037b59
lea rcx, [0x18028a930]
call fcn.180002cc0
lea rcx, [0x180269e90]
call fcn.18024a2cc
lea rcx, [0x18028aa10]
call fcn.180249db8
mov eax, dword [rbp + 0x174]
dec eax
movsxd rcx, eax
shl rcx, 5
add rcx, qword [rsi + 0x70]
call fcn.18023b140
mov ecx, dword [rbp + 0xe4]
mov rbx, rax
dec ecx
movsxd rcx, ecx
shl rcx, 5
add rcx, qword [rsi + 0x70]
call fcn.18023b140
mov r8, rbx
lea rcx, [0x18028a930]
mov rdx, rax
call fcn.180003d40
mov rax, qword [r14]
mov ecx, dword [r15 + rax]
jmp 0x180037c54
lea rdx, [rbp + 0x178]
mov rcx, rsi
call fcn.18003c7b0
cmp dword [rbp + 0x178], 3
jne 0x18003b9e7
mov ecx, dword [0x1802848b4]
mov rax, qword gs:[0x58]
lea rbx, [rax + rcx*8]
mov ecx, 4
mov rax, qword [rbx]
mov edi, ecx
mov eax, dword [rcx + rax]
cmp dword [0x18028aa10], eax
jle 0x180037c27
lea rcx, [0x18028aa10]
call fcn.180249e18
cmp dword [0x18028aa10], 0xffffffff
jne 0x180037c27
lea rcx, [0x18028a930]
call fcn.180002cc0
lea rcx, [0x180269e90]
call fcn.18024a2cc
lea rcx, [0x18028aa10]
call fcn.180249db8
mov eax, dword [rbp + 0x17c]
dec eax
movsxd rcx, eax
shl rcx, 5
add rcx, qword [rsi + 0x70]
call fcn.18023b140
mov rdx, rax
lea rcx, [0x18028a930]
call fcn.180004180
mov rax, qword [rbx]
mov ecx, dword [rdi + rax]
cmp dword [0x18028aa10], ecx
jle 0x180037c95
lea rcx, [0x18028aa10]
call fcn.180249e18
cmp dword [0x18028aa10], 0xffffffff
jne 0x180037c95
lea rcx, [0x18028a930]
call fcn.180002cc0
lea rcx, [0x180269e90]
call fcn.18024a2cc
lea rcx, [0x18028aa10]
call fcn.180249db8
lea rcx, [0x18028a930]
call fcn.180003860
jmp 0x18003b9e7
mov dword [rsi + 0x20], 3
xor eax, eax
mov byte [rsp + 0x50], al
movabs r9, 0xaaaaaaaaaaaaaaab
mov dword [rsp + 0x4a], 0x7230a5dd
mov word [rsp + 0x4e], 0xbb28
mov qword [rsp + 0x30], r14
mov rax, qword [rsp + 0x30]
nop word [rax + rax]
mov rcx, qword [rsp + 0x30]
mov rax, qword [rsp + 0x30]
movzx r8d, byte [rsp + rax + 0x4b]
mov rax, r9
mul rcx
shr rdx, 4
movzx eax, dl
add al, al
add dl, al
mov rax, qword [rsp + 0x30]
shl dl, 3
sub cl, dl
mov edx, 0x2591a8f2
sar edx, cl
xor dl, r8b
mov byte [rsp + rax + 0x4b], dl
mov rax, qword [rsp + 0x30]
inc rax
mov qword [rsp + 0x30], rax
mov rax, qword [rsp + 0x30]
cmp rax, 5
jb 0x180037ce0
lea rdx, [rsp + 0x4b]
mov byte [rsp + 0x50], r14b
lea rcx, [rbp + 0x740]
call fcn.18023b220
lea rdx, [rbp + 0x50]
mov r14, rax
lea rcx, [rsi + 0x70]
mov ebx, 1
call fcn.1802393e0
lea rdx, [rbp + 0x288]
lea rcx, [rsi + 0x70]
call fcn.1802393d0
mov rcx, qword [rbp + 0x50]
cmp rcx, qword [rax]
je 0x180037da4
mov rdx, rcx
mov rcx, r14
call fcn.18023c690
test al, al
jne 0x180037ded
add qword [rbp + 0x50], 0x20
lea rdx, [rbp + 0x288]
lea rcx, [rsi + 0x70]
inc ebx
call fcn.1802393d0
mov rcx, qword [rbp + 0x50]
cmp rcx, qword [rax]
jne 0x180037d75
mov rcx, r14
call fcn.18023c0a0
lea rdx, [rsp + 0x4b]
lea rcx, [rbp + 0x3a0]
call fcn.18023b220
lea rdx, [rbp + 0x3a0]
lea rcx, [rsi + 0x70]
call fcn.18023ad30
lea rcx, [rbp + 0x3a0]
call fcn.18023c0a0
mov rbx, qword [rsi + 0x78]
sub rbx, qword [rsi + 0x70]
sar rbx, 5
mov dword [rsi + 0x24], ebx
jmp 0x18003b9e7
mov rcx, r14
call fcn.18023c0a0
test ebx, ebx
jne 0x180039cbe
jmp 0x180037dac
mov dword [rsi + 0x20], 2
call fcn.18002abb0
mov dword [rsi + 0x24], eax
jmp 0x18003b9e7
mov edx, dword [0x1802848b4]
mov rax, qword gs:[0x58]
mov dword [rsi + 0x20], 3
mov ecx, 4
mov rax, qword [rax + rdx*8]
mov eax, dword [rcx + rax]
cmp dword [0x18028a9b8], eax
jle 0x180037e76
lea rcx, [0x18028a9b8]
call fcn.180249e18
cmp dword [0x18028a9b8], 0xffffffff
jne 0x180037e76
lea rcx, [0x18028a9c0]
call fcn.18002a740
lea rcx, [0x180269f10]
call fcn.18024a2cc
lea rcx, [0x18028a9b8]
call fcn.180249db8
cmp byte [0x18028a9f1], r14b
jne 0x180037e8b
lea rcx, [0x18028a9c0]
call fcn.18002a750
lea rdx, [0x18028a9d0]
lea rcx, [rbp + 0x760]
call fcn.18023b220
lea rdx, [rbp + 0x58]
mov r14, rax
lea rcx, [rsi + 0x70]
mov ebx, 1
call fcn.1802393e0
lea rdx, [rbp + 0x280]
lea rcx, [rsi + 0x70]
call fcn.1802393d0
mov rcx, qword [rbp + 0x58]
cmp rcx, qword [rax]
je 0x180037eff
nop dword [rax]
mov rdx, rcx
mov rcx, r14
call fcn.18023c690
test al, al
jne 0x180037f4a
add qword [rbp + 0x58], 0x20
lea rdx, [rbp + 0x280]
lea rcx, [rsi + 0x70]
inc ebx
call fcn.1802393d0
mov rcx, qword [rbp + 0x58]
cmp rcx, qword [rax]
jne 0x180037ed0
mov rcx, r14
call fcn.18023c0a0
lea rdx, [0x18028a9d0]
lea rcx, [rbp + 0x3c0]
call fcn.18023b220
lea rdx, [rbp + 0x3c0]
lea rcx, [rsi + 0x70]
call fcn.18023ad30
lea rcx, [rbp + 0x3c0]
call fcn.18023c0a0
mov rbx, qword [rsi + 0x78]
sub rbx, qword [rsi + 0x70]
sar rbx, 5
mov dword [rsi + 0x24], ebx
jmp 0x18003b9e7
mov rcx, r14
call fcn.18023c0a0
test ebx, ebx
jne 0x180039cbe
jmp 0x180037f07
mov dword [rsi + 0x20], 3
movabs r9, 0xaaaaaaaaaaaaaaab
mov dword [rsp + 0x44], 0x61897f76
mov word [rsp + 0x48], 0x1a
mov qword [rsp + 0x30], r14
mov rax, qword [rsp + 0x30]
nop word [rax + rax]
mov rcx, qword [rsp + 0x30]
mov rax, qword [rsp + 0x30]
movzx r8d, byte [rsp + rax + 0x45]
mov rax, r9
mul rcx
shr rdx, 4
movzx eax, dl
add al, al
add dl, al
mov rax, qword [rsp + 0x30]
shl dl, 3
sub cl, dl
mov edx, 0x3a7ed14f
sar edx, cl
xor dl, r8b
mov byte [rsp + rax + 0x45], dl
mov rax, qword [rsp + 0x30]
inc rax
mov qword [rsp + 0x30], rax
mov rax, qword [rsp + 0x30]
cmp rax, 4
jb 0x180037f90
lea rdx, [rsp + 0x45]
mov byte [rsp + 0x49], r14b
lea rcx, [rbp + 0x780]
call fcn.18023b220
lea rdx, [rbp + 0x60]
mov r14, rax
lea rcx, [rsi + 0x70]
mov ebx, 1
call fcn.1802393e0
lea rdx, [rbp + 0x278]
lea rcx, [rsi + 0x70]
call fcn.1802393d0
mov rcx, qword [rbp + 0x60]
cmp rcx, qword [rax]
je 0x180038054
mov rdx, rcx
mov rcx, r14
call fcn.18023c690
test al, al
jne 0x18003809d
add qword [rbp + 0x60], 0x20
lea rdx, [rbp + 0x278]
lea rcx, [rsi + 0x70]
inc ebx
call fcn.1802393d0
mov rcx, qword [rbp + 0x60]
cmp rcx, qword [rax]
jne 0x180038025
mov rcx, r14
call fcn.18023c0a0
lea rdx, [rsp + 0x45]
lea rcx, [rbp + 0x3e0]
call fcn.18023b220
lea rdx, [rbp + 0x3e0]
lea rcx, [rsi + 0x70]
call fcn.18023ad30
lea rcx, [rbp + 0x3e0]
call fcn.18023c0a0
mov rbx, qword [rsi + 0x78]
sub rbx, qword [rsi + 0x70]
sar rbx, 5
mov dword [rsi + 0x24], ebx
jmp 0x18003b9e7
mov rcx, r14
call fcn.18023c0a0
test ebx, ebx
jne 0x180039cbe
jmp 0x18003805c
mov ecx, dword [0x1802848b4]
mov rax, qword gs:[0x58]
lea rbx, [rax + rcx*8]
mov ecx, 4
mov rax, qword [rbx]
mov r15d, ecx
mov ecx, dword [rcx + rax]
cmp dword [0x18028aed0], ecx
jle 0x18003832f
lea rcx, [0x18028aed0]
call fcn.180249e18
cmp dword [0x18028aed0], 0xffffffff
jne 0x18003832f
lea rcx, [0x180286978]
call fcn.18000ba20
lea rcx, [0x180286990]
call fcn.18000ba20
lea rdi, [0x180286970]
lea rcx, [0x1802869b0]
mov qword [0x180286970], rdi
call fcn.18000ba20
lea rcx, [0x1802869c8]
call fcn.18000ba20
lea rcx, [0x1802869e0]
mov qword [0x1802869a8], rdi
call fcn.18000ba20
lea rcx, [0x18028a498]
mov word [0x18028873c], r14w
mov word [0x18028a484], r14w
mov qword [0x18028a498], r14
mov qword [0x18028a4a0], r14
call fcn.18023be80
mov dword [0x18028a488], r14d
movabs r9, 0xaaaaaaaaaaaaaaab
mov qword [0x18028a490], r14
mov dword [rbp + 1], 0xf6540ee6
mov dword [rbp + 5], 0x14d710a8
mov dword [rbp + 9], 0xfd6e6259
mov word [rbp + 0xd], 0x83
mov qword [rsp + 0x30], r14
mov rax, qword [rsp + 0x30]
nop dword [rax]
mov rcx, qword [rsp + 0x30]
mov rax, qword [rsp + 0x30]
movzx r8d, byte [rbp + rax + 2]
mov rax, r9
mul rcx
shr rdx, 4
movzx eax, dl
add al, al
add dl, al
mov rax, qword [rsp + 0x30]
shl dl, 3
sub cl, dl
mov edx, 0x736e164d
sar edx, cl
xor dl, r8b
mov byte [rbp + rax + 2], dl
mov rax, qword [rsp + 0x30]
inc rax
mov qword [rsp + 0x30], rax
mov rax, qword [rsp + 0x30]
cmp rax, 0xc
jb 0x1800381b0
mov byte [rbp + 0xe], r14b
call fcn.1800015c0
mov rcx, qword [rbx]
mov rdi, rax
mov edx, dword [r15 + rcx]
cmp dword [0x180286968], edx
jle 0x18003824b
lea rcx, [0x180286968]
call fcn.180249e18
cmp dword [0x180286968], 0xffffffff
jne 0x18003824b
mov rcx, qword [sym.imp.KERNEL32.dll_LoadLibraryA]
mov qword [0x18028a9f8], rcx
lea rcx, [0x180286968]
call fcn.180249db8
mov rax, qword [rbx]
mov ecx, dword [r15 + rax]
cmp dword [0x18028a99c], ecx
jle 0x180038289
lea rcx, [0x18028a99c]
call fcn.180249e18
cmp dword [0x18028a99c], 0xffffffff
jne 0x180038289
mov rax, qword [sym.imp.KERNEL32.dll_GetProcAddress]
lea rcx, [0x18028a99c]
mov qword [0x18028a9a0], rax
call fcn.180249db8
mov rax, qword [0x18028a9f8]
mov rcx, rdi
call rax
mov r8, qword [0x18028a9a0]
lea rdx, [rbp + 2]
mov rcx, rax
call r8
xor r8d, r8d
xor edx, edx
xor ecx, ecx
call rax
lea rcx, [0x18028a4c8]
mov qword [0x18028a4b8], rax
mov qword [0x18028a4c8], r14
mov qword [0x18028a4d0], r14
call fcn.18023b970
lea rcx, [0x18028a4e0]
call fcn.18000ba20
lea rcx, [0x180269f20]
mov qword [0x18028a4a8], r14
mov qword [0x18028a4b0], r14
mov byte [0x18028a4c0], r14b
mov dword [0x18028a4d8], 0x10000
mov dword [0x18028a4f8], r14d
mov qword [0x18028a910], r14
mov qword [0x18028a918], r14
mov byte [0x18028a920], r14b
call fcn.18024a2cc
lea rcx, [0x18028aed0]
call fcn.180249db8
lea rcx, [0x18028a4b8]
call fcn.180001a60
mov ebx, 1
mov dword [rsi + 0x18c], ebx
jmp 0x18003b9e7
mov ecx, dword [0x1802848b4]
mov rax, qword gs:[0x58]
lea rbx, [rax + rcx*8]
mov ecx, 4
mov rax, qword [rbx]
mov r15d, ecx
mov ecx, dword [rcx + rax]
cmp dword [0x18028aed0], ecx
jle 0x1800385cf
lea rcx, [0x18028aed0]
call fcn.180249e18
cmp dword [0x18028aed0], 0xffffffff
jne 0x1800385cf
lea rcx, [0x180286978]
call fcn.18000ba20
lea rcx, [0x180286990]
call fcn.18000ba20
lea rdi, [0x180286970]
lea rcx, [0x1802869b0]
mov qword [0x180286970], rdi
call fcn.18000ba20
lea rcx, [0x1802869c8]
call fcn.18000ba20
lea rcx, [0x1802869e0]
mov qword [0x1802869a8], rdi
call fcn.18000ba20
lea rcx, [0x18028a498]
mov word [0x18028873c], r14w
mov word [0x18028a484], r14w
mov qword [0x18028a498], r14
mov qword [0x18028a4a0], r14
call fcn.18023be80
mov dword [0x18028a488], r14d
movabs r9, 0xaaaaaaaaaaaaaaab
mov qword [0x18028a490], r14
mov dword [rbp - 0xd], 0xf6540ee6
mov dword [rbp - 9], 0x14d710a8
mov dword [rbp - 5], 0xfd6e6259
mov word [rbp - 1], 0x83
mov qword [rsp + 0x30], r14
mov rax, qword [rsp + 0x30]
nop dword [rax]
mov rcx, qword [rsp + 0x30]
mov rax, qword [rsp + 0x30]
movzx r8d, byte [rbp + rax - 0xc]
mov rax, r9
mul rcx
shr rdx, 4
movzx eax, dl
add al, al
add dl, al
mov rax, qword [rsp + 0x30]
shl dl, 3
sub cl, dl
mov edx, 0x736e164d
sar edx, cl
xor dl, r8b
mov byte [rbp + rax - 0xc], dl
mov rax, qword [rsp + 0x30]
inc rax
mov qword [rsp + 0x30], rax
mov rax, qword [rsp + 0x30]
cmp rax, 0xc
jb 0x180038450
mov byte [rbp], r14b
call fcn.1800015c0
mov rcx, qword [rbx]
mov rdi, rax
mov edx, dword [r15 + rcx]
cmp dword [0x180286968], edx
jle 0x1800384eb
lea rcx, [0x180286968]
call fcn.180249e18
cmp dword [0x180286968], 0xffffffff
jne 0x1800384eb
mov rcx, qword [sym.imp.KERNEL32.dll_LoadLibraryA]
mov qword [0x18028a9f8], rcx
lea rcx, [0x180286968]
call fcn.180249db8
mov rax, qword [rbx]
mov ecx, dword [r15 + rax]
cmp dword [0x18028a99c], ecx
jle 0x180038529
lea rcx, [0x18028a99c]
call fcn.180249e18
cmp dword [0x18028a99c], 0xffffffff
jne 0x180038529
mov rax, qword [sym.imp.KERNEL32.dll_GetProcAddress]
lea rcx, [0x18028a99c]
mov qword [0x18028a9a0], rax
call fcn.180249db8
mov rax, qword [0x18028a9f8]
mov rcx, rdi
call rax
mov r8, qword [0x18028a9a0]
lea rdx, [rbp - 0xc]
mov rcx, rax
call r8
xor r8d, r8d
xor edx, edx
xor ecx, ecx
call rax
lea rcx, [0x18028a4c8]
mov qword [0x18028a4b8], rax
mov qword [0x18028a4c8], r14
mov qword [0x18028a4d0], r14
call fcn.18023b970
lea rcx, [0x18028a4e0]
call fcn.18000ba20
lea rcx, [0x180269f20]
mov qword [0x18028a4a8], r14
mov qword [0x18028a4b0], r14
mov byte [0x18028a4c0], r14b
mov dword [0x18028a4d8], 0x10000
mov dword [0x18028a4f8], r14d
mov qword [0x18028a910], r14
mov qword [0x18028a918], r14
mov byte [0x18028a920], r14b
call fcn.18024a2cc
lea rcx, [0x18028aed0]
call fcn.180249db8
lea rcx, [0x18028a4b8]
call fcn.180001bf0
mov dword [rsi + 0x18c], r14d
jmp 0x18003b9e7
mov ecx, dword [0x1802848b4]
mov rax, qword gs:[0x58]
mov dword [rsi + 0x20], 2
lea rbx, [rax + rcx*8]
mov ecx, 4
mov rax, qword [rbx]
mov r15d, ecx
mov ecx, dword [rcx + rax]
cmp dword [0x18028aed0], ecx
jle 0x18003886f
lea rcx, [0x18028aed0]
call fcn.180249e18
cmp dword [0x18028aed0], 0xffffffff
jne 0x18003886f
lea rcx, [0x180286978]
call fcn.18000ba20
lea rcx, [0x180286990]
call fcn.18000ba20
lea rdi, [0x180286970]
lea rcx, [0x1802869b0]
mov qword [0x180286970], rdi
call fcn.18000ba20
lea rcx, [0x1802869c8]
call fcn.18000ba20
lea rcx, [0x1802869e0]
mov qword [0x1802869a8], rdi
call fcn.18000ba20
lea rcx, [0x18028a498]
mov word [0x18028873c], r14w
mov word [0x18028a484], r14w
mov qword [0x18028a498], r14
mov qword [0x18028a4a0], r14
call fcn.18023be80
mov dword [0x18028a488], r14d
movabs r9, 0xaaaaaaaaaaaaaaab
mov qword [0x18028a490], r14
mov dword [rbp - 0x1b], 0xf6540ee6
mov dword [rbp - 0x17], 0x14d710a8
mov dword [rbp - 0x13], 0xfd6e6259
mov word [rbp - 0xf], 0x83
mov qword [rsp + 0x30], r14
mov rax, qword [rsp + 0x30]
nop dword [rax]
mov rcx, qword [rsp + 0x30]
mov rax, qword [rsp + 0x30]
movzx r8d, byte [rbp + rax - 0x1a]
mov rax, r9
mul rcx
shr rdx, 4
movzx eax, dl
add al, al
add dl, al
mov rax, qword [rsp + 0x30]
shl dl, 3
sub cl, dl
mov edx, 0x736e164d
sar edx, cl
xor dl, r8b
mov byte [rbp + rax - 0x1a], dl
mov rax, qword [rsp + 0x30]
inc rax
mov qword [rsp + 0x30], rax
mov rax, qword [rsp + 0x30]
cmp rax, 0xc
jb 0x1800386f0
mov byte [rbp - 0xe], r14b
call fcn.1800015c0
mov rcx, qword [rbx]
mov rdi, rax
mov edx, dword [r15 + rcx]
cmp dword [0x180286968], edx
jle 0x18003878b
lea rcx, [0x180286968]
call fcn.180249e18
cmp dword [0x180286968], 0xffffffff
jne 0x18003878b
mov rcx, qword [sym.imp.KERNEL32.dll_LoadLibraryA]
mov qword [0x18028a9f8], rcx
lea rcx, [0x180286968]
call fcn.180249db8
mov rax, qword [rbx]
mov ecx, dword [r15 + rax]
cmp dword [0x18028a99c], ecx
jle 0x1800387c9
lea rcx, [0x18028a99c]
call fcn.180249e18
cmp dword [0x18028a99c], 0xffffffff
jne 0x1800387c9
mov rax, qword [sym.imp.KERNEL32.dll_GetProcAddress]
lea rcx, [0x18028a99c]
mov qword [0x18028a9a0], rax
call fcn.180249db8
mov rax, qword [0x18028a9f8]
mov rcx, rdi
call rax
mov r8, qword [0x18028a9a0]
lea rdx, [rbp - 0x1a]
mov rcx, rax
call r8
xor r8d, r8d
xor edx, edx
xor ecx, ecx
call rax
lea rcx, [0x18028a4c8]
mov qword [0x18028a4b8], rax
mov qword [0x18028a4c8], r14
mov qword [0x18028a4d0], r14
call fcn.18023b970
lea rcx, [0x18028a4e0]
call fcn.18000ba20
lea rcx, [0x180269f20]
mov qword [0x18028a4a8], r14
mov qword [0x18028a4b0], r14
mov byte [0x18028a4c0], r14b
mov dword [0x18028a4d8], 0x10000
mov dword [0x18028a4f8], r14d
mov qword [0x18028a910], r14
mov qword [0x18028a918], r14
mov byte [0x18028a920], r14b
call fcn.18024a2cc
lea rcx, [0x18028aed0]
call fcn.180249db8
mov rax, qword [0x1802869e8]
sub rax, qword [0x1802869e0]
sar rax, 3
mov dword [rsi + 0x24], eax
jmp 0x18003b9e7
mov ecx, dword [0x1802848b4]
lea rdi, [0x180286970]
mov rax, qword gs:[0x58]
mov dword [rsi + 0x20], 2
lea rbx, [rax + rcx*8]
mov ecx, 4
mov rax, qword [rbx]
mov r15d, ecx
mov eax, dword [rcx + rax]
cmp dword [0x18028aed0], eax
jle 0x180038b0f
lea rcx, [0x18028aed0]
call fcn.180249e18
cmp dword [0x18028aed0], 0xffffffff
jne 0x180038b0f
lea rcx, [0x180286978]
call fcn.18000ba20
lea rcx, [0x180286990]
call fcn.18000ba20
lea rcx, [0x1802869b0]
mov qword [0x180286970], rdi
call fcn.18000ba20
lea rcx, [0x1802869c8]
call fcn.18000ba20
lea rcx, [0x1802869e0]
mov qword [0x1802869a8], rdi
call fcn.18000ba20
lea rcx, [0x18028a498]
mov word [0x18028873c], r14w
mov word [0x18028a484], r14w
mov qword [0x18028a498], r14
mov qword [0x18028a4a0], r14
call fcn.18023be80
mov dword [0x18028a488], r14d
movabs r9, 0xaaaaaaaaaaaaaaab
mov qword [0x18028a490], r14
mov dword [rbp - 0x29], 0xf6540ee6
mov dword [rbp - 0x25], 0x14d710a8
mov dword [rbp - 0x21], 0xfd6e6259
mov word [rbp - 0x1d], 0x83
mov qword [rsp + 0x30], r14
mov rax, qword [rsp + 0x30]
nop
mov rcx, qword [rsp + 0x30]
mov rax, qword [rsp + 0x30]
movzx r8d, byte [rbp + rax - 0x28]
mov rax, r9
mul rcx
shr rdx, 4
movzx eax, dl
add al, al
add dl, al
mov rax, qword [rsp + 0x30]
shl dl, 3
sub cl, dl
mov edx, 0x736e164d
sar edx, cl
xor dl, r8b
mov byte [rbp + rax - 0x28], dl
mov rax, qword [rsp + 0x30]
inc rax
mov qword [rsp + 0x30], rax
mov rax, qword [rsp + 0x30]
cmp rax, 0xc
jb 0x180038990
mov byte [rbp - 0x1c], r14b
call fcn.1800015c0
mov rcx, qword [rbx]
mov r12, rax
mov edx, dword [r15 + rcx]
cmp dword [0x180286968], edx
jle 0x180038a2b
lea rcx, [0x180286968]
call fcn.180249e18
cmp dword [0x180286968], 0xffffffff
jne 0x180038a2b
mov rcx, qword [sym.imp.KERNEL32.dll_LoadLibraryA]
mov qword [0x18028a9f8], rcx
lea rcx, [0x180286968]
call fcn.180249db8
mov rax, qword [rbx]
mov ecx, dword [r15 + rax]
cmp dword [0x18028a99c], ecx
jle 0x180038a69
lea rcx, [0x18028a99c]
call fcn.180249e18
cmp dword [0x18028a99c], 0xffffffff
jne 0x180038a69
mov rax, qword [sym.imp.KERNEL32.dll_GetProcAddress]
lea rcx, [0x18028a99c]
mov qword [0x18028a9a0], rax
call fcn.180249db8
mov rax, qword [0x18028a9f8]
mov rcx, r12
call rax
mov r8, qword [0x18028a9a0]
lea rdx, [rbp - 0x28]
mov rcx, rax
call r8
xor r8d, r8d
xor edx, edx
xor ecx, ecx
call rax
lea rcx, [0x18028a4c8]
mov qword [0x18028a4b8], rax
mov qword [0x18028a4c8], r14
mov qword [0x18028a4d0], r14
call fcn.18023b970
lea rcx, [0x18028a4e0]
call fcn.18000ba20
lea rcx, [0x180269f20]
mov qword [0x18028a4a8], r14
mov qword [0x18028a4b0], r14
mov byte [0x18028a4c0], r14b
mov dword [0x18028a4d8], 0x10000
mov dword [0x18028a4f8], r14d
mov qword [0x18028a910], r14
mov qword [0x18028a918], r14
mov byte [0x18028a920], r14b
call fcn.18024a2cc
lea rcx, [0x18028aed0]
call fcn.180249db8
mov edx, 1
mov rcx, rdi
call fcn.180059050
mov dword [rsi + 0x24], eax
jmp 0x18003b9e7
mov ecx, dword [0x1802848b4]
lea rdi, [0x180286970]
mov rax, qword gs:[0x58]
mov dword [rsi + 0x20], 2
lea rbx, [rax + rcx*8]
mov ecx, 4
mov rax, qword [rbx]
mov r15d, ecx
mov eax, dword [rcx + rax]
cmp dword [0x18028aed0], eax
jle 0x180038daf
lea rcx, [0x18028aed0]
call fcn.180249e18
cmp dword [0x18028aed0], 0xffffffff
jne 0x180038daf
lea rcx, [0x180286978]
call fcn.18000ba20
lea rcx, [0x180286990]
call fcn.18000ba20
lea rcx, [0x1802869b0]
mov qword [0x180286970], rdi
call fcn.18000ba20
lea rcx, [0x1802869c8]
call fcn.18000ba20
lea rcx, [0x1802869e0]
mov qword [0x1802869a8], rdi
call fcn.18000ba20
lea rcx, [0x18028a498]
mov word [0x18028873c], r14w
mov word [0x18028a484], r14w
mov qword [0x18028a498], r14
mov qword [0x18028a4a0], r14
call fcn.18023be80
mov dword [0x18028a488], r14d
movabs r9, 0xaaaaaaaaaaaaaaab
mov qword [0x18028a490], r14
mov dword [rbp + 0x2b], 0xf6540ee6
mov dword [rbp + 0x2f], 0x14d710a8
mov dword [rbp + 0x33], 0xfd6e6259
mov word [rbp + 0x37], 0x83
mov qword [rsp + 0x30], r14
mov rax, qword [rsp + 0x30]
nop dword [rax]
mov rcx, qword [rsp + 0x30]
mov rax, qword [rsp + 0x30]
movzx r8d, byte [rbp + rax + 0x2c]
mov rax, r9
mul rcx
shr rdx, 4
movzx eax, dl
add al, al
add dl, al
mov rax, qword [rsp + 0x30]
shl dl, 3
sub cl, dl
mov edx, 0x736e164d
sar edx, cl
xor dl, r8b
mov byte [rbp + rax + 0x2c], dl
mov rax, qword [rsp + 0x30]
inc rax
mov qword [rsp + 0x30], rax
mov rax, qword [rsp + 0x30]
cmp rax, 0xc
jb 0x180038c30
mov byte [rbp + 0x38], r14b
call fcn.1800015c0
mov rcx, qword [rbx]
mov r12, rax
mov edx, dword [r15 + rcx]
cmp dword [0x180286968], edx
jle 0x180038ccb
lea rcx, [0x180286968]
call fcn.180249e18
cmp dword [0x180286968], 0xffffffff
jne 0x180038ccb
mov rcx, qword [sym.imp.KERNEL32.dll_LoadLibraryA]
mov qword [0x18028a9f8], rcx
lea rcx, [0x180286968]
call fcn.180249db8
mov rax, qword [rbx]
mov ecx, dword [r15 + rax]
cmp dword [0x18028a99c], ecx
jle 0x180038d09
lea rcx, [0x18028a99c]
call fcn.180249e18
cmp dword [0x18028a99c], 0xffffffff
jne 0x180038d09
mov rax, qword [sym.imp.KERNEL32.dll_GetProcAddress]
lea rcx, [0x18028a99c]
mov qword [0x18028a9a0], rax
call fcn.180249db8
mov rax, qword [0x18028a9f8]
mov rcx, r12
call rax
mov r8, qword [0x18028a9a0]
lea rdx, [rbp + 0x2c]
mov rcx, rax
call r8
xor r8d, r8d
xor edx, edx
xor ecx, ecx
call rax
lea rcx, [0x18028a4c8]
mov qword [0x18028a4b8], rax
mov qword [0x18028a4c8], r14
mov qword [0x18028a4d0], r14
call fcn.18023b970
lea rcx, [0x18028a4e0]
call fcn.18000ba20
lea rcx, [0x180269f20]
mov qword [0x18028a4a8], r14
mov qword [0x18028a4b0], r14
mov byte [0x18028a4c0], r14b
mov dword [0x18028a4d8], 0x10000
mov dword [0x18028a4f8], r14d
mov qword [0x18028a910], r14
mov qword [0x18028a918], r14
mov byte [0x18028a920], r14b
call fcn.18024a2cc
lea rcx, [0x18028aed0]
call fcn.180249db8
mov edx, 2
mov rcx, rdi
call fcn.180059050
mov dword [rsi + 0x24], eax
jmp 0x18003b9e7
mov ecx, dword [0x1802848b4]
lea rdi, [0x180286970]
mov rax, qword gs:[0x58]
mov dword [rsi + 0x20], 2
lea rbx, [rax + rcx*8]
mov ecx, 4
mov rax, qword [rbx]
mov r15d, ecx
mov eax, dword [rcx + rax]
cmp dword [0x18028aed0], eax
jle 0x18003904f
lea rcx, [0x18028aed0]
call fcn.180249e18
cmp dword [0x18028aed0], 0xffffffff
jne 0x18003904f
lea rcx, [0x180286978]
call fcn.18000ba20
lea rcx, [0x180286990]
call fcn.18000ba20
lea rcx, [0x1802869b0]
mov qword [0x180286970], rdi
call fcn.18000ba20
lea rcx, [0x1802869c8]
call fcn.18000ba20
lea rcx, [0x1802869e0]
mov qword [0x1802869a8], rdi
call fcn.18000ba20
lea rcx, [0x18028a498]
mov word [0x18028873c], r14w
mov word [0x18028a484], r14w
mov qword [0x18028a498], r14
mov qword [0x18028a4a0], r14
call fcn.18023be80
mov dword [0x18028a488], r14d
movabs r9, 0xaaaaaaaaaaaaaaab
mov qword [0x18028a490], r14
mov dword [rbp - 0x37], 0xf6540ee6
mov dword [rbp - 0x33], 0x14d710a8
mov dword [rbp - 0x2f], 0xfd6e6259
mov word [rbp - 0x2b], 0x83
mov qword [rsp + 0x30], r14
mov rax, qword [rsp + 0x30]
nop dword [rax]
mov rcx, qword [rsp + 0x30]
mov rax, qword [rsp + 0x30]
movzx r8d, byte [rbp + rax - 0x36]
mov rax, r9
mul rcx
shr rdx, 4
movzx eax, dl
add al, al
add dl, al
mov rax, qword [rsp + 0x30]
shl dl, 3
sub cl, dl
mov edx, 0x736e164d
sar edx, cl
xor dl, r8b
mov byte [rbp + rax - 0x36], dl
mov rax, qword [rsp + 0x30]
inc rax
mov qword [rsp + 0x30], rax
mov rax, qword [rsp + 0x30]
cmp rax, 0xc
jb 0x180038ed0
mov byte [rbp - 0x2a], r14b
call fcn.1800015c0
mov rcx, qword [rbx]
mov r12, rax
mov edx, dword [r15 + rcx]
cmp dword [0x180286968], edx
jle 0x180038f6b
lea rcx, [0x180286968]
call fcn.180249e18
cmp dword [0x180286968], 0xffffffff
jne 0x180038f6b
mov rcx, qword [sym.imp.KERNEL32.dll_LoadLibraryA]
mov qword [0x18028a9f8], rcx
lea rcx, [0x180286968]
call fcn.180249db8
mov rax, qword [rbx]
mov ecx, dword [r15 + rax]
cmp dword [0x18028a99c], ecx
jle 0x180038fa9
lea rcx, [0x18028a99c]
call fcn.180249e18
cmp dword [0x18028a99c], 0xffffffff
jne 0x180038fa9
mov rax, qword [sym.imp.KERNEL32.dll_GetProcAddress]
lea rcx, [0x18028a99c]
mov qword [0x18028a9a0], rax
call fcn.180249db8
mov rax, qword [0x18028a9f8]
mov rcx, r12
call rax
mov r8, qword [0x18028a9a0]
lea rdx, [rbp - 0x36]
mov rcx, rax
call r8
xor r8d, r8d
xor edx, edx
xor ecx, ecx
call rax
lea rcx, [0x18028a4c8]
mov qword [0x18028a4b8], rax
mov qword [0x18028a4c8], r14
mov qword [0x18028a4d0], r14
call fcn.18023b970
lea rcx, [0x18028a4e0]
call fcn.18000ba20
lea rcx, [0x180269f20]
mov qword [0x18028a4a8], r14
mov qword [0x18028a4b0], r14
mov byte [0x18028a4c0], r14b
mov dword [0x18028a4d8], 0x10000
mov dword [0x18028a4f8], r14d
mov qword [0x18028a910], r14
mov qword [0x18028a918], r14
mov byte [0x18028a920], r14b
call fcn.18024a2cc
lea rcx, [0x18028aed0]
call fcn.180249db8
xor edx, edx
mov rcx, rdi
call fcn.180059050
mov dword [rsi + 0x24], eax
jmp 0x18003b9e7
mov ecx, dword [0x1802848b4]
lea rdi, [0x180286970]
mov rax, qword gs:[0x58]
mov dword [rsi + 0x20], 2
lea rbx, [rax + rcx*8]
mov ecx, 4
mov rax, qword [rbx]
mov r15d, ecx
mov eax, dword [rcx + rax]
cmp dword [0x18028aed0], eax
jle 0x1800392ef
lea rcx, [0x18028aed0]
call fcn.180249e18
cmp dword [0x18028aed0], 0xffffffff
jne 0x1800392ef
lea rcx, [0x180286978]
call fcn.18000ba20
lea rcx, [0x180286990]
call fcn.18000ba20
lea rcx, [0x1802869b0]
mov qword [0x180286970], rdi
call fcn.18000ba20
lea rcx, [0x1802869c8]
call fcn.18000ba20
lea rcx, [0x1802869e0]
mov qword [0x1802869a8], rdi
call fcn.18000ba20
lea rcx, [0x18028a498]
mov word [0x18028873c], r14w
mov word [0x18028a484], r14w
mov qword [0x18028a498], r14
mov qword [0x18028a4a0], r14
call fcn.18023be80
mov dword [0x18028a488], r14d
movabs r9, 0xaaaaaaaaaaaaaaab
mov qword [0x18028a490], r14
mov dword [rbp - 0x45], 0xf6540ee6
mov dword [rbp - 0x41], 0x14d710a8
mov dword [rbp - 0x3d], 0xfd6e6259
mov word [rbp - 0x39], 0x83
mov qword [rsp + 0x30], r14
mov rax, qword [rsp + 0x30]
nop word [rax + rax]
mov rcx, qword [rsp + 0x30]
mov rax, qword [rsp + 0x30]
movzx r8d, byte [rbp + rax - 0x44]
mov rax, r9
mul rcx
shr rdx, 4
movzx eax, dl
add al, al
add dl, al
mov rax, qword [rsp + 0x30]
shl dl, 3
sub cl, dl
mov edx, 0x736e164d
sar edx, cl
xor dl, r8b
mov byte [rbp + rax - 0x44], dl
mov rax, qword [rsp + 0x30]
inc rax
mov qword [rsp + 0x30], rax
mov rax, qword [rsp + 0x30]
cmp rax, 0xc
jb 0x180039170
mov byte [rbp - 0x38], r14b
call fcn.1800015c0
mov rcx, qword [rbx]
mov r12, rax
mov edx, dword [r15 + rcx]
cmp dword [0x180286968], edx
jle 0x18003920b
lea rcx, [0x180286968]
call fcn.180249e18
cmp dword [0x180286968], 0xffffffff
jne 0x18003920b
mov rcx, qword [sym.imp.KERNEL32.dll_LoadLibraryA]
mov qword [0x18028a9f8], rcx
lea rcx, [0x180286968]
call fcn.180249db8
mov rax, qword [rbx]
mov ecx, dword [r15 + rax]
cmp dword [0x18028a99c], ecx
jle 0x180039249
lea rcx, [0x18028a99c]
call fcn.180249e18
cmp dword [0x18028a99c], 0xffffffff
jne 0x180039249
mov rax, qword [sym.imp.KERNEL32.dll_GetProcAddress]
lea rcx, [0x18028a99c]
mov qword [0x18028a9a0], rax
call fcn.180249db8
mov rax, qword [0x18028a9f8]
mov rcx, r12
call rax
mov r8, qword [0x18028a9a0]
lea rdx, [rbp - 0x44]
mov rcx, rax
call r8
xor r8d, r8d
xor edx, edx
xor ecx, ecx
call rax
lea rcx, [0x18028a4c8]
mov qword [0x18028a4b8], rax
mov qword [0x18028a4c8], r14
mov qword [0x18028a4d0], r14
call fcn.18023b970
lea rcx, [0x18028a4e0]
call fcn.18000ba20
lea rcx, [0x180269f20]
mov qword [0x18028a4a8], r14
mov qword [0x18028a4b0], r14
mov byte [0x18028a4c0], r14b
mov dword [0x18028a4d8], 0x10000
mov dword [0x18028a4f8], r14d
mov qword [0x18028a910], r14
mov qword [0x18028a918], r14
mov byte [0x18028a920], r14b
call fcn.18024a2cc
lea rcx, [0x18028aed0]
call fcn.180249db8
mov rcx, rdi
call fcn.180056060
movzx eax, ax
mov dword [rsi + 0x24], eax
jmp 0x18003b9e7
mov ecx, dword [0x1802848b4]
mov rax, qword gs:[0x58]
mov dword [rsi + 0x20], 2
lea rbx, [rax + rcx*8]
mov ecx, 4
mov rax, qword [rbx]
mov r15d, ecx
mov ecx, dword [rcx + rax]
cmp dword [0x18028aed0], ecx
jle 0x18003958f
lea rcx, [0x18028aed0]
call fcn.180249e18
cmp dword [0x18028aed0], 0xffffffff
jne 0x18003958f
lea rcx, [0x180286978]
call fcn.18000ba20
lea rcx, [0x180286990]
call fcn.18000ba20
lea rdi, [0x180286970]
lea rcx, [0x1802869b0]
mov qword [0x180286970], rdi
call fcn.18000ba20
lea rcx, [0x1802869c8]
call fcn.18000ba20
lea rcx, [0x1802869e0]
mov qword [0x1802869a8], rdi
call fcn.18000ba20
lea rcx, [0x18028a498]
mov word [0x18028873c], r14w
mov word [0x18028a484], r14w
mov qword [0x18028a498], r14
mov qword [0x18028a4a0], r14
call fcn.18023be80
mov dword [0x18028a488], r14d
movabs r9, 0xaaaaaaaaaaaaaaab
mov qword [0x18028a490], r14
mov dword [rbp - 0x61], 0xf6540ee6
mov dword [rbp - 0x5d], 0x14d710a8
mov dword [rbp - 0x59], 0xfd6e6259
mov word [rbp - 0x55], 0x83
mov qword [rsp + 0x30], r14
mov rax, qword [rsp + 0x30]
nop word [rax + rax]
mov rcx, qword [rsp + 0x30]
mov rax, qword [rsp + 0x30]
movzx r8d, byte [rbp + rax - 0x60]
mov rax, r9
mul rcx
shr rdx, 4
movzx eax, dl
add al, al
add dl, al
mov rax, qword [rsp + 0x30]
shl dl, 3
sub cl, dl
mov edx, 0x736e164d
sar edx, cl
xor dl, r8b
mov byte [rbp + rax - 0x60], dl
mov rax, qword [rsp + 0x30]
inc rax
mov qword [rsp + 0x30], rax
mov rax, qword [rsp + 0x30]
cmp rax, 0xc
jb 0x180039410
mov byte [rbp - 0x54], r14b
call fcn.1800015c0
mov rcx, qword [rbx]
mov rdi, rax
mov edx, dword [r15 + rcx]
cmp dword [0x180286968], edx
jle 0x1800394ab
lea rcx, [0x180286968]
call fcn.180249e18
cmp dword [0x180286968], 0xffffffff
jne 0x1800394ab
mov rcx, qword [sym.imp.KERNEL32.dll_LoadLibraryA]
mov qword [0x18028a9f8], rcx
lea rcx, [0x180286968]
call fcn.180249db8
mov rax, qword [rbx]
mov ecx, dword [r15 + rax]
cmp dword [0x18028a99c], ecx
jle 0x1800394e9
lea rcx, [0x18028a99c]
call fcn.180249e18
cmp dword [0x18028a99c], 0xffffffff
jne 0x1800394e9
mov rax, qword [sym.imp.KERNEL32.dll_GetProcAddress]
lea rcx, [0x18028a99c]
mov qword [0x18028a9a0], rax
call fcn.180249db8
mov rax, qword [0x18028a9f8]
mov rcx, rdi
call rax
mov r8, qword [0x18028a9a0]
lea rdx, [rbp - 0x60]
mov rcx, rax
call r8
xor r8d, r8d
xor edx, edx
xor ecx, ecx
call rax
lea rcx, [0x18028a4c8]
mov qword [0x18028a4b8], rax
mov qword [0x18028a4c8], r14
mov qword [0x18028a4d0], r14
call fcn.18023b970
lea rcx, [0x18028a4e0]
call fcn.18000ba20
lea rcx, [0x180269f20]
mov qword [0x18028a4a8], r14
mov qword [0x18028a4b0], r14
mov byte [0x18028a4c0], r14b
mov dword [0x18028a4d8], 0x10000
mov dword [0x18028a4f8], r14d
mov qword [0x18028a910], r14
mov qword [0x18028a918], r14
mov byte [0x18028a920], r14b
call fcn.18024a2cc
lea rcx, [0x18028aed0]
call fcn.180249db8
movzx eax, byte [0x18028a4c0]
mov dword [rsi + 0x24], eax
jmp 0x18003b9e7
lea rdx, [rbp + 0x180]
mov rcx, rsi
call fcn.18003c7b0
cmp dword [rbp + 0x180], 2
jne 0x18003b9e7
mov ecx, dword [0x1802848b4]
lea rdi, [0x180286970]
mov rax, qword gs:[0x58]
movabs r12, 0xaaaaaaaaaaaaaaab
mov r13d, dword [rbp + 0x184]
lea rbx, [rax + rcx*8]
mov ecx, 4
mov rax, qword [rbx]
mov r15d, ecx
mov eax, dword [rcx + rax]
cmp dword [0x18028aed0], eax
jle 0x180039849
lea rcx, [0x18028aed0]
call fcn.180249e18
cmp dword [0x18028aed0], 0xffffffff
jne 0x180039849
lea rcx, [0x180286978]
call fcn.18000ba20
lea rcx, [0x180286990]
call fcn.18000ba20
lea rcx, [0x1802869b0]
mov qword [0x180286970], rdi
call fcn.18000ba20
lea rcx, [0x1802869c8]
call fcn.18000ba20
lea rcx, [0x1802869e0]
mov qword [0x1802869a8], rdi
call fcn.18000ba20
lea rcx, [0x18028a498]
mov word [0x18028873c], r14w
mov word [0x18028a484], r14w
mov qword [0x18028a498], r14
mov qword [0x18028a4a0], r14
call fcn.18023be80
mov dword [0x18028a488], r14d
mov qword [0x18028a490], r14
mov dword [rbp - 0x6f], 0xf6540ee6
mov dword [rbp - 0x6b], 0x14d710a8
mov dword [rbp - 0x67], 0xfd6e6259
mov word [rbp - 0x63], 0x83
mov qword [rsp + 0x30], r14
mov rax, qword [rsp + 0x30]
nop
mov rcx, qword [rsp + 0x30]
mov rax, qword [rsp + 0x30]
movzx r8d, byte [rbp + rax - 0x6e]
mov rax, r12
mul rcx
shr rdx, 4
movzx eax, dl
add al, al
add dl, al
mov rax, qword [rsp + 0x30]
shl dl, 3
sub cl, dl
mov edx, 0x736e164d
sar edx, cl
xor dl, r8b
mov byte [rbp + rax - 0x6e], dl
mov rax, qword [rsp + 0x30]
inc rax
mov qword [rsp + 0x30], rax
mov rax, qword [rsp + 0x30]
cmp rax, 0xc
jb 0x1800396c0
mov byte [rbp - 0x62], r14b
call fcn.1800015c0
mov rcx, qword [rbx]
mov r12, rax
mov edx, dword [r15 + rcx]
cmp dword [0x180286968], edx
jle 0x18003975b
lea rcx, [0x180286968]
call fcn.180249e18
cmp dword [0x180286968], 0xffffffff
jne 0x18003975b
mov rcx, qword [sym.imp.KERNEL32.dll_LoadLibraryA]
mov qword [0x18028a9f8], rcx
lea rcx, [0x180286968]
call fcn.180249db8
mov rax, qword [rbx]
mov ecx, dword [r15 + rax]
cmp dword [0x18028a99c], ecx
jle 0x180039799
lea rcx, [0x18028a99c]
call fcn.180249e18
cmp dword [0x18028a99c], 0xffffffff
jne 0x180039799
mov rax, qword [sym.imp.KERNEL32.dll_GetProcAddress]
lea rcx, [0x18028a99c]
mov qword [0x18028a9a0], rax
call fcn.180249db8
mov rax, qword [0x18028a9f8]
mov rcx, r12
call rax
mov r8, qword [0x18028a9a0]
lea rdx, [rbp - 0x6e]
mov rcx, rax
call r8
xor r8d, r8d
xor edx, edx
xor ecx, ecx
call rax
lea rcx, [0x18028a4c8]
mov qword [0x18028a4b8], rax
mov qword [0x18028a4c8], r14
mov qword [0x18028a4d0], r14
call fcn.18023b970
lea rcx, [0x18028a4e0]
call fcn.18000ba20
lea rcx, [0x180269f20]
mov qword [0x18028a4a8], r14
mov qword [0x18028a4b0], r14
mov byte [0x18028a4c0], r14b
mov dword [0x18028a4d8], 0x10000
mov dword [0x18028a4f8], r14d
mov qword [0x18028a910], r14
mov qword [0x18028a918], r14
mov byte [0x18028a920], r14b
call fcn.18024a2cc
lea rcx, [0x18028aed0]
call fcn.180249db8
movabs r12, 0xaaaaaaaaaaaaaaab
mov rax, qword [0x1802869e8]
sub rax, qword [0x1802869e0]
sar rax, 3
cmp r13d, eax
jae 0x18003b9e7
mov dword [rsi + 0x20], 3
mov rax, qword [rbx]
mov ecx, dword [r15 + rax]
cmp dword [0x18028aed0], ecx
jle 0x180039abf
lea rcx, [0x18028aed0]
call fcn.180249e18
cmp dword [0x18028aed0], 0xffffffff
jne 0x180039abf
lea rcx, [0x180286978]
call fcn.18000ba20
lea rcx, [0x180286990]
call fcn.18000ba20
lea rcx, [0x1802869b0]
mov qword [0x180286970], rdi
call fcn.18000ba20
lea rcx, [0x1802869c8]
call fcn.18000ba20
lea rcx, [0x1802869e0]
mov qword [0x1802869a8], rdi
call fcn.18000ba20
lea rcx, [0x18028a498]
mov word [0x18028873c], r14w
mov word [0x18028a484], r14w
mov qword [0x18028a498], r14
mov qword [0x18028a4a0], r14
call fcn.18023be80
mov dword [0x18028a488], r14d
mov qword [0x18028a490], r14
mov dword [rbp - 0x7d], 0xf6540ee6
mov dword [rbp - 0x79], 0x14d710a8
mov dword [rbp - 0x75], 0xfd6e6259
mov word [rbp - 0x71], 0x83
mov qword [rsp + 0x30], r14
mov rax, qword [rsp + 0x30]
nop
mov rcx, qword [rsp + 0x30]
mov rax, qword [rsp + 0x30]
movzx r8d, byte [rbp + rax - 0x7c]
mov rax, r12
mul rcx
shr rdx, 4
movzx eax, dl
add al, al
add dl, al
mov rax, qword [rsp + 0x30]
shl dl, 3
sub cl, dl
mov edx, 0x736e164d
sar edx, cl
xor dl, r8b
mov byte [rbp + rax - 0x7c], dl
mov rax, qword [rsp + 0x30]
inc rax
mov qword [rsp + 0x30], rax
mov rax, qword [rsp + 0x30]
cmp rax, 0xc
jb 0x180039940
mov byte [rbp - 0x70], r14b
call fcn.1800015c0
mov rcx, qword [rbx]
mov rdi, rax
mov edx, dword [r15 + rcx]
cmp dword [0x180286968], edx
jle 0x1800399db
lea rcx, [0x180286968]
call fcn.180249e18
cmp dword [0x180286968], 0xffffffff
jne 0x1800399db
mov rcx, qword [sym.imp.KERNEL32.dll_LoadLibraryA]
mov qword [0x18028a9f8], rcx
lea rcx, [0x180286968]
call fcn.180249db8
mov rax, qword [rbx]
mov ecx, dword [r15 + rax]
cmp dword [0x18028a99c], ecx
jle 0x180039a19
lea rcx, [0x18028a99c]
call fcn.180249e18
cmp dword [0x18028a99c], 0xffffffff
jne 0x180039a19
mov rax, qword [sym.imp.KERNEL32.dll_GetProcAddress]
lea rcx, [0x18028a99c]
mov qword [0x18028a9a0], rax
call fcn.180249db8
mov rax, qword [0x18028a9f8]
mov rcx, rdi
call rax
mov r8, qword [0x18028a9a0]
lea rdx, [rbp - 0x7c]
mov rcx, rax
call r8
xor r8d, r8d
xor edx, edx
xor ecx, ecx
call rax
lea rcx, [0x18028a4c8]
mov qword [0x18028a4b8], rax
mov qword [0x18028a4c8], r14
mov qword [0x18028a4d0], r14
call fcn.18023b970
lea rcx, [0x18028a4e0]
call fcn.18000ba20
lea rcx, [0x180269f20]
mov qword [0x18028a4a8], r14
mov qword [0x18028a4b0], r14
mov byte [0x18028a4c0], r14b
mov dword [0x18028a4d8], 0x10000
mov dword [0x18028a4f8], r14d
mov qword [0x18028a910], r14
mov qword [0x18028a918], r14
mov byte [0x18028a920], r14b
call fcn.18024a2cc
lea rcx, [0x18028aed0]
call fcn.180249db8
mov rax, qword [0x1802869e0]
lea rdx, [rbp + 0x21c]
mov rcx, qword [rax + r13*8]
mov rcx, qword [rcx + 0x20]
call fcn.18000a090
mov rbx, r14
lea rdi, [0x18028a9a8]
mov r15d, 0x57
mov ecx, dword [rax]
mov dword [rbp + 0xd8], ecx
mov byte [0x18028a9a8], r14b
nop dword [rax]
movzx ecx, byte [rbp + rbx + 0xd8]
lea r8, [rbp + 0x40]
nop dword [rax]
mov eax, 0xcccccccd
mul ecx
shr edx, 3
lea eax, [rdx + rdx*4]
add eax, eax
sub ecx, eax
mov eax, 0x30
cmp ecx, 0xa
cmovge eax, r15d
add al, cl
mov ecx, edx
mov byte [r8], al
inc r8
test edx, edx
jg 0x180039b10
lea rax, [rbp + 0x40]
mov byte [r8], r14b
sub r8d, eax
mov r10d, r14d
mov r11d, r8d
shr r11d, 1
je 0x180039b88
lea r9, [rbp + 0x40]
nop dword [rax]
nop dword [rax + rax]
movzx edx, byte [r9]
lea rcx, [rbp + 0x40]
mov eax, r8d
lea r9, [r9 + 1]
sub eax, r10d
inc r10d
dec eax
add rcx, rax
movzx eax, byte [rcx]
mov byte [r9 - 1], al
mov byte [rcx], dl
cmp r10d, r11d
jb 0x180039b60
cmp byte [0x18028a9a8], r14b
mov ecx, r14d
je 0x180039b9c
inc ecx
cmp byte [rcx + rdi], r14b
jne 0x180039b94
lea rdx, [rbp + 0x40]
add rcx, rdi
nop dword [rax]
nop word [rax + rax]
movzx eax, byte [rdx]
lea rdx, [rdx + 1]
mov byte [rcx], al
lea rcx, [rcx + 1]
test al, al
jne 0x180039bb0
cmp rbx, 3
jae 0x180039c01
cmp byte [0x18028a9a8], r14b
mov ecx, r14d
je 0x180039bdb
inc ecx
cmp byte [rcx + rdi], r14b
jne 0x180039bd3
lea rdx, [0x18027a378]
add rcx, rdi
nop word [rax + rax]
movzx eax, byte [rdx]
lea rdx, [rdx + 1]
mov byte [rcx], al
lea rcx, [rcx + 1]
test al, al
jne 0x180039bf0
inc rbx
cmp rbx, 4
jl 0x180039b00
mov rdx, rdi
lea rcx, [rbp + 0x7a0]
call fcn.18023b220
lea rdx, [rbp + 0x68]
mov r15, rax
lea rcx, [rsi + 0x70]
mov ebx, 1
call fcn.1802393e0
lea rdx, [rbp + 0x270]
lea rcx, [rsi + 0x70]
call fcn.1802393d0
mov rcx, qword [rbp + 0x68]
cmp rcx, qword [rax]
je 0x180039c7f
nop dword [rax + rax]
mov rdx, rcx
mov rcx, r15
call fcn.18023c690
test al, al
jne 0x180039cc6
add qword [rbp + 0x68], 0x20
lea rdx, [rbp + 0x270]
lea rcx, [rsi + 0x70]
inc ebx
call fcn.1802393d0
mov rcx, qword [rbp + 0x68]
cmp rcx, qword [rax]
jne 0x180039c50
mov rcx, r15
call fcn.18023c0a0
mov rdx, rdi
lea rcx, [rbp + 0x400]
call fcn.18023b220
lea rdx, [rbp + 0x400]
lea rcx, [rsi + 0x70]
call fcn.18023ad30
lea rcx, [rbp + 0x400]
call fcn.18023c0a0
mov rbx, qword [rsi + 0x78]
sub rbx, qword [rsi + 0x70]
sar rbx, 5
mov dword [rsi + 0x24], ebx
jmp 0x18003b9e7
mov rcx, r15
call fcn.18023c0a0
test ebx, ebx
jne 0x180039cbe
jmp 0x180039c87
lea rdx, [rbp + 0x188]
mov rcx, rsi
call fcn.18003c7b0
cmp dword [rbp + 0x188], 2
jne 0x18003b9e7
mov ecx, dword [0x1802848b4]
lea rdi, [0x180286970]
mov rax, qword gs:[0x58]
movabs r12, 0xaaaaaaaaaaaaaaab
mov r13d, dword [rbp + 0x18c]
lea rbx, [rax + rcx*8]
mov ecx, 4
mov rax, qword [rbx]
mov r15d, ecx
mov eax, dword [rcx + rax]
cmp dword [0x18028aed0], eax
jle 0x180039f8b
lea rcx, [0x18028aed0]
call fcn.180249e18
cmp dword [0x18028aed0], 0xffffffff
jne 0x180039f8b
lea rcx, [0x180286978]
call fcn.18000ba20
lea rcx, [0x180286990]
call fcn.18000ba20
lea rcx, [0x1802869b0]
mov qword [0x180286970], rdi
call fcn.18000ba20
lea rcx, [0x1802869c8]
call fcn.18000ba20
lea rcx, [0x1802869e0]
mov qword [0x1802869a8], rdi
call fcn.18000ba20
lea rcx, [0x18028a498]
mov word [0x18028873c], r14w
mov word [0x18028a484], r14w
mov qword [0x18028a498], r14
mov qword [0x18028a4a0], r14
call fcn.18023be80
mov dword [0x18028a488], r14d
mov qword [0x18028a490], r14
mov dword [rsp + 0x67], 0xf6540ee6
mov dword [rsp + 0x6b], 0x14d710a8
mov dword [rsp + 0x6f], 0xfd6e6259
mov word [rsp + 0x73], 0x83
mov qword [rsp + 0x30], r14
mov rax, qword [rsp + 0x30]
nop dword [rax]
mov rcx, qword [rsp + 0x30]
mov rax, qword [rsp + 0x30]
movzx r8d, byte [rsp + rax + 0x68]
mov rax, r12
mul rcx
shr rdx, 4
movzx eax, dl
add al, al
add dl, al
mov rax, qword [rsp + 0x30]
shl dl, 3
sub cl, dl
mov edx, 0x736e164d
sar edx, cl
xor dl, r8b
mov byte [rsp + rax + 0x68], dl
mov rax, qword [rsp + 0x30]
inc rax
mov qword [rsp + 0x30], rax
mov rax, qword [rsp + 0x30]
cmp rax, 0xc
jb 0x180039e00
mov byte [rsp + 0x74], r14b
call fcn.1800015c0
mov rcx, qword [rbx]
mov r12, rax
mov edx, dword [r15 + rcx]
cmp dword [0x180286968], edx
jle 0x180039e9c
lea rcx, [0x180286968]
call fcn.180249e18
cmp dword [0x180286968], 0xffffffff
jne 0x180039e9c
mov rcx, qword [sym.imp.KERNEL32.dll_LoadLibraryA]
mov qword [0x18028a9f8], rcx
lea rcx, [0x180286968]
call fcn.180249db8
mov rax, qword [rbx]
mov ecx, dword [r15 + rax]
cmp dword [0x18028a99c], ecx
jle 0x180039eda
lea rcx, [0x18028a99c]
call fcn.180249e18
cmp dword [0x18028a99c], 0xffffffff
jne 0x180039eda
mov rax, qword [sym.imp.KERNEL32.dll_GetProcAddress]
lea rcx, [0x18028a99c]
mov qword [0x18028a9a0], rax
call fcn.180249db8
mov rax, qword [0x18028a9f8]
mov rcx, r12
call rax
mov r8, qword [0x18028a9a0]
lea rdx, [rsp + 0x68]
mov rcx, rax
call r8
xor r8d, r8d
xor edx, edx
xor ecx, ecx
call rax
lea rcx, [0x18028a4c8]
mov qword [0x18028a4b8], rax
mov qword [0x18028a4c8], r14
mov qword [0x18028a4d0], r14
call fcn.18023b970
lea rcx, [0x18028a4e0]
call fcn.18000ba20
lea rcx, [0x180269f20]
mov qword [0x18028a4a8], r14
mov qword [0x18028a4b0], r14
mov byte [0x18028a4c0], r14b
mov dword [0x18028a4d8], 0x10000
mov dword [0x18028a4f8], r14d
mov qword [0x18028a910], r14
mov qword [0x18028a918], r14
mov byte [0x18028a920], r14b
call fcn.18024a2cc
lea rcx, [0x18028aed0]
call fcn.180249db8
movabs r12, 0xaaaaaaaaaaaaaaab
mov rax, qword [0x1802869e8]
sub rax, qword [0x1802869e0]
sar rax, 3
cmp r13d, eax
jae 0x18003b9e7
mov dword [rsi + 0x20], 2
mov rax, qword [rbx]
mov ecx, dword [r15 + rax]
cmp dword [0x18028aed0], ecx
jle 0x18003a1ff
lea rcx, [0x18028aed0]
call fcn.180249e18
cmp dword [0x18028aed0], 0xffffffff
jne 0x18003a1ff
lea rcx, [0x180286978]
call fcn.18000ba20
lea rcx, [0x180286990]
call fcn.18000ba20
lea rcx, [0x1802869b0]
mov qword [0x180286970], rdi
call fcn.18000ba20
lea rcx, [0x1802869c8]
call fcn.18000ba20
lea rcx, [0x1802869e0]
mov qword [0x1802869a8], rdi
call fcn.18000ba20
lea rcx, [0x18028a498]
mov word [0x18028873c], r14w
mov word [0x18028a484], r14w
mov qword [0x18028a498], r14
mov qword [0x18028a4a0], r14
call fcn.18023be80
mov dword [0x18028a488], r14d
mov qword [0x18028a490], r14
mov dword [rbp - 0x53], 0xf6540ee6
mov dword [rbp - 0x4f], 0x14d710a8
mov dword [rbp - 0x4b], 0xfd6e6259
mov word [rbp - 0x47], 0x83
mov qword [rsp + 0x30], r14
mov rax, qword [rsp + 0x30]
mov rcx, qword [rsp + 0x30]
mov rax, qword [rsp + 0x30]
movzx r8d, byte [rbp + rax - 0x52]
mov rax, r12
mul rcx
shr rdx, 4
movzx eax, dl
add al, al
add dl, al
mov rax, qword [rsp + 0x30]
shl dl, 3
sub cl, dl
mov edx, 0x736e164d
sar edx, cl
xor dl, r8b
mov byte [rbp + rax - 0x52], dl
mov rax, qword [rsp + 0x30]
inc rax
mov qword [rsp + 0x30], rax
mov rax, qword [rsp + 0x30]
cmp rax, 0xc
jb 0x18003a080
mov byte [rbp - 0x46], r14b
call fcn.1800015c0
mov rcx, qword [rbx]
mov rdi, rax
mov edx, dword [r15 + rcx]
cmp dword [0x180286968], edx
jle 0x18003a11b
lea rcx, [0x180286968]
call fcn.180249e18
cmp dword [0x180286968], 0xffffffff
jne 0x18003a11b
mov rcx, qword [sym.imp.KERNEL32.dll_LoadLibraryA]
mov qword [0x18028a9f8], rcx
lea rcx, [0x180286968]
call fcn.180249db8
mov rax, qword [rbx]
mov ecx, dword [r15 + rax]
cmp dword [0x18028a99c], ecx
jle 0x18003a159
lea rcx, [0x18028a99c]
call fcn.180249e18
cmp dword [0x18028a99c], 0xffffffff
jne 0x18003a159
mov rax, qword [sym.imp.KERNEL32.dll_GetProcAddress]
lea rcx, [0x18028a99c]
mov qword [0x18028a9a0], rax
call fcn.180249db8
mov rax, qword [0x18028a9f8]
mov rcx, rdi
call rax
mov r8, qword [0x18028a9a0]
lea rdx, [rbp - 0x52]
mov rcx, rax
call r8
xor r8d, r8d
xor edx, edx
xor ecx, ecx
call rax
lea rcx, [0x18028a4c8]
mov qword [0x18028a4b8], rax
mov qword [0x18028a4c8], r14
mov qword [0x18028a4d0], r14
call fcn.18023b970
lea rcx, [0x18028a4e0]
call fcn.18000ba20
lea rcx, [0x180269f20]
mov qword [0x18028a4a8], r14
mov qword [0x18028a4b0], r14
mov byte [0x18028a4c0], r14b
mov dword [0x18028a4d8], 0x10000
mov dword [0x18028a4f8], r14d
mov qword [0x18028a910], r14
mov qword [0x18028a918], r14
mov byte [0x18028a920], r14b
call fcn.18024a2cc
lea rcx, [0x18028aed0]
call fcn.180249db8
mov rax, qword [0x1802869e0]
mov rcx, qword [rax + r13*8]
movzx eax, word [rcx + 0x4c8]
mov dword [rsi + 0x24], eax
jmp 0x18003b9e7
lea rdx, [rbp + 0x190]
mov rcx, rsi
call fcn.18003c7b0
cmp dword [rbp + 0x190], 2
jne 0x18003b9e7
mov ecx, dword [0x1802848b4]
lea rdi, [0x180286970]
mov rax, qword gs:[0x58]
movabs r12, 0xaaaaaaaaaaaaaaab
mov r13d, dword [rbp + 0x194]
lea rbx, [rax + rcx*8]
mov ecx, 4
mov rax, qword [rbx]
mov r15d, ecx
mov eax, dword [rcx + rax]
cmp dword [0x18028aed0], eax
jle 0x18003a4ca
lea rcx, [0x18028aed0]
call fcn.180249e18
cmp dword [0x18028aed0], 0xffffffff
jne 0x18003a4ca
lea rcx, [0x180286978]
call fcn.18000ba20
lea rcx, [0x180286990]
call fcn.18000ba20
lea rcx, [0x1802869b0]
mov qword [0x180286970], rdi
call fcn.18000ba20
lea rcx, [0x1802869c8]
call fcn.18000ba20
lea rcx, [0x1802869e0]
mov qword [0x1802869a8], rdi
call fcn.18000ba20
lea rcx, [0x18028a498]
mov word [0x18028873c], r14w
mov word [0x18028a484], r14w
mov qword [0x18028a498], r14
mov qword [0x18028a4a0], r14
call fcn.18023be80
mov dword [0x18028a488], r14d
mov qword [0x18028a490], r14
mov dword [rsp + 0x75], 0xf6540ee6
mov dword [rsp + 0x79], 0x14d710a8
mov dword [rsp + 0x7d], 0xfd6e6259
mov word [rbp - 0x7f], 0x83
mov qword [rsp + 0x30], r14
mov rax, qword [rsp + 0x30]
nop dword [rax]
mov rcx, qword [rsp + 0x30]
mov rax, qword [rsp + 0x30]
movzx r8d, byte [rsp + rax + 0x76]
mov rax, r12
mul rcx
shr rdx, 4
movzx eax, dl
add al, al
add dl, al
mov rax, qword [rsp + 0x30]
shl dl, 3
sub cl, dl
mov edx, 0x736e164d
sar edx, cl
xor dl, r8b
mov byte [rsp + rax + 0x76], dl
mov rax, qword [rsp + 0x30]
inc rax
mov qword [rsp + 0x30], rax
mov rax, qword [rsp + 0x30]
cmp rax, 0xc
jb 0x18003a340
mov byte [rbp - 0x7e], r14b
call fcn.1800015c0
mov rcx, qword [rbx]
mov r12, rax
mov edx, dword [r15 + rcx]
cmp dword [0x180286968], edx
jle 0x18003a3db
lea rcx, [0x180286968]
call fcn.180249e18
cmp dword [0x180286968], 0xffffffff
jne 0x18003a3db
mov rcx, qword [sym.imp.KERNEL32.dll_LoadLibraryA]
mov qword [0x18028a9f8], rcx
lea rcx, [0x180286968]
call fcn.180249db8
mov rax, qword [rbx]
mov ecx, dword [r15 + rax]
cmp dword [0x18028a99c], ecx
jle 0x18003a419
lea rcx, [0x18028a99c]
call fcn.180249e18
cmp dword [0x18028a99c], 0xffffffff
jne 0x18003a419
mov rax, qword [sym.imp.KERNEL32.dll_GetProcAddress]
lea rcx, [0x18028a99c]
mov qword [0x18028a9a0], rax
call fcn.180249db8
mov rax, qword [0x18028a9f8]
mov rcx, r12
call rax
mov r8, qword [0x18028a9a0]
lea rdx, [rsp + 0x76]
mov rcx, rax
call r8
xor r8d, r8d
xor edx, edx
xor ecx, ecx
call rax
lea rcx, [0x18028a4c8]
mov qword [0x18028a4b8], rax
mov qword [0x18028a4c8], r14
mov qword [0x18028a4d0], r14
call fcn.18023b970
lea rcx, [0x18028a4e0]
call fcn.18000ba20
lea rcx, [0x180269f20]
mov qword [0x18028a4a8], r14
mov qword [0x18028a4b0], r14
mov byte [0x18028a4c0], r14b
mov dword [0x18028a4d8], 0x10000
mov dword [0x18028a4f8], r14d
mov qword [0x18028a910], r14
mov qword [0x18028a918], r14
mov byte [0x18028a920], r14b
call fcn.18024a2cc
lea rcx, [0x18028aed0]
call fcn.180249db8
movabs r12, 0xaaaaaaaaaaaaaaab
mov rax, qword [0x1802869e8]
sub rax, qword [0x1802869e0]
sar rax, 3
cmp r13d, eax
jae 0x18003b9e7
mov dword [rsi + 0x20], 2
mov rax, qword [rbx]
mov ecx, dword [r15 + rax]
cmp dword [0x18028aed0], ecx
jle 0x18003a73f
lea rcx, [0x18028aed0]
call fcn.180249e18
cmp dword [0x18028aed0], 0xffffffff
jne 0x18003a73f
lea rcx, [0x180286978]
call fcn.18000ba20
lea rcx, [0x180286990]
call fcn.18000ba20
lea rcx, [0x1802869b0]
mov qword [0x180286970], rdi
call fcn.18000ba20
lea rcx, [0x1802869c8]
call fcn.18000ba20
lea rcx, [0x1802869e0]
mov qword [0x1802869a8], rdi
call fcn.18000ba20
lea rcx, [0x18028a498]
mov word [0x18028873c], r14w
mov word [0x18028a484], r14w
mov qword [0x18028a498], r14
mov qword [0x18028a4a0], r14
call fcn.18023be80
mov dword [0x18028a488], r14d
mov qword [0x18028a490], r14
mov dword [rbp + 0x1d], 0xf6540ee6
mov dword [rbp + 0x21], 0x14d710a8
mov dword [rbp + 0x25], 0xfd6e6259
mov word [rbp + 0x29], 0x83
mov qword [rsp + 0x30], r14
mov rax, qword [rsp + 0x30]
nop
mov rcx, qword [rsp + 0x30]
mov rax, qword [rsp + 0x30]
movzx r8d, byte [rbp + rax + 0x1e]
mov rax, r12
mul rcx
shr rdx, 4
movzx eax, dl
add al, al
add dl, al
mov rax, qword [rsp + 0x30]
shl dl, 3
sub cl, dl
mov edx, 0x736e164d
sar edx, cl
xor dl, r8b
mov byte [rbp + rax + 0x1e], dl
mov rax, qword [rsp + 0x30]
inc rax
mov qword [rsp + 0x30], rax
mov rax, qword [rsp + 0x30]
cmp rax, 0xc
jb 0x18003a5c0
mov byte [rbp + 0x2a], r14b
call fcn.1800015c0
mov rcx, qword [rbx]
mov rdi, rax
mov edx, dword [r15 + rcx]
cmp dword [0x180286968], edx
jle 0x18003a65b
lea rcx, [0x180286968]
call fcn.180249e18
cmp dword [0x180286968], 0xffffffff
jne 0x18003a65b
mov rcx, qword [sym.imp.KERNEL32.dll_LoadLibraryA]
mov qword [0x18028a9f8], rcx
lea rcx, [0x180286968]
call fcn.180249db8
mov rax, qword [rbx]
mov ecx, dword [r15 + rax]
cmp dword [0x18028a99c], ecx
jle 0x18003a699
lea rcx, [0x18028a99c]
call fcn.180249e18
cmp dword [0x18028a99c], 0xffffffff
jne 0x18003a699
mov rax, qword [sym.imp.KERNEL32.dll_GetProcAddress]
lea rcx, [0x18028a99c]
mov qword [0x18028a9a0], rax
call fcn.180249db8
mov rax, qword [0x18028a9f8]
mov rcx, rdi
call rax
mov r8, qword [0x18028a9a0]
lea rdx, [rbp + 0x1e]
mov rcx, rax
call r8
xor r8d, r8d
xor edx, edx
xor ecx, ecx
call rax
lea rcx, [0x18028a4c8]
mov qword [0x18028a4b8], rax
mov qword [0x18028a4c8], r14
mov qword [0x18028a4d0], r14
call fcn.18023b970
lea rcx, [0x18028a4e0]
call fcn.18000ba20
lea rcx, [0x180269f20]
mov qword [0x18028a4a8], r14
mov qword [0x18028a4b0], r14
mov byte [0x18028a4c0], r14b
mov dword [0x18028a4d8], 0x10000
mov dword [0x18028a4f8], r14d
mov qword [0x18028a910], r14
mov qword [0x18028a918], r14
mov byte [0x18028a920], r14b
call fcn.18024a2cc
lea rcx, [0x18028aed0]
call fcn.180249db8
mov rax, qword [0x1802869e0]
mov rcx, qword [rax + r13*8]
mov eax, dword [rcx + 0x9c]
mov dword [rsi + 0x24], eax
jmp 0x18003b9e7
lea rdx, [rbp + 0x198]
mov rcx, rsi
call fcn.18003c7b0
cmp dword [rbp + 0x198], 3
jne 0x18003b9e7
mov edx, dword [0x1802848b4]
mov rax, qword gs:[0x58]
mov ecx, 4
mov rax, qword [rax + rdx*8]
mov eax, dword [rcx + rax]
cmp dword [0x180286960], eax
jle 0x18003a7d0
lea rcx, [0x180286960]
call fcn.180249e18
cmp dword [0x180286960], 0xffffffff
jne 0x18003a7d0
lea rcx, [0x18028ae58]
call fcn.18023b700
lea rcx, [0x180269ee0]
call fcn.18024a2cc
lea rcx, [0x180286960]
call fcn.180249db8
mov eax, dword [rbp + 0x19c]
dec eax
movsxd rcx, eax
shl rcx, 5
add rcx, qword [rsi + 0x70]
call fcn.18023b140
mov rdx, rax
lea rcx, [rbp + 0x7c0]
call fcn.18023b220
lea rcx, [0x18028ae70]
mov rsi, rax
call fcn.180001a60
lea rcx, [rbp + 0x2a8]
call fcn.18000b140
xor r8d, r8d
mov dl, 0x3a
mov rcx, rsi
call fcn.18023b0f0
mov rdi, rax
mov rdx, rsi
cmp rax, 0xffffffffffffffff
jne 0x18003a872
lea rcx, [rbp + 0x578]
call fcn.18023b280
mov rdx, rax
lea rcx, [rbp + 0x2a8]
call fcn.18023b180
lea rcx, [rbp + 0x578]
mov ebx, r14d
call fcn.18023c0a0
cmp rdi, rdi
jne 0x18003a8b2
or ebx, 4
lea rdx, [0x18027a397]
lea rcx, [rbp + 0x598]
call fcn.18023b220
jmp 0x18003a8e2
lea rax, [rbp + 0xb60]
mov r9, rdi
xor r8d, r8d
mov qword [rsp + 0x20], rax
lea rcx, [rbp + 0x420]
call fcn.18023c2f0
lea rdx, [rbp + 0x420]
lea rcx, [rbp + 0x2a8]
call fcn.18023b180
lea rcx, [rbp + 0x420]
call fcn.18023c0a0
mov ebx, r14d
lea rax, [rbp + 0xb68]
or ebx, 8
lea r8, [rdi + 1]
mov qword [rsp + 0x20], rax
mov r9, 0xffffffffffffffff
lea rcx, [rbp + 0x440]
mov rdx, rsi
call fcn.18023c2f0
lea rax, [rbp + 0x440]
mov rdx, rax
lea rcx, [rbp + 0x360]
call fcn.18023b1d0
test bl, 8
je 0x18003a902
lea rcx, [rbp + 0x440]
call fcn.18023c0a0
test bl, 4
je 0x18003a913
lea rcx, [rbp + 0x598]
call fcn.18023c0a0
mov dword [rsp + 0x58], 0x285
mov dword [rsp + 0x30], 0x17b
mov ecx, dword [rsp + 0x58]
mov eax, dword [rsp + 0x30]
add ecx, eax
mov dword [rsp + 0x30], ecx
mov eax, dword [rsp + 0x30]
mov word [rbp + 0x2c8], ax
cmp qword [rbp + 0x370], r14
jbe 0x18003a9da
lea rcx, [rbp + 0x360]
call fcn.18023b140
mov rdx, rax
xor r9b, r9b
movzx eax, byte [rax]
test al, al
je 0x18003a97d
lea ecx, [rax - 0x30]
cmp cl, 9
jbe 0x18003a97d
cmp al, 0x2d
je 0x18003a984
cmp al, 0x2b
je 0x18003a97d
movzx eax, byte [rdx + 1]
inc rdx
test al, al
jne 0x18003a962
movzx eax, byte [rdx]
cmp al, 0x2d
jne 0x18003a98e
movzx eax, byte [rdx]
mov r9b, 1
cmp al, 0x2d
je 0x18003a992
cmp al, 0x2b
jne 0x18003a995
inc rdx
movzx r8d, byte [rdx]
test r8b, r8b
je 0x18003a9c4
nop
lea eax, [r8 - 0x30]
cmp al, 9
ja 0x18003a9c4
inc rdx
movsx eax, r8b
lea r14d, [r14 + r14*4]
lea r14d, [r14 - 0x18]
movzx r8d, byte [rdx]
lea r14d, [rax + r14*2]
test r8b, r8b
jne 0x18003a9a0
movzx eax, r14w
neg ax
test r9b, r9b
cmove ax, r14w
mov word [rbp + 0x2c8], ax
lea rdx, [rbp + 0x2a8]
lea rcx, [rbp + 0x8e0]
call fcn.18000b510
mov rdx, rax
lea rcx, [0x18028ae58]
call fcn.18000b2e0
lea rcx, [rbp + 0x360]
call fcn.18023c0a0
lea rcx, [rbp + 0x2a8]
call fcn.18023c0a0
lea rcx, [0x18028ae70]
call fcn.180001bf0
mov rcx, rsi
call fcn.18023c0a0
jmp 0x18003b9e7
lea rdx, [rbp + 0x1a0]
mov rcx, rsi
call fcn.18003c7b0
cmp dword [rbp + 0x1a0], 3
jne 0x18003b9e7
mov eax, dword [rbp + 0x1a4]
dec eax
movsxd rcx, eax
shl rcx, 5
add rcx, qword [rsi + 0x70]
call fcn.18023b140
mov rdx, rax
lea rcx, [rbp + 0x620]
call fcn.180030a20
cmp qword [rbp + 0x638], r14
je 0x18003ab62
mov dword [rsi + 0x20], 3
lea rcx, [rbp + 0x7e0]
mov r15, qword [rbp + 0x638]
mov rdx, r15
call fcn.18023b220
lea rdx, [rbp + 0x70]
mov r14, rax
lea rcx, [rsi + 0x70]
mov ebx, 1
call fcn.1802393e0
lea rdx, [rbp + 0x268]
lea rcx, [rsi + 0x70]
call fcn.1802393d0
mov rdx, rax
lea rcx, [rbp + 0x70]
call fcn.1802392f0
test al, al
je 0x18003ab21
nop
lea rcx, [rbp + 0x70]
call fcn.18000b0e0
mov rdx, rax
mov rcx, r14
call fcn.18023c690
test al, al
jne 0x18003ab73
xor r8d, r8d
lea rdx, [rbp + 0x350]
lea rcx, [rbp + 0x70]
call fcn.18023abb0
lea rdx, [rbp + 0x268]
inc ebx
lea rcx, [rsi + 0x70]
call fcn.1802393d0
mov rdx, rax
lea rcx, [rbp + 0x70]
call fcn.1802392f0
test al, al
jne 0x18003aad0
mov rcx, r14
call fcn.18023b170
mov rdx, r15
lea rcx, [rbp + 0x460]
call fcn.18023b220
lea rdx, [rbp + 0x460]
lea rcx, [rsi + 0x70]
call fcn.18023abe0
lea rcx, [rbp + 0x460]
call fcn.18023b170
lea rcx, [rsi + 0x70]
call fcn.18023abd0
mov ebx, eax
mov dword [rsi + 0x24], ebx
lea rcx, [rbp + 0x620]
call fcn.1800314d0
jmp 0x18003b9e7
mov rcx, r14
call fcn.18023b170
test ebx, ebx
jne 0x18003ab5f
jmp 0x18003ab29
lea rdx, [rbp + 0x1a8]
mov rcx, rsi
call fcn.18003c7b0
cmp dword [rbp + 0x1a8], 3
jne 0x18003b9e7
mov edx, dword [rbp + 0x1ac]
mov rcx, rsi
call fcn.18003c3f0
mov rdx, rax
lea rcx, [rbp + 0x660]
call fcn.180030a20
lea rcx, [rbp + 0x660]
call fcn.1800319b0
test rax, rax
je 0x18003ace1
lea rcx, [rbp + 0x660]
mov dword [rsi + 0x20], 3
call fcn.1800319b0
mov rdx, rax
lea rcx, [rbp + 0x800]
mov r15, rax
call fcn.18023b220
lea rdx, [rbp + 0x78]
mov r14, rax
lea rcx, [rsi + 0x70]
mov ebx, 1
call fcn.1802393e0
lea rdx, [rbp + 0x260]
lea rcx, [rsi + 0x70]
call fcn.1802393d0
mov rdx, rax
lea rcx, [rbp + 0x78]
call fcn.1802392f0
test al, al
je 0x18003ac81
nop dword [rax]
lea rcx, [rbp + 0x78]
call fcn.18000b0e0
mov rdx, rax
mov rcx, r14
call fcn.18023c690
test al, al
jne 0x18003acd3
xor r8d, r8d
lea rdx, [rbp + 0x358]
lea rcx, [rbp + 0x78]
call fcn.18023abb0
lea rdx, [rbp + 0x260]
inc ebx
lea rcx, [rsi + 0x70]
call fcn.1802393d0
mov rdx, rax
lea rcx, [rbp + 0x78]
call fcn.1802392f0
test al, al
jne 0x18003ac30
mov rcx, r14
call fcn.18023b170
mov rdx, r15
lea rcx, [rbp + 0x480]
call fcn.18023b220
lea rdx, [rbp + 0x480]
lea rcx, [rsi + 0x70]
call fcn.18023abe0
lea rcx, [rbp + 0x480]
call fcn.18023b170
lea rcx, [rsi + 0x70]
call fcn.18023abd0
mov ebx, eax
lea rcx, [rbp + 0x660]
mov dword [rsi + 0x24], ebx
call fcn.1800314d0
jmp 0x18003b9e7
mov rcx, r14
call fcn.18023b170
test ebx, ebx
jne 0x18003acbf
jmp 0x18003ac89
lea rcx, [rbp + 0x660]
mov dword [rsi + 0x20], r14d
call fcn.1800314d0
jmp 0x18003b9e7
lea rdx, [rbp + 0x1b0]
mov rcx, rsi
call fcn.18003c7b0
cmp dword [rbp + 0x1b0], 3
jne 0x18003b9e7
mov edx, dword [rbp + 0x1b4]
mov rcx, rsi
call fcn.18003c3f0
mov rdx, rax
lea rcx, [rbp + 0x6a0]
call fcn.180030a20
lea rcx, [rbp + 0x6a0]
call fcn.1800319c0
test rax, rax
je 0x18003ae5e
lea rcx, [rbp + 0x6a0]
mov dword [rsi + 0x20], 3
call fcn.1800319c0
mov rdx, rax
lea rcx, [rbp + 0x820]
mov r15, rax
call fcn.18023b220
lea rdx, [rbp + 0x80]
mov r14, rax
lea rcx, [rsi + 0x70]
mov ebx, 1
call fcn.1802393e0
lea rdx, [rbp + 0x250]
lea rcx, [rsi + 0x70]
call fcn.1802393d0
mov rdx, rax
lea rcx, [rbp + 0x80]
call fcn.1802392f0
test al, al
je 0x18003adfe
lea rcx, [rbp + 0x80]
call fcn.18000b0e0
mov rdx, rax
mov rcx, r14
call fcn.18023c690
test al, al
jne 0x18003ae50
xor r8d, r8d
lea rdx, [rbp + 0x2d8]
lea rcx, [rbp + 0x80]
call fcn.18023abb0
lea rdx, [rbp + 0x250]
inc ebx
lea rcx, [rsi + 0x70]
call fcn.1802393d0
mov rdx, rax
lea rcx, [rbp + 0x80]
call fcn.1802392f0
test al, al
jne 0x18003ada4
mov rcx, r14
call fcn.18023b170
mov rdx, r15
lea rcx, [rbp + 0x4a0]
call fcn.18023b220
lea rdx, [rbp + 0x4a0]
lea rcx, [rsi + 0x70]
call fcn.18023abe0
lea rcx, [rbp + 0x4a0]
call fcn.18023b170
lea rcx, [rsi + 0x70]
call fcn.18023abd0
mov ebx, eax
lea rcx, [rbp + 0x6a0]
mov dword [rsi + 0x24], ebx
call fcn.1800314d0
jmp 0x18003b9e7
mov rcx, r14
call fcn.18023b170
test ebx, ebx
jne 0x18003ae3c
jmp 0x18003ae06
lea rcx, [rbp + 0x6a0]
mov dword [rsi + 0x20], r14d
call fcn.1800314d0
jmp 0x18003b9e7
lea rdx, [rbp + 0x1b8]
mov rcx, rsi
call fcn.18003c7b0
cmp dword [rbp + 0x1b8], 3
jne 0x18003b9e7
mov edx, dword [rbp + 0x1bc]
mov rcx, rsi
call fcn.18003c3f0
mov rdx, rax
lea rcx, [rbp + 0x6e0]
call fcn.180030a20
lea rcx, [rbp + 0x6e0]
call fcn.1800319d0
test rax, rax
je 0x18003afdb
lea rcx, [rbp + 0x6e0]
mov dword [rsi + 0x20], 3
call fcn.1800319d0
mov rdx, rax
lea rcx, [rbp + 0x840]
mov r15, rax
call fcn.18023b220
lea rdx, [rbp + 0x98]
mov r14, rax
lea rcx, [rsi + 0x70]
mov ebx, 1
call fcn.1802393e0
lea rdx, [rbp + 0x238]
lea rcx, [rsi + 0x70]
call fcn.1802393d0
mov rdx, rax
lea rcx, [rbp + 0x98]
call fcn.1802392f0
test al, al
je 0x18003af7b
lea rcx, [rbp + 0x98]
call fcn.18000b0e0
mov rdx, rax
mov rcx, r14
call fcn.18023c690
test al, al
jne 0x18003afcd
xor r8d, r8d
lea rdx, [rbp + 0x2e0]
lea rcx, [rbp + 0x98]
call fcn.18023abb0
lea rdx, [rbp + 0x238]
inc ebx
lea rcx, [rsi + 0x70]
call fcn.1802393d0
mov rdx, rax
lea rcx, [rbp + 0x98]
call fcn.1802392f0
test al, al
jne 0x18003af21
mov rcx, r14
call fcn.18023b170
mov rdx, r15
lea rcx, [rbp + 0x4c0]
call fcn.18023b220
lea rdx, [rbp + 0x4c0]
lea rcx, [rsi + 0x70]
call fcn.18023abe0
lea rcx, [rbp + 0x4c0]
call fcn.18023b170
lea rcx, [rsi + 0x70]
call fcn.18023abd0
mov ebx, eax
lea rcx, [rbp + 0x6e0]
mov dword [rsi + 0x24], ebx
call fcn.1800314d0
jmp 0x18003b9e7
mov rcx, r14
call fcn.18023b170
test ebx, ebx
jne 0x18003afb9
jmp 0x18003af83
lea rcx, [rbp + 0x6e0]
mov dword [rsi + 0x20], r14d
call fcn.1800314d0
jmp 0x18003b9e7
lea rdx, [rbp + 0x1c8]
mov rcx, rsi
call fcn.18003c7b0
lea rdx, [rbp + 0x1c0]
mov rcx, rsi
call fcn.18003c7b0
cmp dword [rbp + 0x1c0], 3
mov r15d, r14d
mov dword [rsp + 0x58], r14d
jne 0x18003b383
cmp dword [rbp + 0x1c8], 3
jne 0x18003b383
mov edx, dword [rbp + 0x1c4]
mov rcx, rsi
call fcn.18003c3f0
mov edx, dword [rbp + 0x1cc]
mov rcx, rsi
mov rbx, rax
call fcn.18003c3f0
mov rdi, rax
mov eax, r14d
cmp byte [rbx], r14b
je 0x18003b068
nop word [rax + rax]
inc eax
cmp byte [rax + rbx], r14b
jne 0x18003b060
mov ecx, eax
inc rcx
call fcn.18024a2e4
mov r12, rax
mov qword [rbp + 0x90], rax
mov rdx, rax
nop
movzx ecx, byte [rbx]
lea rbx, [rbx + 1]
mov byte [rdx], cl
lea rdx, [rdx + 1]
test cl, cl
jne 0x18003b080
mov ecx, r14d
cmp byte [rdi], r14b
je 0x18003b0a8
nop dword [rax]
inc ecx
cmp byte [rcx + rdi], r14b
jne 0x18003b0a0
inc rcx
call fcn.18024a2e4
mov r13, rax
mov rdx, rax
nop word [rax + rax]
movzx ecx, byte [rdi]
lea rdi, [rdi + 1]
mov byte [rdx], cl
lea rdx, [rdx + 1]
test cl, cl
jne 0x18003b0c0
mov r9, r14
mov r8, r12
cmp byte [r12], r14b
je 0x18003b112
movzx r10d, byte [rax]
mov rax, r13
test r10b, r10b
je 0x18003b102
movzx edx, byte [r8]
movzx ecx, r10b
cmp dl, cl
je 0x18003b102
movzx ecx, byte [rax + 1]
inc rax
test cl, cl
jne 0x18003b0f1
jmp 0x18003b112
cmp byte [rax], r14b
je 0x18003b112
inc r8
inc r9
cmp byte [r8], r14b
jne 0x18003b0e1
movzx edx, byte [r9 + r12]
lea rdi, [r9 + r12]
mov qword [rsp + 0x30], rdi
test dl, dl
je 0x18003b373
movzx r10d, byte [r13]
mov r8, rdi
mov r9, r14
lea r8, [r8 + 1]
mov rax, r13
cmp r10b, dl
je 0x18003b152
movzx ecx, r10b
test cl, cl
je 0x18003b157
movzx ecx, byte [rax + 1]
inc rax
cmp cl, dl
jne 0x18003b143
cmp byte [rax], r14b
jne 0x18003b162
movzx edx, byte [r8]
inc r9
test dl, dl
jne 0x18003b133
cmp byte [r9 + rdi], r14b
lea r15, [r9 + rdi]
je 0x18003b174
mov byte [r15], r14b
inc r15
jmp 0x18003b177
mov r15, r14
mov ebx, 1
nop dword [rax]
lea rcx, [rbp + 0xe8]
call fcn.180036510
mov rdx, rdi
mov dword [rbp + 0xe8], 3
lea rcx, [rbp + 0x860]
call fcn.18023b220
lea rdx, [rbp + 0x88]
mov r12, rax
lea rcx, [rsi + 0x70]
mov edi, ebx
call fcn.1802393e0
lea rdx, [rbp + 0x248]
lea rcx, [rsi + 0x70]
call fcn.1802393d0
mov rdx, rax
lea rcx, [rbp + 0x88]
call fcn.1802392f0
test al, al
je 0x18003b23a
nop dword [rax]
lea rcx, [rbp + 0x88]
call fcn.18000b0e0
mov rdx, rax
mov rcx, r12
call fcn.18023c690
test al, al
jne 0x18003b2d1
xor r8d, r8d
lea rdx, [rbp + 0x310]
lea rcx, [rbp + 0x88]
call fcn.18023abb0
lea rdx, [rbp + 0x248]
inc edi
lea rcx, [rsi + 0x70]
call fcn.1802393d0
mov rdx, rax
lea rcx, [rbp + 0x88]
call fcn.1802392f0
test al, al
jne 0x18003b1e0
mov rcx, r12
call fcn.18023b170
mov rdx, qword [rsp + 0x30]
lea rcx, [rbp + 0x4e0]
call fcn.18023b220
lea rdx, [rbp + 0x4e0]
lea rcx, [rsi + 0x70]
call fcn.18023abe0
lea rcx, [rbp + 0x4e0]
call fcn.18023b170
lea rcx, [rsi + 0x70]
call fcn.18023abd0
mov rdi, rax
lea rdx, [rbp + 0xe8]
mov dword [rbp + 0xec], edi
lea rcx, [rsi + 0x58]
call fcn.1802393b0
test r15, r15
je 0x18003b364
mov r9, r14
mov r8, r15
cmp byte [r15], r14b
je 0x18003b2f2
movzx r10d, byte [r13]
nop word [rax + rax]
mov rax, r13
test r10b, r10b
je 0x18003b2e2
movzx edx, byte [r8]
movzx ecx, r10b
cmp dl, cl
je 0x18003b2e2
movzx ecx, byte [rax + 1]
inc rax
test cl, cl
jne 0x18003b2c0
jmp 0x18003b2f2
mov rcx, r12
call fcn.18023b170
test edi, edi
jne 0x18003b27b
jmp 0x18003b242
cmp byte [rax], r14b
je 0x18003b2f2
inc r8
inc r9
cmp byte [r8], r14b
jne 0x18003b2b0
movzx edx, byte [r9 + r15]
lea rdi, [r9 + r15]
mov qword [rsp + 0x30], rdi
test dl, dl
je 0x18003b364
movzx r10d, byte [r13]
mov r8, rdi
mov r9, r14
nop
lea r8, [r8 + 1]
mov rax, r13
cmp r10b, dl
je 0x18003b32f
movzx ecx, r10b
test cl, cl
je 0x18003b334
movzx ecx, byte [rax + 1]
inc rax
cmp cl, dl
jne 0x18003b320
cmp byte [rax], r14b
jne 0x18003b33f
movzx edx, byte [r8]
inc r9
test dl, dl
jne 0x18003b310
cmp byte [r9 + rdi], r14b
lea r15, [r9 + rdi]
je 0x18003b358
mov byte [r15], r14b
inc r15
inc dword [rsp + 0x58]
jmp 0x18003b180
inc dword [rsp + 0x58]
mov r15, r14
jmp 0x18003b180
mov r15d, dword [rsp + 0x58]
mov r12, qword [rbp + 0x90]
inc r15d
mov rcx, r12
call fcn.180249cb8
mov rcx, r13
call fcn.180249cb8
mov dword [rsi + 0x20], 2
mov dword [rsi + 0x24], r15d
jmp 0x18003b9e7
lea rdx, [rbp + 0x100]
mov rcx, rsi
call fcn.18003c7b0
cmp dword [rbp + 0x100], 3
jne 0x18003b9e7
mov dword [rsi + 0x20], 3
mov rcx, rsi
mov edx, dword [rbp + 0x104]
call fcn.18003c3f0
mov rdx, rax
lea rcx, [rbp + 0x5b8]
call fcn.180031520
mov rcx, rax
call fcn.18023b140
mov rdx, rax
lea rcx, [rbp + 0x880]
mov r15, rax
call fcn.18023b220
lea rdx, [rbp + 0xa0]
mov r14, rax
lea rcx, [rsi + 0x70]
mov ebx, 1
call fcn.1802393e0
lea rdx, [rbp + 0x240]
lea rcx, [rsi + 0x70]
call fcn.1802393d0
mov rdx, rax
lea rcx, [rbp + 0xa0]
call fcn.1802392f0
test al, al
je 0x18003b48a
nop dword [rax + rax]
lea rcx, [rbp + 0xa0]
call fcn.18000b0e0
mov rdx, rax
mov rcx, r14
call fcn.18023c690
test al, al
jne 0x18003b4dc
xor r8d, r8d
lea rdx, [rbp + 0x2e8]
lea rcx, [rbp + 0xa0]
call fcn.18023abb0
lea rdx, [rbp + 0x240]
inc ebx
lea rcx, [rsi + 0x70]
call fcn.1802393d0
mov rdx, rax
lea rcx, [rbp + 0xa0]
call fcn.1802392f0
test al, al
jne 0x18003b430
mov rcx, r14
call fcn.18023b170
mov rdx, r15
lea rcx, [rbp + 0x500]
call fcn.18023b220
lea rdx, [rbp + 0x500]
lea rcx, [rsi + 0x70]
call fcn.18023abe0
lea rcx, [rbp + 0x500]
call fcn.18023b170
lea rcx, [rsi + 0x70]
call fcn.18023abd0
mov ebx, eax
lea rcx, [rbp + 0x5b8]
mov dword [rsi + 0x24], ebx
call fcn.18023b170
jmp 0x18003b9e7
mov rcx, r14
call fcn.18023b170
test ebx, ebx
jne 0x18003b4c8
jmp 0x18003b492
lea rdx, [rbp + 0x1d0]
mov rcx, rsi
call fcn.18003c7b0
cmp dword [rbp + 0x1d0], 3
jne 0x18003b9e7
mov dword [rsi + 0x20], 3
mov rcx, rsi
mov edx, dword [rbp + 0x1d4]
call fcn.18003c3f0
mov rdx, rax
lea rcx, [rbp + 0x5d8]
call fcn.180031770
mov rcx, rax
call fcn.18023b140
mov rdx, rax
lea rcx, [rbp + 0x8a0]
mov r15, rax
call fcn.18023b220
lea rdx, [rbp + 0xa8]
mov r14, rax
lea rcx, [rsi + 0x70]
mov ebx, 1
call fcn.1802393e0
lea rdx, [rbp + 0x230]
lea rcx, [rsi + 0x70]
call fcn.1802393d0
mov rdx, rax
lea rcx, [rbp + 0xa8]
call fcn.1802392f0
test al, al
je 0x18003b5da
nop
lea rcx, [rbp + 0xa8]
call fcn.18000b0e0
mov rdx, rax
mov rcx, r14
call fcn.18023c690
test al, al
jne 0x18003b62c
xor r8d, r8d
lea rdx, [rbp + 0x2f0]
lea rcx, [rbp + 0xa8]
call fcn.18023abb0
lea rdx, [rbp + 0x230]
inc ebx
lea rcx, [rsi + 0x70]
call fcn.1802393d0
mov rdx, rax
lea rcx, [rbp + 0xa8]
call fcn.1802392f0
test al, al
jne 0x18003b580
mov rcx, r14
call fcn.18023b170
mov rdx, r15
lea rcx, [rbp + 0x520]
call fcn.18023b220
lea rdx, [rbp + 0x520]
lea rcx, [rsi + 0x70]
call fcn.18023abe0
lea rcx, [rbp + 0x520]
call fcn.18023b170
lea rcx, [rsi + 0x70]
call fcn.18023abd0
mov ebx, eax
lea rcx, [rbp + 0x5d8]
mov dword [rsi + 0x24], ebx
call fcn.18023b170
jmp 0x18003b9e7
mov rcx, r14
call fcn.18023b170
test ebx, ebx
jne 0x18003b618
jmp 0x18003b5e2
lea rdx, [rbp + 0xf8]
mov rcx, rsi
call fcn.18003c7b0
lea rdx, [rbp + 0x1d8]
mov rcx, rsi
call fcn.18003c7b0
cmp dword [rbp + 0x1d8], 3
mov edi, r14d
mov dword [rsp + 0x58], r14d
jne 0x18003b967
cmp dword [rbp + 0xf8], 3
jne 0x18003b967
mov edx, dword [rbp + 0x1dc]
mov rcx, rsi
call fcn.18003c3f0
mov edx, dword [rbp + 0xfc]
mov rcx, rsi
mov r12, rax
mov qword [rbp + 0xc0], rax
call fcn.18003c3f0
xor r8d, r8d
lea rcx, [rbp + 0x910]
mov rdx, rax
call fcn.18023e4c0
mov r9d, 0xffffffff
mov qword [rsp + 0x20], r14
mov r8, r12
lea rdx, [rbp + 0x1f8]
lea rcx, [rbp + 0x910]
call fcn.18023e670
lea rcx, [rbp + 0x1f8]
call fcn.18023df20
test eax, eax
je 0x18003b94f
mov ebx, 1
nop dword [rax]
lea rcx, [rbp + 0x1f8]
call fcn.18023df50
lea rcx, [rbp + 0x1f8]
mov edi, eax
call fcn.18023df30
sub edi, eax
je 0x18003b94b
lea ecx, [rdi + 1]
movsxd rcx, ecx
call fcn.18024a2e4
movsxd r15, edi
lea rcx, [rbp + 0x1f8]
mov rdi, r15
mov r13, rax
call fcn.18023df30
movsxd rdx, eax
lea rcx, [r13 - 1]
add rdx, r12
cmp r15, 4
jb 0x18003b7ae
movzx eax, byte [rdx]
inc rcx
mov r8, r15
inc rdx
shr r8, 2
mov byte [rcx], al
test al, al
je 0x18003b79e
nop dword [rax + rax]
movzx eax, byte [rdx]
inc rcx
mov byte [rcx], al
test al, al
je 0x18003b79e
movzx eax, byte [rdx + 1]
inc rcx
mov byte [rcx], al
test al, al
je 0x18003b79e
movzx eax, byte [rdx + 2]
inc rcx
add rdx, 3
mov byte [rcx], al
test al, al
je 0x18003b79e
sub r8, rbx
je 0x18003b7ae
movzx eax, byte [rdx]
inc rcx
inc rdx
mov byte [rcx], al
test al, al
jne 0x18003b760
mov rax, r13
dec rdi
sub rax, rcx
add rdi, rax
je 0x18003b7df
jmp 0x18003b7d2
and edi, 3
je 0x18003b7df
sub rdx, rcx
nop word [rax + rax]
movzx eax, byte [rcx + rdx]
inc rcx
mov byte [rcx], al
sub rdi, rbx
je 0x18003b7df
test al, al
jne 0x18003b7c0
mov byte [rcx + 1], r14b
lea rcx, [rcx + 1]
sub rdi, rbx
jne 0x18003b7d2
mov rdx, r13
mov byte [r15 + r13], r14b
lea rcx, [rbp + 0x8c0]
call fcn.18023b220
lea rdx, [rbp + 0xb0]
mov r12, rax
lea rcx, [rsi + 0x70]
mov edi, ebx
call fcn.1802393e0
lea rdx, [rbp + 0x258]
lea rcx, [rsi + 0x70]
call fcn.1802393d0
mov rdx, rax
lea rcx, [rbp + 0xb0]
call fcn.1802392f0
test al, al
je 0x18003b88a
nop word [rax + rax]
lea rcx, [rbp + 0xb0]
call fcn.18000b0e0
mov rdx, rax
mov rcx, r12
call fcn.18023c690
test al, al
jne 0x18003b93a
xor r8d, r8d
lea rdx, [rbp + 0x2f8]
lea rcx, [rbp + 0xb0]
call fcn.18023abb0
lea rdx, [rbp + 0x258]
inc edi
lea rcx, [rsi + 0x70]
call fcn.1802393d0
mov rdx, rax
lea rcx, [rbp + 0xb0]
call fcn.1802392f0
test al, al
jne 0x18003b830
mov rcx, r12
call fcn.18023b170
mov rdx, r13
lea rcx, [rbp + 0x540]
call fcn.18023b220
lea rdx, [rbp + 0x540]
lea rcx, [rsi + 0x70]
call fcn.18023abe0
lea rcx, [rbp + 0x540]
call fcn.18023b170
lea rcx, [rsi + 0x70]
call fcn.18023abd0
mov rcx, r13
call fcn.180249cb8
mov edi, dword [rsp + 0x58]
lea rcx, [rbp + 0x1f8]
inc edi
mov dword [rsp + 0x58], edi
call fcn.18023df50
mov r12, qword [rbp + 0xc0]
lea rdx, [rbp + 0x5f8]
mov r8, r12
mov qword [rsp + 0x20], r14
mov r9d, eax
lea rcx, [rbp + 0x910]
call fcn.18023e670
mov rdx, rax
lea rcx, [rbp + 0x1f8]
call fcn.18023df70
lea rcx, [rbp + 0x5f8]
call fcn.18003baf0
lea rcx, [rbp + 0x1f8]
call fcn.18023df20
test eax, eax
jne 0x18003b6f0
jmp 0x18003b94f
mov rcx, r12
call fcn.18023b170
test edi, edi
jne 0x18003b8c6
jmp 0x18003b892
mov edi, dword [rsp + 0x58]
lea rcx, [rbp + 0x1f8]
call fcn.18003baf0
lea rcx, [rbp + 0x910]
call fcn.18003bae0
mov dword [rsi + 0x20], 2
mov dword [rsi + 0x24], edi
jmp 0x18003b9e7
mov dword [rsi + 0x20], 2
call fcn.180005b30
mov dword [rsi + 0x24], eax
jmp 0x18003b9e7
lea rdx, [rbp + 0x220]
mov rcx, rsi
call fcn.18003c7b0
mov rax, qword [rbp + 0x220]
cmp eax, 3
jne 0x18003b9e3
mov r8, rax
lea rdx, [rbp + 0x300]
mov rcx, rsi
call fcn.18003c6f0
jmp 0x18003b9e0
lea rdx, [rbp + 0x228]
mov rcx, rsi
call fcn.18003c7b0
mov rax, qword [rbp + 0x228]
cmp eax, 2
jne 0x18003b9e3
mov r8, rax
lea rdx, [rbp + 0x308]
mov rcx, rsi
call fcn.18003c410
mov rax, qword [rax]
mov qword [rsi + 0x20], rax
mov r13, qword [rsp + 0xc18]
mov r12, qword [rsp + 0xc20]
mov rdi, qword [rsp + 0xc28]
mov rbx, qword [rsp + 0xc50]
mov r15, qword [rsp + 0xc10]
add rsp, 0xc30
pop r14
pop rsi
pop rbp
ret