Function at 0x140001560
Capabilities:
Parse pe header
Resolve function by parsing pe exports

Disassembly:
mov r11, rsp
push rbx
push rbp
push rdi
push r14
sub rsp, 0x468
mov rax, qword gs:[0x30]
mov rbx, rcx
mov qword [rcx + 0x98], rax
test rax, rax
je 0x14000168c
mov rcx, qword [rax + 0x60]
mov qword [rbx + 0x120], rcx
test rcx, rcx
je 0x14000168c
mov qword [r11 + 8], rsi
mov rsi, qword [rcx + 0x18]
mov qword [rbx + 0x38], rsi
test rsi, rsi
je 0x140001684
mov qword [r11 + 0x10], r12
mov qword [r11 + 0x18], r13
xor r13d, r13d
mov qword [r11 - 0x28], r15
add rsi, 0x20
lea r15, [rbx + 0x1b0]
mov qword [rbx + 0xb8], rsi
mov dword [r15], r13d
mov dword [rbx + 0x118], 4
je 0x14000166c
mov edx, 0xb2c6b089
mov rcx, rbx
call section..text
or eax, 1
mov dword [rbx + 0x158], eax
mov r11, qword [rsi]
cmp r11, rsi
je 0x140001665
nop word [rax + rax]
mov r10, qword [r11 + 0x50]
mov eax, 0x3d49b35b
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, 0x6780da85
je 0x14000169b
mov r11, qword [r11]
cmp r11, rsi
jne 0x140001610
mov qword [rbx + 0x100], r13
mov r13, qword [rsp + 0x4a0]
mov r12, qword [rsp + 0x498]
mov r15, qword [rsp + 0x460]
mov rsi, qword [rsp + 0x490]
xor eax, eax
add rsp, 0x468
pop r14
pop rdi
pop rbp
pop rbx
ret
mov rdi, qword [r11 + 0x20]
mov qword [rbx + 0x100], rdi
test rdi, rdi
je 0x14000166c
mov edx, 0xd35527a1
mov r8d, 0x7c20dd89
mov rcx, rdi
call fcn.140001060
mov qword [rbx + 0xd0], rax
mov rbp, rax
test rax, rax
je 0x14000166c
mov edx, 0x1378f021
mov r8d, 0x32f39bd6
mov rcx, rdi
call fcn.140001060
mov qword [rbx + 0x88], rax
test rax, rax
je 0x14000166c
mov edx, 0x8ddcb448
mov r8d, 0x7ac4e7b1
mov rcx, rdi
call fcn.140001060
mov qword [rbx], rax
test rax, rax
je 0x14000166c
mov edx, 0x10a68191
mov r8d, 0xe56a3013
mov rcx, rdi
call fcn.140001060
mov qword [rbx + 0x48], rax
test rax, rax
je 0x14000166c
mov edx, 0xf5c3763f
mov r8d, 0x401d0067
mov rcx, rdi
call fcn.140001060
mov qword [rbx + 0x128], rax
test rax, rax
je 0x14000166c
mov rax, qword [rsi]
mov r8d, 0x4b57d78d
mov r9, r13
mov r10, qword [rax + 0x50]
nop
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 0x140001793
inc r9
add r10, 2
cmp r9, 0xc
jne 0x140001760
mov dword [rbx + 0xe8], r8d
mov edx, 0x86ee54c2
mov r8d, 0x6551ba8c
mov rcx, rdi
call fcn.140001060
mov qword [rbx + 0x80], rax
test rax, rax
je 0x14000166c
mov edx, 0x54bb7557
mov r8d, 0xabeec545
mov rcx, rdi
call fcn.140001060
mov qword [rbx + 0x110], rax
test rax, rax
je 0x14000166c
mov edx, 0x14fb3582
mov r8d, 0xce99e209
mov rcx, rdi
call fcn.140001060
mov qword [rbx + 0x1a8], rax
test rax, rax
je 0x14000166c
mov edx, 0xcd930aad
mov r8d, 0xf7015ddc
mov rcx, rdi
call fcn.140001060
mov qword [rbx + 0x68], rax
test rax, rax
je 0x14000166c
mov rax, qword [rsi]
mov r8d, 0x6cd2d440
mov r9, r13
mov r10, qword [rax + 0x50]
nop dword [rax]
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 0x140001873
inc r9
add r10, 2
cmp r9, 0xc
jne 0x140001840
mov edx, dword [rbx + 0x158]
lea rdi, [rbx + 0x188]
mov ecx, dword [rbx + 0xe8]
lea r14, [rbx + 0x18c]
imul r8d, r8d
add ecx, edx
add r8d, ecx
add ecx, edx
rol r8d, 0x10
mov eax, r8d
imul r8d, r8d
xor eax, 0x2afc4107
mov dword [rdi], eax
add r8d, ecx
add ecx, edx
rol r8d, 0x10
mov eax, r8d
imul r8d, r8d
xor eax, 0xc68055bb
mov dword [r14], eax
add r8d, ecx
rol r8d, 0x10
mov eax, r8d
imul r8d, r8d
xor eax, 0xff3089e4
mov dword [rbx + 0x190], eax
lea eax, [rdx + rcx]
mov dword [rbx + 0xe8], eax
mov rcx, r13
add r8d, eax
rol r8d, 0x10
mov dword [rbx + 0x50], r8d
xor r8d, 0x190aaa2c
mov dword [rbx + 0x194], r8d
movzx eax, byte [rcx + rdi]
test al, al
je 0x140001920
sub al, 0x30
cmp al, 0x4a
ja 0x14000166c
inc rcx
cmp rcx, 0x10
jl 0x140001900
jmp 0x14000166c
mov rcx, rdi
call rbp
mov qword [rbx + 8], rax
test rax, rax
je 0x14000166c
mov r8d, dword [rbx + 0x158]
mov ecx, dword [rbx + 0xe8]
mov r9d, dword [rbx + 0x50]
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, 0xf9e822bd
mov dword [rdi], eax
add r9d, edx
rol r9d, 0x10
mov eax, r9d
imul r9d, r9d
xor eax, 0xb3f6f18d
mov dword [r14], eax
add r9d, ecx
rol r9d, 0x10
mov eax, r9d
imul r9d, r9d
xor eax, 0x97c4a0d5
mov dword [rbx + 0x190], eax
lea eax, [r8 + rcx]
mov dword [rbx + 0xe8], eax
mov rcx, rdi
add r9d, eax
rol r9d, 0x10
mov dword [rbx + 0x50], r9d
xor r9d, 0x973f7300
mov dword [rbx + 0x194], r9d
mov rax, qword [rbx + 0xd0]
call rax
mov qword [rbx + 0x78], rax
test rax, rax
je 0x14000166c
mov rax, qword [rbx + 0x88]
mov edx, 0x71
xor ecx, ecx
mov r8d, 0x3000
lea r9d, [rdx - 0x6d]
call rax
mov qword [rbx + 0x130], rax
mov rbp, rax
test rax, rax
je 0x14000166c
mov rcx, qword [rbx + 8]
mov edx, 0x848cfcd6
mov r8d, 0xe591cc41
call fcn.140001060
mov qword [rbx + 0x18], rax
test rax, rax
je 0x14000166c
mov rcx, qword [rbx + 0x100]
mov edx, 0x466946ae
mov r8d, 0x5bccf875
call fcn.140001060
mov qword [rbx + 0x70], rax
test rax, rax
je 0x14000166c
mov r8d, dword [rbx + 0x158]
mov esi, 0x10
mov ecx, dword [rbx + 0xe8]
mov r9d, dword [rbx + 0x50]
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, 0x3721d93a
mov dword [rdi], eax
add r9d, edx
rol r9d, 0x10
mov eax, r9d
imul r9d, r9d
xor eax, 0x3b62b6ea
mov dword [r14], eax
add r9d, ecx
rol r9d, 0x10
mov eax, r9d
imul r9d, r9d
xor eax, 0xb9aa4117
mov dword [rbx + 0x190], eax
lea eax, [r8 + rcx]
mov dword [rbx + 0xe8], eax
mov ecx, esi
add r9d, eax
rol r9d, 0x10
mov dword [rbx + 0x50], r9d
xor r9d, 0x1478ef1c
mov dword [rbx + 0x194], r9d
cmp rcx, 4
jb 0x140001ae6
mov eax, dword [rdi + rcx - 4]
sub rcx, 4
mov dword [rcx + rbp + 0x10], eax
jmp 0x140001af2
movzx eax, byte [rdi + rcx - 1]
dec rcx
mov byte [rcx + rbp + 0x10], al
test rcx, rcx
jne 0x140001ad2
mov rbp, qword [rbx + 8]
mov edx, 0x7a61386
mov rcx, rbp
mov r8d, 0x706424d
call fcn.140001060
mov qword [rbx + 0xf0], rax
test rax, rax
je 0x14000166c
mov edx, 0xe236ce9b
mov r8d, 0x24c7d6ce
mov rcx, rbp
call fcn.140001060
mov qword [rbx + 0x1c0], rax
test rax, rax
je 0x14000166c
mov rcx, qword [rbx + 0x100]
mov edx, 0xae0245bf
mov r8d, 0xb59c6dec
call fcn.140001060
mov qword [rbx + 0x10], rax
test rax, rax
je 0x14000166c
mov r8d, dword [rbx + 0x158]
mov ecx, dword [rbx + 0xe8]
mov r9d, dword [rbx + 0x50]
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, 0xabf33130
mov dword [rdi], eax
add r9d, edx
rol r9d, 0x10
mov eax, r9d
imul r9d, r9d
xor eax, 0x5a73113c
mov dword [r14], eax
add r9d, ecx
rol r9d, 0x10
mov eax, r9d
imul r9d, r9d
xor eax, 0xeb6febf2
mov dword [rbx + 0x190], eax
lea eax, [r8 + rcx]
mov dword [rbx + 0xe8], eax
mov rcx, rsi
add r9d, eax
rol r9d, 0x10
mov dword [rbx + 0x50], r9d
xor r9d, 0x7bd85751
mov dword [rbx + 0x194], r9d
mov rdx, qword [rbx + 0x130]
cmp rcx, 4
jb 0x140001c0a
mov eax, dword [rdi + rcx - 4]
sub rcx, 4
mov dword [rdx + rcx + 0x40], eax
jmp 0x140001c16
movzx eax, byte [rdi + rcx - 1]
dec rcx
mov byte [rdx + rcx + 0x40], al
test rcx, rcx
jne 0x140001bf6
mov r8d, dword [rbx + 0x158]
mov ecx, dword [rbx + 0xe8]
mov r9d, dword [rbx + 0x50]
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, 0xfdca8705
mov dword [rdi], eax
add r9d, edx
rol r9d, 0x10
mov eax, r9d
imul r9d, r9d
xor eax, 0x73336dee
mov dword [r14], eax
add r9d, ecx
rol r9d, 0x10
mov eax, r9d
imul r9d, r9d
xor eax, 0xe12bd7dc
mov dword [rbx + 0x190], eax
lea eax, [r8 + rcx]
mov dword [rbx + 0xe8], eax
mov rcx, rsi
add r9d, eax
rol r9d, 0x10
mov dword [rbx + 0x50], r9d
xor r9d, 0x717ae979
mov dword [rbx + 0x194], r9d
mov rdx, qword [rbx + 0x130]
nop dword [rax]
cmp rcx, 4
jb 0x140001cc4
mov eax, dword [rdi + rcx - 4]
sub rcx, 4
mov dword [rdx + rcx + 0x60], eax
jmp 0x140001cd0
movzx eax, byte [rdi + rcx - 1]
dec rcx
mov byte [rdx + rcx + 0x60], al
test rcx, rcx
jne 0x140001cb0
mov rcx, qword [rbx + 0x100]
mov edx, 0x12d87ae3
mov r8d, 0x19d0ab2a
call fcn.140001060
mov qword [rbx + 0xc0], rax
test rax, rax
je 0x14000166c
mov rcx, qword [rbx + 8]
mov edx, 0xe0154c57
mov r8d, 0xecffe95d
call fcn.140001060
mov qword [rbx + 0x168], rax
test rax, rax
je 0x14000166c
mov r8d, dword [rbx + 0x158]
mov ecx, dword [rbx + 0xe8]
mov r9d, dword [rbx + 0x50]
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, 0x243e8b0e
mov dword [rdi], eax
add r9d, edx
rol r9d, 0x10
mov eax, r9d
imul r9d, r9d
xor eax, 0xefb12df8
mov dword [r14], eax
add r9d, ecx
rol r9d, 0x10
mov eax, r9d
imul r9d, r9d
xor eax, 0x6e73e4c2
mov dword [rbx + 0x190], eax
lea eax, [r8 + rcx]
mov dword [rbx + 0xe8], eax
mov rcx, rsi
add r9d, eax
rol r9d, 0x10
mov dword [rbx + 0x50], r9d
xor r9d, 0x493aca21
mov dword [rbx + 0x194], r9d
mov rdx, qword [rbx + 0x130]
cmp rcx, 4
jb 0x140001dc5
mov eax, dword [rdi + rcx - 4]
sub rcx, 4
mov dword [rdx + rcx + 0x70], eax
jmp 0x140001dd1
movzx eax, byte [rdi + rcx - 1]
dec rcx
mov byte [rdx + rcx + 0x70], al
test rcx, rcx
jne 0x140001db1
mov rbp, qword [rbx + 8]
mov edx, 0xd858174
mov rcx, rbp
mov r8d, 0x5d1f51c0
call fcn.140001060
mov qword [rbx + 0x148], rax
test rax, rax
je 0x14000166c
mov edx, 0x9110eb7a
mov r8d, 0x261a1515
mov rcx, rbp
call fcn.140001060
mov qword [rbx + 0x178], rax
test rax, rax
je 0x14000166c
mov r8d, dword [rbx + 0x158]
mov ecx, dword [rbx + 0xe8]
mov r9d, dword [rbx + 0x50]
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, 0x1c1029be
mov dword [rdi], eax
add r9d, edx
rol r9d, 0x10
mov eax, r9d
imul r9d, r9d
xor eax, 0xd6ed2cf3
mov dword [r14], eax
add r9d, ecx
rol r9d, 0x10
mov eax, r9d
imul r9d, r9d
xor eax, 0xdd098318
mov dword [rbx + 0x190], eax
lea eax, [r8 + rcx]
mov dword [rbx + 0xe8], eax
mov rcx, rsi
add r9d, eax
rol r9d, 0x10
mov dword [rbx + 0x50], r9d
xor r9d, 0x84f79846
mov dword [rbx + 0x194], r9d
mov rdx, qword [rbx + 0x130]
cmp rcx, 4
jb 0x140001ec5
mov eax, dword [rdi + rcx - 4]
sub rcx, 4
mov dword [rdx + rcx + 0x20], eax
jmp 0x140001ed1
movzx eax, byte [rdi + rcx - 1]
dec rcx
mov byte [rdx + rcx + 0x20], al
test rcx, rcx
jne 0x140001eb1
mov rcx, qword [rbx + 0x100]
mov edx, 0x881a0cf5
mov r8d, 0x90ca90f3
call fcn.140001060
mov qword [rbx + 0x28], rax
test rax, rax
je 0x14000166c
mov rax, qword [rbx + 0x178]
xor r9d, r9d
xor r8d, r8d
mov dword [rsp + 0x20], r13d
xor ecx, ecx
lea edx, [r9 + 1]
call rax
mov qword [rbx + 0x138], rax
test rax, rax
je 0x14000166c
mov r8d, dword [rbx + 0x158]
mov ecx, dword [rbx + 0xe8]
mov r9d, dword [rbx + 0x50]
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, 0x4fcde389
mov dword [rdi], eax
add r9d, edx
rol r9d, 0x10
mov eax, r9d
imul r9d, r9d
xor eax, 0x6f68b95
mov dword [r14], eax
add r9d, ecx
rol r9d, 0x10
mov eax, r9d
imul r9d, r9d
xor eax, 0xd2bf6305
mov dword [rbx + 0x190], eax
lea eax, [r8 + rcx]
mov dword [rbx + 0xe8], eax
mov rcx, rsi
add r9d, eax
rol r9d, 0x10
mov dword [rbx + 0x50], r9d
xor r9d, 0x57405b91
mov dword [rbx + 0x194], r9d
mov rdx, qword [rbx + 0x130]
cmp rcx, 4
jb 0x140001fc8
mov eax, dword [rdi + rcx - 4]
sub rcx, 4
mov dword [rdx + rcx], eax
jmp 0x140001fd3
movzx eax, byte [rdi + rcx - 1]
dec rcx
mov byte [rdx + rcx], al
test rcx, rcx
jne 0x140001fb5
mov rcx, qword [rbx + 0x100]
mov edx, 0x8acb7cf9
mov r8d, 0x29c73545
call fcn.140001060
mov qword [rbx + 0x140], rax
test rax, rax
je 0x14000166c
mov rcx, qword [rbx + 0x78]
mov edx, 0x84df93c1
mov r8d, 0x66816859
call fcn.140001060
mov qword [rbx + 0xa8], rax
test rax, rax
je 0x14000166c
mov r8d, dword [rbx + 0x158]
mov ecx, dword [rbx + 0xe8]
mov r9d, dword [rbx + 0x50]
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, 0xd3bbc987
mov dword [rdi], eax
add r9d, edx
rol r9d, 0x10
mov eax, r9d
imul r9d, r9d
xor eax, 0x7449a783
mov dword [r14], eax
add r9d, ecx
rol r9d, 0x10
mov eax, r9d
imul r9d, r9d
xor eax, 0x50f1edbc
mov dword [rbx + 0x190], eax
lea eax, [r8 + rcx]
mov dword [rbx + 0xe8], eax
mov rcx, rsi
add r9d, eax
rol r9d, 0x10
mov dword [rbx + 0x50], r9d
xor r9d, 0x45fe3331
mov dword [rbx + 0x194], r9d
mov rdx, qword [rbx + 0x130]
cmp rcx, 4
jb 0x1400020c8
mov eax, dword [rdi + rcx - 4]
sub rcx, 4
mov dword [rdx + rcx + 0x30], eax
jmp 0x1400020d4
movzx eax, byte [rdi + rcx - 1]
dec rcx
mov byte [rdx + rcx + 0x30], al
test rcx, rcx
jne 0x1400020b4
mov r8d, dword [rbx + 0x158]
mov r9d, dword [rbx + 0x50]
mov ecx, dword [rbx + 0xe8]
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, 0xfd1c3277
mov dword [rdi], eax
add r9d, edx
mov rdx, rdi
rol r9d, 0x10
mov eax, r9d
imul r9d, r9d
xor eax, 0xd80dd986
mov dword [r14], eax
add r9d, ecx
rol r9d, 0x10
mov eax, r9d
imul r9d, r9d
xor eax, 0x374c2ae3
mov dword [rbx + 0x190], eax
lea eax, [r8 + rcx]
mov dword [rbx + 0xe8], eax
mov r8d, 0x1bb
add r9d, eax
rol r9d, 0x10
mov dword [rbx + 0x50], r9d
xor r9d, 0x17d77c9a
mov dword [rbx + 0x194], r9d
xor r9d, r9d
mov rax, qword [rbx + 0x18]
mov rcx, qword [rbx + 0x138]
call rax
mov qword [rbx + 0x108], rax
mov r10, rax
test rax, rax
je 0x14000166c
mov r8d, dword [rbx + 0x158]
mov r9d, dword [rbx + 0x50]
mov edx, dword [rbx + 0xe8]
imul r9d, r9d
add edx, r8d
mov qword [rsp + 0x38], r13
mov dword [rsp + 0x30], 0x80800000
mov qword [rsp + 0x28], r13
lea ecx, [r8 + rdx]
mov qword [rsp + 0x20], r13
add r9d, edx
lea edx, [r8 + rcx]
rol r9d, 0x10
mov eax, r9d
imul r9d, r9d
xor eax, 0xb59f173
mov dword [rdi], eax
add r9d, ecx
mov rcx, r10
rol r9d, 0x10
mov eax, r9d
imul r9d, r9d
xor eax, 0xe1b725e9
mov dword [r14], eax
add r9d, edx
rol r9d, 0x10
mov eax, r9d
imul r9d, r9d
xor eax, 0x455f561a
mov dword [rbx + 0x190], eax
lea eax, [r8 + rdx]
mov dword [rbx + 0xe8], eax
mov r8, r14
mov rdx, rdi
add r9d, eax
rol r9d, 0x10
mov dword [rbx + 0x50], r9d
xor r9d, 0x93640f02
mov dword [rbx + 0x194], r9d
xor r9d, r9d
mov rax, qword [rbx + 0x148]
call rax
mov qword [rbx + 0x170], rax
test rax, rax
je 0x14000166c
mov rax, qword [rbx + 0x110]
lea rdx, [rsp + 0x40]
mov ecx, 0x104
call rax
test eax, eax
je 0x14000166c
mov rax, qword [rbx + 0x28]
lea rcx, [rsp + 0x40]
call rax
test eax, eax
je 0x14000166c
mov rcx, qword [rbx + 8]
mov edx, 0x7312e15d
mov r8d, 0x73bf9e68
call fcn.140001060
mov qword [rbx + 0xf8], rax
test rax, rax
je 0x14000166c
mov r8d, dword [rbx + 0x158]
mov ecx, dword [rbx + 0xe8]
mov r9d, dword [rbx + 0x50]
add ecx, r8d
imul r9d, r9d
lea edx, [r8 + rcx]
add r9d, ecx
lea ecx, [rdx + r8]
rol r9d, 0x10
mov eax, r9d
imul r9d, r9d
xor eax, 0xbceac002
mov dword [rdi], eax
add r9d, edx
rol r9d, 0x10
mov eax, r9d
imul r9d, r9d
xor eax, 0x2edf5cf3
mov dword [r14], eax
add r9d, ecx
rol r9d, 0x10
mov eax, r9d
imul r9d, r9d
xor eax, 0xa04632ac
mov dword [rbx + 0x190], eax
lea eax, [rcx + r8]
mov dword [rbx + 0xe8], eax
add r9d, eax
rol r9d, 0x10
mov dword [rbx + 0x50], r9d
xor r9d, 0x95d0adfc
mov dword [rbx + 0x194], r9d
mov rcx, qword [rbx + 0x130]
cmp rsi, 4
jb 0x14000235a
mov eax, dword [rdi + rsi - 4]
sub rsi, 4
mov dword [rcx + rsi + 0x50], eax
jmp 0x140002366
movzx eax, byte [rdi + rsi - 1]
dec rsi
mov byte [rcx + rsi + 0x50], al
test rsi, rsi
jne 0x140002346
lea rdx, [rsp + 0x250]
mov rcx, rbx
call fcn.1400013b0
mov rcx, qword [rbx + 0x58]
lea rax, [rcx - 1]
cmp rax, 0xfffffffffffffffd
ja 0x14000166c
mov rax, qword [rbx + 0x48]
lea r9, [rbx + 0x198]
mov rdx, qword [rbx + 0x130]
lea r8d, [rsi + 0x71]
mov qword [rsp + 0x20], r13
call rax
test eax, eax
je 0x14000166c
mov rcx, qword [rbx + 0x58]
call qword [rbx + 0x1a8]
mov rax, qword [rbx + 0xa8]
lea r8, [rsp + 0x250]
xor r9d, r9d
mov dword [rsp + 0x28], 1
xor edx, edx
mov qword [rsp + 0x20], r13
xor ecx, ecx
call rax
cmp rax, 0x20
jb 0x14000166c
mov rax, qword [rbx + 0xf8]
xor r9d, r9d
mov rcx, qword [rbx + 0x170]
xor r8d, r8d
xor edx, edx
mov dword [rsp + 0x20], r13d
call rax
test eax, eax
je 0x14000166c
mov rax, qword [rbx + 0xf0]
lea r9, [rbx + 0x118]
mov rcx, qword [rbx + 0x170]
lea r8, [rbx + 0x40]
mov edx, 0x20000005
mov qword [rsp + 0x20], r15
call rax
test eax, eax
je 0x14000166c
mov rax, qword [rbx + 0x88]
lea r9d, [rsi + 4]
mov edx, dword [rbx + 0x40]
xor ecx, ecx
mov r8d, 0x3000
call rax
mov qword [rbx + 0xa0], rax
test rax, rax
je 0x14000166c
mov r10, qword [rbx + 0x168]
lea r9, [rbx + 0x150]
mov r8d, dword [rbx + 0x40]
mov rdx, rax
mov rcx, qword [rbx + 0x170]
call r10
test eax, eax
je 0x14000166c
mov eax, dword [rbx + 0x40]
cmp dword [rbx + 0x150], eax
jne 0x14000166c
mov rcx, qword [rbx + 0x138]
call qword [rbx + 0x1c0]
mov rax, qword [rbx + 0xa0]
mov ecx, 0x5a4d
mov qword [rbx + 0xe0], rax
cmp word [rax], cx
jne 0x14000166c
mov rcx, qword [rbx + 0x170]
call qword [rbx + 0x1c0]
mov rax, qword [rbx + 0xe0]
movsxd rdx, dword [rax + 0x3c]
add rdx, qword [rbx + 0xa0]
mov qword [rbx + 0x1a0], 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]
lea r9d, [rsi + 0x40]
mov rax, qword [rbx + 0x88]
add rcx, 0x18
add rcx, rdx
mov r8d, 0x3000
mov qword [rbx + 0xd8], rcx
xor ecx, ecx
mov edx, dword [rdx + 0x50]
call rax
mov qword [rbx + 0x180], rax
mov r8, rax
test rax, rax
je 0x14000166c
mov rcx, qword [rbx + 0x1a0]
mov edx, dword [rcx + 0x54]
mov rcx, qword [rbx + 0xa0]
test rdx, rdx
je 0x14000258c
cmp rdx, 4
jb 0x14000257b
mov eax, dword [rcx + rdx - 4]
sub rdx, 4
mov dword [r8 + rdx], eax
jmp 0x140002587
movzx eax, byte [rcx + rdx - 1]
dec rdx
mov byte [r8 + rdx], al
test rdx, rdx
jne 0x140002567
mov rcx, rbx
call fcn.1400011a0
mov rcx, rbx
call fcn.140001300
mov rcx, rbx
call fcn.140001220
mov rcx, qword [rbx + 0x108]
call qword [rbx + 0x1c0]
mov rax, qword [rbx + 0x1a0]
mov r8d, 0x2000
mov rcx, qword [rbx + 0x180]
mov r9d, dword [rax + 0x28]
add r9, rcx
test word [rax + 0x16], r8w
je 0x140002604
xor r8d, r8d
lea edx, [r8 + 1]
call r9
mov rcx, qword [rbx + 0x180]
mov edx, 0x939ef979
mov r8d, 0x6ed4d800
call fcn.140001060
test rax, rax
je 0x14000166c
call rax
jmp 0x14000166c
call r9
jmp 0x14000166c