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

Disassembly:
mov r11, rsp
push rbx
push rbp
push rdi
push r14
push r15
sub rsp, 0x460
mov dword [rcx + 0x130], 4
mov rbx, rcx
mov rax, qword gs:[0x30]
mov qword [rcx + 0xe8], rax
test rax, rax
je 0x140001674
mov rcx, qword [rax + 0x60]
mov qword [rbx + 0xa0], rcx
test rcx, rcx
je 0x140001674
mov qword [r11 + 8], rsi
mov qword [r11 + 0x10], r12
lea r12, [rbx + 0x38]
mov qword [r11 + 0x18], r13
xor r13d, r13d
mov dword [r12], r13d
mov rsi, qword [rcx + 0x18]
mov qword [rbx + 0x128], rsi
test rsi, rsi
je 0x14000165c
add rsi, 0x20
mov qword [rbx + 0x178], rsi
je 0x14000165c
mov edx, 0x92812291
mov rcx, rbx
call section..text
or eax, 1
mov edx, 0x652ca6cc
mov rcx, rbx
mov dword [rbx + 0x110], eax
call section..text
mov dword [rbx + 0x158], eax
mov r11, qword [rsi]
cmp r11, rsi
je 0x140001655
nop dword [rax + rax]
mov r10, qword [r11 + 0x50]
mov eax, 0x51f1341b
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 0x140001646
inc r9
add r10, 2
cmp r9, 0xffffffffffffffff
jne 0x140001610
cmp eax, 0xc04dc009
je 0x140001685
mov r11, qword [r11]
cmp r11, rsi
jne 0x140001600
mov qword [rbx + 0xa8], r13
mov r12, qword [rsp + 0x498]
mov rsi, qword [rsp + 0x490]
mov r13, qword [rsp + 0x4a0]
xor eax, eax
add rsp, 0x460
pop r15
pop r14
pop rdi
pop rbp
pop rbx
ret
mov rdi, qword [r11 + 0x20]
mov qword [rbx + 0xa8], rdi
test rdi, rdi
je 0x14000165c
mov edx, 0x161742cb
mov r8d, 0x1cc800
mov rcx, rdi
call fcn.140001060
mov qword [rbx + 0xd0], rax
mov rbp, rax
test rax, rax
je 0x14000165c
mov edx, 0xcaddc6e0
mov r8d, 0xcbe4492c
mov rcx, rdi
call fcn.140001060
mov qword [rbx + 0x40], rax
test rax, rax
je 0x14000165c
mov edx, 0x6bd2ca63
mov r8d, 0x2268070f
mov rcx, rdi
call fcn.140001060
mov qword [rbx + 0x80], rax
test rax, rax
je 0x14000165c
mov edx, 0xf234cbd3
mov r8d, 0x7a9a0458
mov rcx, rdi
call fcn.140001060
mov qword [rbx + 0x68], rax
test rax, rax
je 0x14000165c
mov edx, 0x2514a879
mov r8d, 0xcc557004
mov rcx, rdi
call fcn.140001060
mov qword [rbx + 0x148], rax
test rax, rax
je 0x14000165c
mov edx, 0x61584141
mov r8d, 0x5a010cbf
mov rcx, rdi
call fcn.140001060
mov qword [rbx + 0x58], rax
test rax, rax
je 0x14000165c
mov edx, 0x8a6b68bc
mov r8d, 0xf435cdc
mov rcx, rdi
call fcn.140001060
mov qword [rbx + 0x198], rax
test rax, rax
je 0x14000165c
mov edx, 0x1a935cef
mov r8d, 0x4f8800b5
mov rcx, rdi
call fcn.140001060
mov qword [rbx + 0x30], rax
test rax, rax
je 0x14000165c
mov edx, 0x9b38dc48
mov r8d, 0x95fb9592
mov rcx, rdi
call fcn.140001060
mov qword [rbx + 0x188], rax
test rax, rax
je 0x14000165c
mov edx, 0xf20602da
mov r8d, 0x6fd44038
mov rcx, rdi
call fcn.140001060
mov qword [rbx + 0x28], rax
test rax, rax
je 0x14000165c
mov edx, 0x32e845b2
mov r8d, 0xf7b7264b
mov rcx, rdi
call fcn.140001060
mov qword [rbx + 0x150], rax
test rax, rax
je 0x14000165c
mov rax, qword [rsi]
mov r8d, 0x4607a6ef
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 0x140001853
inc r9
add r10, 2
cmp r9, 0xc
jne 0x140001820
mov edx, dword [rbx + 0x110]
mov ecx, dword [rbx + 0x158]
imul r8d, r8d
add ecx, edx
add r8d, ecx
add ecx, edx
rol r8d, 0x10
mov eax, r8d
imul r8d, r8d
xor eax, 0xbf590174
mov dword [rbx + 0x48], eax
add r8d, ecx
add ecx, edx
rol r8d, 0x10
mov eax, r8d
imul r8d, r8d
xor eax, 0x4529219f
mov dword [rbx + 0x4c], eax
add r8d, ecx
rol r8d, 0x10
mov eax, r8d
imul r8d, r8d
xor eax, 0x4d9292c4
mov dword [rbx + 0x50], eax
lea eax, [rcx + rdx]
mov dword [rbx + 0x158], eax
mov rcx, r13
add r8d, eax
rol r8d, 0x10
mov dword [rbx + 0x18], r8d
xor r8d, 0x161e3c82
mov dword [rbx + 0x54], r8d
nop dword [rax]
movzx eax, byte [rcx + rbx + 0x48]
test al, al
je 0x1400018f1
sub al, 0x30
cmp al, 0x4a
ja 0x14000165c
inc rcx
cmp rcx, 0x10
jl 0x1400018d0
jmp 0x14000165c
lea rcx, [rbx + 0x48]
call rbp
mov qword [rbx + 0x138], rax
test rax, rax
je 0x14000165c
mov r8d, dword [rbx + 0x110]
mov ecx, dword [rbx + 0x158]
mov r9d, dword [rbx + 0x18]
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, 0xc30a2f34
mov dword [rbx + 0x48], eax
add r9d, edx
rol r9d, 0x10
mov eax, r9d
imul r9d, r9d
xor eax, 0x804bf2cd
mov dword [rbx + 0x4c], eax
add r9d, ecx
rol r9d, 0x10
mov eax, r9d
imul r9d, r9d
xor eax, 0xbf668291
mov dword [rbx + 0x50], eax
lea eax, [r8 + rcx]
mov dword [rbx + 0x158], eax
lea rcx, [rbx + 0x48]
add r9d, eax
rol r9d, 0x10
mov dword [rbx + 0x18], r9d
xor r9d, 0xbba3abc3
mov dword [rbx + 0x54], r9d
mov rax, qword [rbx + 0xd0]
call rax
mov qword [rbx + 0xb8], rax
test rax, rax
je 0x14000165c
mov rax, qword [rbx + 0x40]
mov edx, 0x71
xor ecx, ecx
mov r8d, 0x3000
lea r9d, [rdx - 0x6d]
call rax
mov qword [rbx + 0x98], rax
mov r10, rax
test rax, rax
je 0x14000165c
mov r8d, dword [rbx + 0x110]
mov esi, 0x10
mov r9d, dword [rbx + 0x18]
mov edx, dword [rbx + 0x158]
imul r9d, r9d
add edx, r8d
lea ecx, [r8 + rdx]
add r9d, edx
lea edx, [r8 + rcx]
rol r9d, 0x10
mov eax, r9d
imul r9d, r9d
xor eax, 0xc96828d5
mov dword [rbx + 0x48], eax
add r9d, ecx
mov ecx, esi
rol r9d, 0x10
mov eax, r9d
imul r9d, r9d
xor eax, 0x4b4c7ad1
mov dword [rbx + 0x4c], eax
add r9d, edx
rol r9d, 0x10
mov eax, r9d
imul r9d, r9d
xor eax, 0xac3ae9c1
mov dword [rbx + 0x50], eax
lea eax, [r8 + rdx]
mov dword [rbx + 0x158], eax
add r9d, eax
rol r9d, 0x10
mov dword [rbx + 0x18], r9d
xor r9d, 0x3e777f57
mov dword [rbx + 0x54], r9d
nop dword [rax]
cmp rcx, 4
jb 0x140001a75
mov eax, dword [rbx + rcx + 0x44]
sub rcx, 4
mov dword [r10 + rcx + 0x70], eax
jmp 0x140001a82
movzx eax, byte [rbx + rcx + 0x47]
dec rcx
mov byte [r10 + rcx + 0x70], al
test rcx, rcx
jne 0x140001a60
mov rcx, qword [rbx + 0x138]
mov edx, 0x474ce478
mov r8d, 0x5d1b3c5d
call fcn.140001060
mov qword [rbx + 0x1b0], rax
test rax, rax
je 0x14000165c
mov r8d, dword [rbx + 0x110]
mov ecx, dword [rbx + 0x158]
mov r9d, dword [rbx + 0x18]
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, 0x1ecc4c0a
mov dword [rbx + 0x48], eax
add r9d, edx
rol r9d, 0x10
mov eax, r9d
imul r9d, r9d
xor eax, 0x6dde2d50
mov dword [rbx + 0x4c], eax
add r9d, ecx
rol r9d, 0x10
mov eax, r9d
imul r9d, r9d
xor eax, 0x64e44304
mov dword [rbx + 0x50], eax
lea eax, [r8 + rcx]
mov dword [rbx + 0x158], eax
mov rcx, rsi
add r9d, eax
rol r9d, 0x10
mov dword [rbx + 0x18], r9d
xor r9d, 0xf0bd03fc
mov dword [rbx + 0x54], r9d
mov rdx, qword [rbx + 0x98]
nop word [rax + rax]
cmp rcx, 4
jb 0x140001b54
mov eax, dword [rbx + rcx + 0x44]
sub rcx, 4
mov dword [rdx + rcx + 0x10], eax
jmp 0x140001b60
movzx eax, byte [rbx + rcx + 0x47]
dec rcx
mov byte [rdx + rcx + 0x10], al
test rcx, rcx
jne 0x140001b40
mov r8d, dword [rbx + 0x110]
mov ecx, dword [rbx + 0x158]
mov r9d, dword [rbx + 0x18]
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, 0x18415b89
mov dword [rbx + 0x48], eax
add r9d, edx
rol r9d, 0x10
mov eax, r9d
imul r9d, r9d
xor eax, 0xc5f8f93c
mov dword [rbx + 0x4c], eax
add r9d, ecx
rol r9d, 0x10
mov eax, r9d
imul r9d, r9d
xor eax, 0x70b8681d
mov dword [rbx + 0x50], eax
lea eax, [rcx + r8]
mov dword [rbx + 0x158], eax
mov rcx, rsi
add r9d, eax
rol r9d, 0x10
mov dword [rbx + 0x18], r9d
xor r9d, 0x8fc6bea3
mov dword [rbx + 0x54], r9d
mov rdx, qword [rbx + 0x98]
cmp rcx, 4
jb 0x140001c05
mov eax, dword [rbx + rcx + 0x44]
sub rcx, 4
mov dword [rdx + rcx + 0x20], eax
jmp 0x140001c11
movzx eax, byte [rbx + rcx + 0x47]
dec rcx
mov byte [rdx + rcx + 0x20], al
test rcx, rcx
jne 0x140001bf1
mov rcx, qword [rbx + 0x138]
mov edx, 0x4611532
mov r8d, 0x877aa116
call fcn.140001060
mov qword [rbx + 0x88], rax
test rax, rax
je 0x14000165c
mov r8d, dword [rbx + 0x110]
mov ecx, dword [rbx + 0x158]
mov r9d, dword [rbx + 0x18]
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, 0xb99490b9
mov dword [rbx + 0x48], eax
add r9d, edx
rol r9d, 0x10
mov eax, r9d
imul r9d, r9d
xor eax, 0x81f73ea3
mov dword [rbx + 0x4c], eax
add r9d, ecx
rol r9d, 0x10
mov eax, r9d
imul r9d, r9d
xor eax, 0x5be25330
mov dword [rbx + 0x50], eax
lea eax, [r8 + rcx]
mov dword [rbx + 0x158], eax
mov rcx, rsi
add r9d, eax
rol r9d, 0x10
mov dword [rbx + 0x18], r9d
xor r9d, 0x5002a967
mov dword [rbx + 0x54], r9d
mov rdx, qword [rbx + 0x98]
nop dword [rax]
cmp rcx, 4
jb 0x140001ce4
mov eax, dword [rbx + rcx + 0x44]
sub rcx, 4
mov dword [rdx + rcx + 0x60], eax
jmp 0x140001cf0
movzx eax, byte [rbx + rcx + 0x47]
dec rcx
mov byte [rdx + rcx + 0x60], al
test rcx, rcx
jne 0x140001cd0
mov rax, qword [rbx + 0x148]
lea rdx, [rsp + 0x40]
mov ecx, 0x104
call rax
test eax, eax
je 0x14000165c
mov rax, qword [rbx + 0x68]
lea rcx, [rsp + 0x40]
call rax
test eax, eax
je 0x14000165c
mov rcx, qword [rbx + 0xa8]
mov edx, 0x32bda622
mov r8d, 0xf07577c
call fcn.140001060
mov qword [rbx + 0x118], rax
test rax, rax
je 0x14000165c
mov rbp, qword [rbx + 0x138]
mov edx, 0xf687a033
mov rcx, rbp
mov r8d, 0x623bbf5a
call fcn.140001060
mov qword [rbx + 0x160], rax
test rax, rax
je 0x14000165c
mov edx, 0xb540c177
mov r8d, 0x298abea3
mov rcx, rbp
call fcn.140001060
mov qword [rbx + 0x120], rax
test rax, rax
je 0x14000165c
mov r8d, dword [rbx + 0x110]
mov ecx, dword [rbx + 0x158]
mov r9d, dword [rbx + 0x18]
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, 0xf295fde
mov dword [rbx + 0x48], eax
add r9d, edx
rol r9d, 0x10
mov eax, r9d
imul r9d, r9d
xor eax, 0xbf785dae
mov dword [rbx + 0x4c], eax
add r9d, ecx
rol r9d, 0x10
mov eax, r9d
imul r9d, r9d
xor eax, 0x1e684c8b
mov dword [rbx + 0x50], eax
lea eax, [r8 + rcx]
mov dword [rbx + 0x158], eax
mov rcx, rsi
add r9d, eax
rol r9d, 0x10
mov dword [rbx + 0x18], r9d
xor r9d, 0x5ff7ce29
mov dword [rbx + 0x54], r9d
mov rdx, qword [rbx + 0x98]
cmp rcx, 4
jb 0x140001e37
mov eax, dword [rbx + rcx + 0x44]
sub rcx, 4
mov dword [rdx + rcx + 0x30], eax
jmp 0x140001e43
movzx eax, byte [rbx + rcx + 0x47]
dec rcx
mov byte [rdx + rcx + 0x30], al
test rcx, rcx
jne 0x140001e23
mov rcx, qword [rbx + 0xa8]
mov edx, 0x21ae1d98
mov r8d, 0x295be60
call fcn.140001060
mov qword [rbx + 0x90], rax
test rax, rax
je 0x14000165c
mov rbp, qword [rbx + 0x138]
mov edx, 0xad49d6cf
mov rcx, rbp
mov r8d, 0xae021476
call fcn.140001060
mov qword [rbx + 0x108], rax
test rax, rax
je 0x14000165c
mov edx, 0x23c7d4b5
mov r8d, 0xb7a4c9ab
mov rcx, rbp
call fcn.140001060
mov qword [rbx + 0x10], rax
test rax, rax
je 0x14000165c
lea rdx, [rsp + 0x250]
mov rcx, rbx
call fcn.1400013a0
mov rax, qword [rbx + 0x100]
dec rax
cmp rax, 0xfffffffffffffffd
ja 0x14000165c
mov r8d, dword [rbx + 0x110]
mov ecx, dword [rbx + 0x158]
mov r9d, dword [rbx + 0x18]
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, 0xff004bcf
mov dword [rbx + 0x48], eax
add r9d, edx
rol r9d, 0x10
mov eax, r9d
imul r9d, r9d
xor eax, 0x402a9eb2
mov dword [rbx + 0x4c], eax
add r9d, ecx
rol r9d, 0x10
mov eax, r9d
imul r9d, r9d
xor eax, 0x64b2845
mov dword [rbx + 0x50], eax
lea eax, [r8 + rcx]
mov dword [rbx + 0x158], eax
mov rcx, rsi
add r9d, eax
rol r9d, 0x10
mov dword [rbx + 0x18], r9d
xor r9d, 0x231559c0
mov dword [rbx + 0x54], r9d
mov rdx, qword [rbx + 0x98]
nop dword [rax]
cmp rcx, 4
jb 0x140001f84
mov eax, dword [rbx + rcx + 0x44]
sub rcx, 4
mov dword [rdx + rcx + 0x50], eax
jmp 0x140001f90
movzx eax, byte [rbx + rcx + 0x47]
dec rcx
mov byte [rdx + rcx + 0x50], al
test rcx, rcx
jne 0x140001f70
mov r8d, dword [rbx + 0x110]
mov ecx, dword [rbx + 0x158]
mov r9d, dword [rbx + 0x18]
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, 0xdc2d7579
mov dword [rbx + 0x48], eax
add r9d, edx
rol r9d, 0x10
mov eax, r9d
imul r9d, r9d
xor eax, 0x4be253c4
mov dword [rbx + 0x4c], eax
add r9d, ecx
rol r9d, 0x10
mov eax, r9d
imul r9d, r9d
xor eax, 0xbe57010
mov dword [rbx + 0x50], eax
lea eax, [r8 + rcx]
mov dword [rbx + 0x158], eax
mov rcx, rsi
add r9d, eax
rol r9d, 0x10
mov dword [rbx + 0x18], r9d
xor r9d, 0xaf02fee
mov dword [rbx + 0x54], r9d
mov rdx, qword [rbx + 0x98]
cmp rcx, 4
jb 0x140002035
mov eax, dword [rbx + rcx + 0x44]
sub rcx, 4
mov dword [rdx + rcx + 0x40], eax
jmp 0x140002041
movzx eax, byte [rbx + rcx + 0x47]
dec rcx
mov byte [rdx + rcx + 0x40], al
test rcx, rcx
jne 0x140002021
mov rcx, qword [rbx + 0x138]
mov edx, 0x939c7060
mov r8d, 0x58fe8bdd
call fcn.140001060
mov qword [rbx + 0xb0], rax
test rax, rax
je 0x14000165c
mov rcx, qword [rbx + 0xb8]
mov edx, 0x4e83d8cd
mov r8d, 0x5c3bb369
call fcn.140001060
mov qword [rbx + 0x168], rax
test rax, rax
je 0x14000165c
mov rcx, qword [rbx + 0xa8]
mov edx, 0x55fdba3b
mov r8d, 0x6e613d27
call fcn.140001060
mov qword [rbx + 0x140], rax
test rax, rax
je 0x14000165c
mov rax, qword [rbx + 0x1b0]
xor r9d, r9d
xor r8d, r8d
mov dword [rsp + 0x20], r13d
xor ecx, ecx
lea edx, [r9 + 1]
call rax
mov qword [rbx + 0x70], rax
test rax, rax
je 0x14000165c
mov r8d, dword [rbx + 0x110]
mov ecx, dword [rbx + 0x158]
mov r9d, dword [rbx + 0x18]
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, 0x965febea
mov dword [rbx + 0x48], eax
add r9d, edx
rol r9d, 0x10
mov eax, r9d
imul r9d, r9d
xor eax, 0xf0e7bb17
mov dword [rbx + 0x4c], eax
add r9d, ecx
rol r9d, 0x10
mov eax, r9d
imul r9d, r9d
xor eax, 0xf8dda839
mov dword [rbx + 0x50], eax
lea eax, [r8 + rcx]
mov dword [rbx + 0x158], eax
add r9d, eax
rol r9d, 0x10
mov dword [rbx + 0x18], r9d
xor r9d, 0x524cdfc
mov dword [rbx + 0x54], r9d
mov rcx, qword [rbx + 0x98]
nop dword [rax + rax]
cmp rsi, 4
jb 0x140002183
mov eax, dword [rbx + rsi + 0x44]
sub rsi, 4
mov dword [rcx + rsi], eax
jmp 0x14000218e
movzx eax, byte [rbx + rsi + 0x47]
dec rsi
mov byte [rcx + rsi], al
test rsi, rsi
jne 0x140002170
mov rax, qword [rbx + 0x140]
lea r8d, [rsi + 0x71]
mov rdx, qword [rbx + 0x98]
mov r9, rbx
mov rcx, qword [rbx + 0x100]
mov qword [rsp + 0x20], r13
call rax
test eax, eax
je 0x14000165c
mov rcx, qword [rbx + 0x100]
call qword [rbx + 0x188]
mov r8d, dword [rbx + 0x110]
mov r9d, dword [rbx + 0x18]
mov ecx, dword [rbx + 0x158]
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, 0xc16dcf26
mov dword [rbx + 0x48], eax
add r9d, edx
lea rdx, [rbx + 0x48]
rol r9d, 0x10
mov eax, r9d
imul r9d, r9d
xor eax, 0xb7108d0b
mov dword [rbx + 0x4c], eax
add r9d, ecx
rol r9d, 0x10
mov eax, r9d
imul r9d, r9d
xor eax, 0x4309dc61
mov dword [rbx + 0x50], eax
lea eax, [r8 + rcx]
mov dword [rbx + 0x158], eax
mov r8d, 0x1bb
add r9d, eax
rol r9d, 0x10
mov dword [rbx + 0x18], r9d
xor r9d, 0x376f72a9
mov dword [rbx + 0x54], r9d
xor r9d, r9d
mov rax, qword [rbx + 0x108]
mov rcx, qword [rbx + 0x70]
call rax
mov qword [rbx + 8], rax
test rax, rax
je 0x14000165c
mov rax, qword [rbx + 0x168]
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 0x14000165c
mov r8d, dword [rbx + 0x110]
mov r9d, dword [rbx + 0x18]
mov ecx, dword [rbx + 0x158]
imul r9d, r9d
add ecx, r8d
mov qword [rsp + 0x38], r13
mov dword [rsp + 0x30], 0x80800000
mov qword [rsp + 0x28], r13
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, 0x87d0b3e6
mov dword [rbx + 0x48], eax
add r9d, edx
lea rdx, [rbx + 0x48]
rol r9d, 0x10
mov eax, r9d
imul r9d, r9d
xor eax, 0x9df6d445
mov dword [rbx + 0x4c], eax
add r9d, ecx
rol r9d, 0x10
mov eax, r9d
imul r9d, r9d
xor eax, 0xa344acf
mov dword [rbx + 0x50], eax
lea eax, [rcx + r8]
mov dword [rbx + 0x158], eax
lea r8, [rbx + 0x4c]
add r9d, eax
mov rax, qword [rbx + 0x10]
rol r9d, 0x10
mov dword [rbx + 0x18], r9d
xor r9d, 0xfccd1ad5
mov dword [rbx + 0x54], r9d
xor r9d, r9d
mov rcx, qword [rbx + 8]
call rax
mov qword [rbx + 0x20], rax
test rax, rax
je 0x14000165c
mov r10, qword [rbx + 0x120]
xor r9d, r9d
xor r8d, r8d
mov dword [rsp + 0x20], r13d
xor edx, edx
mov rcx, rax
call r10
test eax, eax
je 0x14000165c
mov rax, qword [rbx + 0x160]
lea r9, [rbx + 0x130]
mov rcx, qword [rbx + 0x20]
lea r8, [rbx + 0xc0]
mov edx, 0x20000005
mov qword [rsp + 0x20], r12
call rax
test eax, eax
je 0x14000165c
mov rax, qword [rbx + 0x40]
lea r9d, [rsi + 4]
mov edx, dword [rbx + 0xc0]
xor ecx, ecx
mov r8d, 0x3000
call rax
mov qword [rbx + 0x170], rax
test rax, rax
je 0x14000165c
mov r10, qword [rbx + 0x88]
lea r9, [rbx + 0xf0]
mov r8d, dword [rbx + 0xc0]
mov rdx, rax
mov rcx, qword [rbx + 0x20]
call r10
test eax, eax
je 0x14000165c
mov eax, dword [rbx + 0xc0]
cmp dword [rbx + 0xf0], eax
jne 0x14000165c
mov rcx, qword [rbx + 0x70]
call qword [rbx + 0xb0]
mov rcx, qword [rbx + 8]
call qword [rbx + 0xb0]
mov rcx, qword [rbx + 0x170]
mov eax, 0x5a4d
mov qword [rbx + 0x190], rcx
cmp word [rcx], ax
jne 0x14000165c
movsxd rax, dword [rcx + 0x3c]
add rcx, rax
mov qword [rbx + 0x78], rcx
cmp dword [rcx], 0x4550
jne 0x14000165c
mov eax, 0x8664
cmp word [rcx + 4], ax
jne 0x14000165c
mov eax, 0x20b
cmp word [rcx + 0x18], ax
jne 0x14000165c
mov rcx, qword [rbx + 0x20]
call qword [rbx + 0xb0]
mov rdx, qword [rbx + 0x78]
lea r9d, [rsi + 0x40]
mov r8d, 0x3000
movzx eax, word [rdx + 0x14]
lea rcx, [rdx + 0x18]
add rcx, rax
mov rax, qword [rbx + 0x40]
mov qword [rbx + 0x60], rcx
xor ecx, ecx
mov edx, dword [rdx + 0x50]
call rax
mov qword [rbx + 0x1a8], rax
mov r8, rax
test rax, rax
je 0x14000165c
mov rcx, qword [rbx + 0x78]
mov edx, dword [rcx + 0x54]
mov rcx, qword [rbx + 0x170]
test rdx, rdx
je 0x140002507
cmp rdx, 4
jb 0x1400024f6
mov eax, dword [rcx + rdx - 4]
sub rdx, 4
mov dword [r8 + rdx], eax
jmp 0x140002502
movzx eax, byte [rcx + rdx - 1]
dec rdx
mov byte [r8 + rdx], al
test rdx, rdx
jne 0x1400024e2
mov rcx, rbx
call fcn.1400011a0
mov rcx, rbx
call fcn.140001300
mov rcx, rbx
call fcn.140001220
mov rax, qword [rbx + 0x78]
mov r8d, 0x2000
mov rcx, qword [rbx + 0x1a8]
mov r9d, dword [rax + 0x28]
add r9, rcx
test word [rax + 0x16], r8w
je 0x14000256f
xor r8d, r8d
lea edx, [r8 + 1]
call r9
mov rcx, qword [rbx + 0x1a8]
mov edx, 0xb03b7870
mov r8d, 0x4749ba15
call fcn.140001060
test rax, rax
je 0x14000165c
call rax
jmp 0x14000165c
call r9
jmp 0x14000165c