Function at 0x140001550
Capabilities:
Parse pe header

Disassembly:
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rbp
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x460
xor r13d, r13d
mov dword [rcx + 0x1b8], 4
lea r15, [rcx + 0x158]
mov rbx, rcx
mov dword [r15], r13d
mov rax, qword gs:[0x30]
mov qword [rcx + 0x1c8], rax
test rax, rax
je 0x140001674
mov qword [rsp + 0x490], rsi
mov rsi, qword [rax + 0x60]
mov qword [rcx + 0x1c0], rsi
test rsi, rsi
je 0x14000166c
mov rsi, qword [rsi + 0x18]
mov qword [rcx + 0x138], rsi
test rsi, rsi
je 0x14000166c
add rsi, 0x20
mov qword [rcx + 0x1b0], rsi
je 0x14000166c
mov edx, 0xb798b8c0
call section..text
mov edx, 0x2a3af92
mov dword [rbx + 0xc0], eax
mov rcx, rbx
call section..text
or eax, 1
mov dword [rbx + 0x98], eax
mov r11, qword [rsi]
cmp r11, rsi
je 0x140001665
nop dword [rax]
mov r10, qword [r11 + 0x50]
mov eax, 0xf748b08b
mov r9, r13
nop dword [rax]
movzx edx, word [r10]
lea ecx, [rdx - 0x61]
cmp ecx, 0x19
lea r8d, [rdx - 0x20]
cmova r8d, edx
lea ecx, [r8 + r8*8]
xor eax, ecx
mov ecx, r8d
imul ecx, r8d
rol eax, 5
sub eax, ecx
test r8d, r8d
je 0x140001656
inc r9
add r10, 2
cmp r9, 0xffffffffffffffff
jne 0x140001620
cmp eax, 0xdb92dae6
je 0x140001693
mov r11, qword [r11]
cmp r11, rsi
jne 0x140001610
mov qword [rbx + 0x1e8], r13
mov rsi, qword [rsp + 0x490]
lea r11, [rsp + 0x460]
xor eax, eax
mov rbx, qword [r11 + 0x38]
mov rbp, qword [r11 + 0x40]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rdi
ret
mov rdi, qword [r11 + 0x20]
mov qword [rbx + 0x1e8], rdi
test rdi, rdi
je 0x14000166c
mov edx, 0x7b98d298
mov r8d, 0x8f1bf784
mov rcx, rdi
call fcn.140001060
mov qword [rbx + 0x1d8], rax
mov rbp, rax
test rax, rax
je 0x14000166c
mov edx, 0x2c42bee8
mov r8d, 0x323eda06
mov rcx, rdi
call fcn.140001060
mov qword [rbx + 0xb0], rax
test rax, rax
je 0x14000166c
mov edx, 0x42039726
mov r8d, 0x2b89a22
mov rcx, rdi
call fcn.140001060
mov qword [rbx + 0x100], rax
test rax, rax
je 0x14000166c
mov edx, 0x3c647ff8
mov r8d, 0x5eaef5d2
mov rcx, rdi
call fcn.140001060
mov qword [rbx + 0x58], rax
test rax, rax
je 0x14000166c
mov edx, 0x9dd5c88
mov r8d, 0xaf61b120
mov rcx, rdi
call fcn.140001060
mov qword [rbx + 0x20], rax
test rax, rax
je 0x14000166c
mov edx, 0x48548c59
mov r8d, 0xb62759f7
mov rcx, rdi
call fcn.140001060
mov qword [rbx + 8], rax
test rax, rax
je 0x14000166c
mov edx, 0x52cf2076
mov r8d, 0x3f6c0f49
mov rcx, rdi
call fcn.140001060
mov qword [rbx + 0x70], rax
test rax, rax
je 0x14000166c
mov edx, 0x5b4a68d6
mov r8d, 0xf71844
mov rcx, rdi
call fcn.140001060
mov qword [rbx + 0x180], rax
test rax, rax
je 0x14000166c
mov edx, 0x9506f975
mov r8d, 0x16089850
mov rcx, rdi
call fcn.140001060
mov qword [rbx + 0x198], rax
test rax, rax
je 0x14000166c
mov edx, 0xb830b1bf
mov r8d, 0x1ced4da2
mov rcx, rdi
call fcn.140001060
mov qword [rbx + 0xf0], rax
test rax, rax
je 0x14000166c
mov edx, 0xb046a12
mov r8d, 0x2493dabd
mov rcx, rdi
call fcn.140001060
mov qword [rbx + 0x168], rax
test rax, rax
je 0x14000166c
mov edx, 0x9f0c46f8
mov r8d, 0x7e1783ea
mov rcx, rdi
call fcn.140001060
mov qword [rbx + 0x30], rax
test rax, rax
je 0x14000166c
mov edx, 0x469d67c9
mov r8d, 0x7da9767a
mov rcx, rdi
call fcn.140001060
mov qword [rbx + 0x170], rax
test rax, rax
je 0x14000166c
mov edx, 0x60f5925
mov r8d, 0x63675669
mov rcx, rdi
call fcn.140001060
mov qword [rbx + 0x28], rax
test rax, rax
je 0x14000166c
mov rax, qword [rsi]
mov r8d, 0x9098440b
mov r9, r13
mov r10, qword [rax + 0x50]
nop word [rax + rax]
movzx ecx, word [r10]
lea eax, [rcx - 0x61]
cmp eax, 0x19
lea edx, [rcx - 0x20]
cmova edx, ecx
lea eax, [rdx + rdx*8]
xor r8d, eax
mov eax, edx
imul eax, edx
rol r8d, 5
sub r8d, eax
test edx, edx
je 0x1400018c3
inc r9
add r10, 2
cmp r9, 0xc
jne 0x140001890
mov edx, dword [rbx + 0x98]
lea rdi, [rbx + 0xd8]
mov ecx, dword [rbx + 0xc0]
lea r14, [rbx + 0xdc]
imul r8d, r8d
add ecx, edx
add r8d, ecx
add ecx, edx
rol r8d, 0x10
mov eax, r8d
imul r8d, r8d
xor eax, 0x6e615b3f
mov dword [rdi], eax
add r8d, ecx
add ecx, edx
rol r8d, 0x10
mov eax, r8d
imul r8d, r8d
xor eax, 0xfcec4eb9
mov dword [r14], eax
add r8d, ecx
rol r8d, 0x10
mov eax, r8d
imul r8d, r8d
xor eax, 0x9f56692d
mov dword [rbx + 0xe0], eax
lea eax, [rcx + rdx]
mov dword [rbx + 0xc0], eax
mov rcx, r13
add r8d, eax
rol r8d, 0x10
mov dword [rbx + 0x148], r8d
xor r8d, 0x8b1b82a1
mov dword [rbx + 0xe4], r8d
movzx eax, byte [rcx + rdi]
test al, al
je 0x140001973
sub al, 0x30
cmp al, 0x4a
ja 0x14000166c
inc rcx
cmp rcx, 0x10
jl 0x140001953
jmp 0x14000166c
mov rcx, rdi
call rbp
mov qword [rbx + 0x48], rax
test rax, rax
je 0x14000166c
mov r8d, dword [rbx + 0x98]
mov ecx, dword [rbx + 0xc0]
mov r9d, dword [rbx + 0x148]
add ecx, r8d
imul r9d, r9d
lea edx, [r8 + rcx]
add r9d, ecx
lea ecx, [r8 + rdx]
rol r9d, 0x10
mov eax, r9d
imul r9d, r9d
xor eax, 0x68542d2
mov dword [rdi], eax
add r9d, edx
rol r9d, 0x10
mov eax, r9d
imul r9d, r9d
xor eax, 0xa37f06dc
mov dword [r14], eax
add r9d, ecx
rol r9d, 0x10
mov eax, r9d
imul r9d, r9d
xor eax, 0xab7974cd
mov dword [rbx + 0xe0], eax
lea eax, [r8 + rcx]
mov dword [rbx + 0xc0], eax
mov rcx, rdi
add r9d, eax
rol r9d, 0x10
mov dword [rbx + 0x148], r9d
xor r9d, 0xa70f3793
mov dword [rbx + 0xe4], r9d
mov rax, qword [rbx + 0x1d8]
call rax
mov qword [rbx + 0x1d0], rax
test rax, rax
je 0x14000166c
mov rax, qword [rbx + 0xb0]
mov edx, 0x71
xor ecx, ecx
mov r8d, 0x3000
lea r9d, [rdx - 0x6d]
call rax
mov qword [rbx + 0x150], rax
mov rbp, rax
test rax, rax
je 0x14000166c
mov rsi, qword [rbx + 0x48]
mov edx, 0xa5d3e9c8
mov rcx, rsi
mov r8d, 0xc9fb252f
call fcn.140001060
mov qword [rbx + 0x118], rax
test rax, rax
je 0x14000166c
mov rcx, qword [rbx + 0x1d0]
mov edx, 0x3aac8a50
mov r8d, 0x5e637c88
call fcn.140001060
mov qword [rbx + 0x68], rax
test rax, rax
je 0x14000166c
mov edx, 0x62b01dca
mov r8d, 0xdbed0034
mov rcx, rsi
call fcn.140001060
mov qword [rbx + 0x60], rax
test rax, rax
je 0x14000166c
mov r8d, dword [rbx + 0x98]
mov esi, 0x10
mov ecx, dword [rbx + 0xc0]
mov r9d, dword [rbx + 0x148]
add ecx, r8d
imul r9d, r9d
lea edx, [r8 + rcx]
add r9d, ecx
lea ecx, [r8 + rdx]
rol r9d, 0x10
mov eax, r9d
imul r9d, r9d
xor eax, 0xa1bcd0ac
mov dword [rdi], eax
add r9d, edx
rol r9d, 0x10
mov eax, r9d
imul r9d, r9d
xor eax, 0x8c09bebe
mov dword [r14], eax
add r9d, ecx
rol r9d, 0x10
mov eax, r9d
imul r9d, r9d
xor eax, 0x8931b875
mov dword [rbx + 0xe0], eax
lea eax, [r8 + rcx]
mov dword [rbx + 0xc0], eax
mov ecx, esi
add r9d, eax
rol r9d, 0x10
mov dword [rbx + 0x148], r9d
xor r9d, 0x42130981
mov dword [rbx + 0xe4], r9d
nop word [rax + rax]
cmp rcx, 4
jb 0x140001b74
mov eax, dword [rdi + rcx - 4]
sub rcx, 4
mov dword [rcx + rbp + 0x70], eax
jmp 0x140001b80
movzx eax, byte [rdi + rcx - 1]
dec rcx
mov byte [rcx + rbp + 0x70], al
test rcx, rcx
jne 0x140001b60
mov r8d, dword [rbx + 0x98]
mov ecx, dword [rbx + 0xc0]
mov r9d, dword [rbx + 0x148]
add ecx, r8d
imul r9d, r9d
lea edx, [r8 + rcx]
add r9d, ecx
lea ecx, [r8 + rdx]
rol r9d, 0x10
mov eax, r9d
imul r9d, r9d
xor eax, 0x51205249
mov dword [rdi], eax
add r9d, edx
rol r9d, 0x10
mov eax, r9d
imul r9d, r9d
xor eax, 0xb653329a
mov dword [r14], eax
add r9d, ecx
rol r9d, 0x10
mov eax, r9d
imul r9d, r9d
xor eax, 0x1c9c9dfc
mov dword [rbx + 0xe0], eax
lea eax, [r8 + rcx]
mov dword [rbx + 0xc0], eax
mov rcx, rsi
add r9d, eax
rol r9d, 0x10
mov dword [rbx + 0x148], r9d
xor r9d, 0x6b6969db
mov dword [rbx + 0xe4], r9d
mov rdx, qword [rbx + 0x150]
nop dword [rax]
cmp rcx, 4
jb 0x140001c34
mov eax, dword [rdi + rcx - 4]
sub rcx, 4
mov dword [rdx + rcx + 0x10], eax
jmp 0x140001c40
movzx eax, byte [rdi + rcx - 1]
dec rcx
mov byte [rdx + rcx + 0x10], al
test rcx, rcx
jne 0x140001c20
mov rcx, qword [rbx + 0x48]
mov edx, 0x75b12d4d
mov r8d, 0xea51c82f
call fcn.140001060
mov qword [rbx], rax
test rax, rax
je 0x14000166c
mov r8d, dword [rbx + 0x98]
mov ecx, dword [rbx + 0xc0]
mov r9d, dword [rbx + 0x148]
add ecx, r8d
imul r9d, r9d
lea edx, [r8 + rcx]
add r9d, ecx
lea ecx, [r8 + rdx]
rol r9d, 0x10
mov eax, r9d
imul r9d, r9d
xor eax, 0x987cf870
mov dword [rdi], eax
add r9d, edx
rol r9d, 0x10
mov eax, r9d
imul r9d, r9d
xor eax, 0xfa0e019c
mov dword [r14], eax
add r9d, ecx
rol r9d, 0x10
mov eax, r9d
imul r9d, r9d
xor eax, 0x53596ac
mov dword [rbx + 0xe0], eax
lea eax, [r8 + rcx]
mov dword [rbx + 0xc0], eax
mov rcx, rsi
add r9d, eax
rol r9d, 0x10
mov dword [rbx + 0x148], r9d
xor r9d, 0x1fd27e95
mov dword [rbx + 0xe4], r9d
mov rdx, qword [rbx + 0x150]
nop dword [rax]
cmp rcx, 4
jb 0x140001d14
mov eax, dword [rdi + rcx - 4]
sub rcx, 4
mov dword [rdx + rcx + 0x60], eax
jmp 0x140001d20
movzx eax, byte [rdi + rcx - 1]
dec rcx
mov byte [rdx + rcx + 0x60], al
test rcx, rcx
jne 0x140001d00
mov r8d, dword [rbx + 0x98]
mov ecx, dword [rbx + 0xc0]
mov r9d, dword [rbx + 0x148]
add ecx, r8d
imul r9d, r9d
lea edx, [rcx + r8]
add r9d, ecx
lea ecx, [r8 + rdx]
rol r9d, 0x10
mov eax, r9d
imul r9d, r9d
xor eax, 0xee23d06
mov dword [rdi], eax
add r9d, edx
rol r9d, 0x10
mov eax, r9d
imul r9d, r9d
xor eax, 0x29ddf900
mov dword [r14], eax
add r9d, ecx
rol r9d, 0x10
mov eax, r9d
imul r9d, r9d
xor eax, 0xb4280b39
mov dword [rbx + 0xe0], eax
lea eax, [r8 + rcx]
mov dword [rbx + 0xc0], eax
mov rcx, rsi
add r9d, eax
rol r9d, 0x10
mov dword [rbx + 0x148], r9d
xor r9d, 0x5feea45
mov dword [rbx + 0xe4], r9d
mov rdx, qword [rbx + 0x150]
nop dword [rax]
cmp rcx, 4
jb 0x140001dd4
mov eax, dword [rdi + rcx - 4]
sub rcx, 4
mov dword [rdx + rcx + 0x20], eax
jmp 0x140001de0
movzx eax, byte [rdi + rcx - 1]
dec rcx
mov byte [rdx + rcx + 0x20], al
test rcx, rcx
jne 0x140001dc0
mov r8d, dword [rbx + 0x98]
mov ecx, dword [rbx + 0xc0]
mov r9d, dword [rbx + 0x148]
add ecx, r8d
imul r9d, r9d
lea edx, [rcx + r8]
add r9d, ecx
lea ecx, [r8 + rdx]
rol r9d, 0x10
mov eax, r9d
imul r9d, r9d
xor eax, 0x7ca55fe2
mov dword [rdi], eax
add r9d, edx
rol r9d, 0x10
mov eax, r9d
imul r9d, r9d
xor eax, 0xbdf464a6
mov dword [r14], eax
add r9d, ecx
rol r9d, 0x10
mov eax, r9d
imul r9d, r9d
xor eax, 0x738cac6f
mov dword [rbx + 0xe0], eax
lea eax, [r8 + rcx]
mov dword [rbx + 0xc0], eax
mov rcx, rsi
add r9d, eax
rol r9d, 0x10
mov dword [rbx + 0x148], r9d
xor r9d, 0xef3337c1
mov dword [rbx + 0xe4], r9d
mov rdx, qword [rbx + 0x150]
nop dword [rax]
cmp rcx, 4
jb 0x140001e94
mov eax, dword [rdi + rcx - 4]
sub rcx, 4
mov dword [rdx + rcx + 0x30], eax
jmp 0x140001ea0
movzx eax, byte [rdi + rcx - 1]
dec rcx
mov byte [rdx + rcx + 0x30], al
test rcx, rcx
jne 0x140001e80
mov r8d, dword [rbx + 0x98]
mov ecx, dword [rbx + 0xc0]
mov r9d, dword [rbx + 0x148]
add ecx, r8d
imul r9d, r9d
lea edx, [rcx + r8]
add r9d, ecx
lea ecx, [r8 + rdx]
rol r9d, 0x10
mov eax, r9d
imul r9d, r9d
xor eax, 0x639209e7
mov dword [rdi], eax
add r9d, edx
rol r9d, 0x10
mov eax, r9d
imul r9d, r9d
xor eax, 0x1172f569
mov dword [r14], eax
add r9d, ecx
rol r9d, 0x10
mov eax, r9d
imul r9d, r9d
xor eax, 0xeb9e959c
mov dword [rbx + 0xe0], eax
lea eax, [r8 + rcx]
mov dword [rbx + 0xc0], eax
mov rcx, rsi
add r9d, eax
rol r9d, 0x10
mov dword [rbx + 0x148], r9d
xor r9d, 0xcfb8023d
mov dword [rbx + 0xe4], r9d
mov rdx, qword [rbx + 0x150]
nop dword [rax]
cmp rcx, 4
jb 0x140001f54
mov eax, dword [rdi + rcx - 4]
sub rcx, 4
mov dword [rdx + rcx + 0x40], eax
jmp 0x140001f60
movzx eax, byte [rdi + rcx - 1]
dec rcx
mov byte [rdx + rcx + 0x40], al
test rcx, rcx
jne 0x140001f40
mov rcx, qword [rbx + 0x48]
mov edx, 0x8d0b3dbb
mov r8d, 0x2b6d0050
call fcn.140001060
mov qword [rbx + 0x110], rax
test rax, rax
je 0x14000166c
mov r8d, dword [rbx + 0x98]
mov ecx, dword [rbx + 0xc0]
mov r9d, dword [rbx + 0x148]
add ecx, r8d
imul r9d, r9d
lea edx, [rcx + r8]
add r9d, ecx
lea ecx, [r8 + rdx]
rol r9d, 0x10
mov eax, r9d
imul r9d, r9d
xor eax, 0x64985790
mov dword [rdi], eax
add r9d, edx
rol r9d, 0x10
mov eax, r9d
imul r9d, r9d
xor eax, 0x716b2930
mov dword [r14], eax
add r9d, ecx
rol r9d, 0x10
mov eax, r9d
imul r9d, r9d
xor eax, 0xfdffd789
mov dword [rbx + 0xe0], eax
lea eax, [r8 + rcx]
mov dword [rbx + 0xc0], eax
mov rcx, rsi
add r9d, eax
rol r9d, 0x10
mov dword [rbx + 0x148], r9d
xor r9d, 0x71554911
mov dword [rbx + 0xe4], r9d
mov rdx, qword [rbx + 0x150]
cmp rcx, 4
jb 0x140002034
mov eax, dword [rdi + rcx - 4]
sub rcx, 4
mov dword [rdx + rcx + 0x50], eax
jmp 0x140002040
movzx eax, byte [rdi + rcx - 1]
dec rcx
mov byte [rdx + rcx + 0x50], al
test rcx, rcx
jne 0x140002020
mov r8d, dword [rbx + 0x98]
mov ecx, dword [rbx + 0xc0]
mov r9d, dword [rbx + 0x148]
add ecx, r8d
imul r9d, r9d
lea edx, [rcx + r8]
add r9d, ecx
lea ecx, [r8 + rdx]
rol r9d, 0x10
mov eax, r9d
imul r9d, r9d
xor eax, 0xef4cc52b
mov dword [rdi], eax
add r9d, edx
rol r9d, 0x10
mov eax, r9d
imul r9d, r9d
xor eax, 0xf35ecfd0
mov dword [r14], eax
add r9d, ecx
rol r9d, 0x10
mov eax, r9d
imul r9d, r9d
xor eax, 0x46161189
mov dword [rbx + 0xe0], eax
lea eax, [r8 + rcx]
mov dword [rbx + 0xc0], eax
add r9d, eax
rol r9d, 0x10
mov dword [rbx + 0x148], r9d
xor r9d, 0x4fe02a8d
mov dword [rbx + 0xe4], r9d
mov rcx, qword [rbx + 0x150]
nop dword [rax]
cmp rsi, 4
jb 0x1400020f3
mov eax, dword [rdi + rsi - 4]
sub rsi, 4
mov dword [rcx + rsi], eax
jmp 0x1400020fe
movzx eax, byte [rdi + rsi - 1]
dec rsi
mov byte [rcx + rsi], al
test rsi, rsi
jne 0x1400020e0
mov rax, qword [rbx + 0x110]
lea edx, [rsi + 1]
xor r9d, r9d
mov dword [rsp + 0x20], r13d
xor r8d, r8d
xor ecx, ecx
call rax
mov qword [rbx + 0x128], rax
test rax, rax
je 0x14000166c
mov rsi, qword [rbx + 0x48]
mov edx, 0x97967239
mov rcx, rsi
mov r8d, 0xcb04b973
call fcn.140001060
mov qword [rbx + 0x40], rax
test rax, rax
je 0x14000166c
mov edx, 0x8295e22a
mov r8d, 0x58aacfcd
mov rcx, rsi
call fcn.140001060
mov qword [rbx + 0xd0], rax
test rax, rax
je 0x14000166c
mov rax, qword [rbx + 0xf0]
lea rdx, [rsp + 0x40]
mov ecx, 0x104
call rax
test eax, eax
je 0x14000166c
mov rax, qword [rbx + 0x30]
lea rcx, [rsp + 0x40]
call rax
test eax, eax
je 0x14000166c
mov rcx, qword [rbx + 0x48]
mov edx, 0x63012bf2
mov r8d, 0x74f20e6
call fcn.140001060
mov qword [rbx + 0x90], rax
test rax, rax
je 0x14000166c
lea rdx, [rsp + 0x250]
mov rcx, rbx
call fcn.1400013c0
mov rcx, qword [rbx + 0x10]
lea rax, [rcx - 1]
cmp rax, 0xfffffffffffffffd
ja 0x14000166c
mov rax, qword [rbx + 0x180]
lea r9, [rbx + 0x1a0]
mov rdx, qword [rbx + 0x150]
mov r8d, 0x71
mov qword [rsp + 0x20], r13
call rax
test eax, eax
je 0x14000166c
mov rcx, qword [rbx + 0x10]
call qword [rbx + 0x70]
mov r8d, dword [rbx + 0x98]
mov r9d, dword [rbx + 0x148]
mov ecx, dword [rbx + 0xc0]
imul r9d, r9d
add ecx, r8d
mov qword [rsp + 0x38], r13
mov dword [rsp + 0x30], r13d
mov dword [rsp + 0x28], 3
lea edx, [rcx + r8]
mov qword [rsp + 0x20], r13
add r9d, ecx
lea ecx, [r8 + rdx]
rol r9d, 0x10
mov eax, r9d
imul r9d, r9d
xor eax, 0xf81ee61e
mov dword [rdi], eax
add r9d, edx
mov rdx, rdi
rol r9d, 0x10
mov eax, r9d
imul r9d, r9d
xor eax, 0x941c30b3
mov dword [r14], eax
add r9d, ecx
rol r9d, 0x10
mov eax, r9d
imul r9d, r9d
xor eax, 0xabded8e
mov dword [rbx + 0xe0], eax
lea eax, [r8 + rcx]
mov dword [rbx + 0xc0], eax
mov r8d, 0x1bb
add r9d, eax
rol r9d, 0x10
mov dword [rbx + 0x148], r9d
xor r9d, 0x72ca8c20
mov dword [rbx + 0xe4], r9d
xor r9d, r9d
mov rax, qword [rbx + 0x118]
mov rcx, qword [rbx + 0x128]
call rax
mov qword [rbx + 0x18], rax
mov r10, rax
test rax, rax
je 0x14000166c
mov r8d, dword [rbx + 0x98]
mov r9d, dword [rbx + 0x148]
mov edx, dword [rbx + 0xc0]
imul r9d, r9d
add edx, r8d
mov qword [rsp + 0x38], r13
mov dword [rsp + 0x30], 0x80800000
mov qword [rsp + 0x28], r13
lea ecx, [rdx + r8]
mov qword [rsp + 0x20], r13
add r9d, edx
lea edx, [r8 + rcx]
rol r9d, 0x10
mov eax, r9d
imul r9d, r9d
xor eax, 0xd6f3b115
mov dword [rdi], eax
add r9d, ecx
mov rcx, r10
rol r9d, 0x10
mov eax, r9d
imul r9d, r9d
xor eax, 0x661fbe51
mov dword [r14], eax
add r9d, edx
rol r9d, 0x10
mov eax, r9d
imul r9d, r9d
xor eax, 0x95c87b39
mov dword [rbx + 0xe0], eax
lea eax, [rdx + r8]
mov dword [rbx + 0xc0], eax
mov r8, r14
mov rdx, rdi
add r9d, eax
mov rax, qword [rbx + 0x60]
rol r9d, 0x10
mov dword [rbx + 0x148], r9d
xor r9d, 0xa016775b
mov dword [rbx + 0xe4], r9d
xor r9d, r9d
call rax
mov qword [rbx + 0x108], rax
test rax, rax
je 0x14000166c
mov rax, qword [rbx + 0x68]
lea r8, [rsp + 0x250]
mov dword [rsp + 0x28], 1
xor r9d, r9d
xor edx, edx
mov qword [rsp + 0x20], r13
xor ecx, ecx
call rax
cmp rax, 0x20
jb 0x14000166c
mov rax, qword [rbx + 0xd0]
xor r9d, r9d
mov rcx, qword [rbx + 0x108]
xor r8d, r8d
xor edx, edx
mov dword [rsp + 0x20], r13d
call rax
test eax, eax
je 0x14000166c
mov rax, qword [rbx + 0x90]
lea r9, [rbx + 0x1b8]
mov rcx, qword [rbx + 0x108]
lea r8, [rbx + 0xb8]
mov edx, 0x20000005
mov qword [rsp + 0x20], r15
call rax
test eax, eax
je 0x14000166c
mov rax, qword [rbx + 0xb0]
xor ecx, ecx
mov edx, dword [rbx + 0xb8]
mov r8d, 0x3000
lea r9d, [rcx + 4]
call rax
mov qword [rbx + 0x50], rax
test rax, rax
je 0x14000166c
mov r10, qword [rbx + 0x40]
lea r9, [rbx + 0xf8]
mov r8d, dword [rbx + 0xb8]
mov rdx, rax
mov rcx, qword [rbx + 0x108]
call r10
test eax, eax
je 0x14000166c
mov eax, dword [rbx + 0xb8]
cmp dword [rbx + 0xf8], eax
jne 0x14000166c
mov rcx, qword [rbx + 0x18]
call qword [rbx]
mov rcx, qword [rbx + 0x128]
call qword [rbx]
mov rcx, qword [rbx + 0x108]
call qword [rbx]
mov rcx, qword [rbx + 0x50]
mov eax, 0x5a4d
mov qword [rbx + 0xa8], rcx
cmp word [rcx], ax
jne 0x14000166c
movsxd rdx, dword [rcx + 0x3c]
add rdx, rcx
mov qword [rbx + 0x160], rdx
cmp dword [rdx], 0x4550
jne 0x14000166c
mov eax, 0x8664
cmp word [rdx + 4], ax
jne 0x14000166c
mov eax, 0x20b
cmp word [rdx + 0x18], ax
jne 0x14000166c
movzx ecx, word [rdx + 0x14]
mov r8d, 0x3000
mov rax, qword [rbx + 0xb0]
add rcx, 0x18
add rcx, rdx
mov qword [rbx + 0xa0], rcx
xor ecx, ecx
mov edx, dword [rdx + 0x50]
lea r9d, [rcx + 0x40]
call rax
mov qword [rbx + 0x80], rax
mov r8, rax
test rax, rax
je 0x14000166c
mov rcx, qword [rbx + 0x160]
mov edx, dword [rcx + 0x54]
mov rcx, qword [rbx + 0x50]
test rdx, rdx
je 0x140002575
nop dword [rax]
cmp rdx, 4
jb 0x140002564
mov eax, dword [rcx + rdx - 4]
sub rdx, 4
mov dword [r8 + rdx], eax
jmp 0x140002570
movzx eax, byte [rcx + rdx - 1]
dec rdx
mov byte [r8 + rdx], al
test rdx, rdx
jne 0x140002550
mov rcx, rbx
call fcn.1400011a0
mov rcx, rbx
call fcn.140001220
mov rcx, rbx
call fcn.140001310
mov rax, qword [rbx + 0x160]
mov r8d, 0x2000
mov rcx, qword [rbx + 0x80]
mov r9d, dword [rax + 0x28]
add r9, rcx
test word [rax + 0x16], r8w
je 0x1400025e0
xor r8d, r8d
lea edx, [r8 + 1]
call r9
mov rcx, qword [rbx + 0x80]
mov edx, 0x608123d1
mov r8d, 0x74f5ca52
call fcn.140001060
test rax, rax
je 0x14000166c
call rax
jmp 0x14000166c
call r9
jmp 0x14000166c