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

Disassembly:
mov r11, rsp
push rbx
push rbp
push rsi
push r15
sub rsp, 0x468
mov rax, qword gs:[0x30]
mov rbx, rcx
mov qword [rcx + 0x40], rax
test rax, rax
je 0x14000169c
mov rcx, qword [rax + 0x60]
mov qword [rbx + 0x108], rcx
test rcx, rcx
je 0x14000169c
mov qword [r11 + 8], rdi
mov rdi, qword [rcx + 0x18]
mov qword [rbx + 0x1c0], rdi
test rdi, rdi
je 0x140001694
add rdi, 0x20
mov qword [r11 + 0x10], r12
mov qword [rbx + 0x1a0], rdi
mov dword [rbx + 0x1b8], 4
je 0x14000168c
mov qword [r11 + 0x18], r13
mov edx, 0xdb81a6b2
mov rcx, rbx
mov qword [r11 - 0x28], r14
call section..text
or eax, 1
mov edx, 0xd325586e
mov rcx, rbx
mov dword [rbx + 0x70], eax
call section..text
mov edx, 0x7ba0fa45
mov dword [rbx + 0x68], eax
mov rcx, rbx
call section..text
xor r14d, r14d
mov dword [rbx + 0x138], eax
lea r13, [rbx + 0xf0]
mov dword [r13], r14d
mov r11, qword [rdi]
cmp r11, rdi
je 0x140001675
nop word [rax + rax]
mov r10, qword [r11 + 0x50]
mov eax, 0x7f6a516f
mov r9, r14
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 0x140001666
inc r9
add r10, 2
cmp r9, 0xffffffffffffffff
jne 0x140001630
cmp eax, 0xcae71e21
je 0x1400016ab
mov r11, qword [r11]
cmp r11, rdi
jne 0x140001620
mov qword [rbx + 0x128], r14
mov r13, qword [rsp + 0x4a0]
mov r14, qword [rsp + 0x460]
mov r12, qword [rsp + 0x498]
mov rdi, qword [rsp + 0x490]
xor eax, eax
add rsp, 0x468
pop r15
pop rsi
pop rbp
pop rbx
ret
mov rdi, qword [r11 + 0x20]
mov qword [rbx + 0x128], rdi
test rdi, rdi
je 0x14000167c
mov edx, 0x1ed2eb52
mov r8d, 0x6aa9436e
mov rcx, rdi
call fcn.140001060
mov qword [rbx + 0xd8], rax
mov rsi, rax
test rax, rax
je 0x14000167c
mov edx, 0x65d20249
mov r8d, 0x342ca836
mov rcx, rdi
call fcn.140001060
mov qword [rbx + 0x58], rax
test rax, rax
je 0x14000167c
mov edx, dword [rbx + 0x70]
lea rdi, [rbx + 0x164]
mov ecx, dword [rbx + 0x138]
lea r15, [rbx + 0x168]
mov r8d, dword [rbx + 0x68]
add ecx, edx
imul r8d, r8d
add r8d, ecx
add ecx, edx
rol r8d, 0x10
mov eax, r8d
imul r8d, r8d
xor eax, 0xc347eadc
mov dword [rdi], eax
add r8d, ecx
add ecx, edx
rol r8d, 0x10
mov eax, r8d
imul r8d, r8d
xor eax, 0xfce81e0d
mov dword [r15], eax
add r8d, ecx
rol r8d, 0x10
mov eax, r8d
imul r8d, r8d
xor eax, 0x52a14372
mov dword [rbx + 0x16c], eax
lea eax, [rcx + rdx]
mov dword [rbx + 0x138], eax
mov rcx, r14
add r8d, eax
rol r8d, 0x10
mov dword [rbx + 0x68], r8d
xor r8d, 0x3d4bf15f
mov dword [rbx + 0x170], r8d
movzx eax, byte [rcx + rdi]
test al, al
je 0x1400017a7
sub al, 0x30
cmp al, 0x4a
ja 0x14000167c
inc rcx
cmp rcx, 0x10
jl 0x140001787
jmp 0x14000167c
mov rcx, rdi
call rsi
mov qword [rbx + 0x20], rax
test rax, rax
je 0x14000167c
mov r8d, dword [rbx + 0x70]
mov ecx, dword [rbx + 0x138]
mov r9d, dword [rbx + 0x68]
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, 0xc301c800
mov dword [rdi], eax
add r9d, edx
rol r9d, 0x10
mov eax, r9d
imul r9d, r9d
xor eax, 0xd952ec2b
mov dword [r15], eax
add r9d, ecx
rol r9d, 0x10
mov eax, r9d
imul r9d, r9d
xor eax, 0x2b151e57
mov dword [rbx + 0x16c], eax
lea eax, [rcx + r8]
mov dword [rbx + 0x138], eax
mov rcx, rdi
add r9d, eax
rol r9d, 0x10
mov dword [rbx + 0x68], r9d
xor r9d, 0xab45a22
mov dword [rbx + 0x170], r9d
mov rax, qword [rbx + 0xd8]
call rax
mov qword [rbx + 0x148], rax
test rax, rax
je 0x14000167c
mov rcx, qword [rbx + 0x128]
mov edx, 0xa1b3141c
mov r8d, 0x40bc81bd
call fcn.140001060
mov qword [rbx + 0x130], rax
test rax, rax
je 0x14000167c
mov rax, qword [rbx + 0x58]
mov edx, 0x71
xor ecx, ecx
mov r8d, 0x3000
lea r9d, [rdx - 0x6d]
call rax
mov qword [rbx + 8], rax
mov rbp, rax
test rax, rax
je 0x14000167c
mov rcx, qword [rbx + 0x148]
mov edx, 0x95cfc20f
mov r8d, 0xbd0c4f52
call fcn.140001060
mov qword [rbx + 0x90], rax
test rax, rax
je 0x14000167c
mov r8d, dword [rbx + 0x70]
mov esi, 0x10
mov ecx, dword [rbx + 0x138]
mov r9d, dword [rbx + 0x68]
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, 0x8966bbb8
mov dword [rdi], eax
add r9d, edx
rol r9d, 0x10
mov eax, r9d
imul r9d, r9d
xor eax, 0x5adb6ca2
mov dword [r15], eax
add r9d, ecx
rol r9d, 0x10
mov eax, r9d
imul r9d, r9d
xor eax, 0xc74540c1
mov dword [rbx + 0x16c], eax
lea eax, [r8 + rcx]
mov dword [rbx + 0x138], eax
mov ecx, esi
add r9d, eax
rol r9d, 0x10
mov dword [rbx + 0x68], r9d
xor r9d, 0x5913eef
mov dword [rbx + 0x170], r9d
nop dword [rax]
cmp rcx, 4
jb 0x140001974
mov eax, dword [rdi + rcx - 4]
sub rcx, 4
mov dword [rcx + rbp + 0x10], eax
jmp 0x140001980
movzx eax, byte [rdi + rcx - 1]
dec rcx
mov byte [rcx + rbp + 0x10], al
test rcx, rcx
jne 0x140001960
mov rcx, qword [rbx + 0x20]
mov edx, 0xb98dba32
mov r8d, 0xc913c3b3
call fcn.140001060
mov qword [rbx + 0x1d0], rax
test rax, rax
je 0x14000167c
mov rcx, qword [rbx + 0x148]
mov edx, 0x1e4e1f48
mov r8d, 0xc3b390cf
call fcn.140001060
mov qword [rbx + 0x120], rax
test rax, rax
je 0x14000167c
mov r8d, dword [rbx + 0x70]
mov ecx, dword [rbx + 0x138]
mov r9d, dword [rbx + 0x68]
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, 0xa81f6ff2
mov dword [rdi], eax
add r9d, edx
rol r9d, 0x10
mov eax, r9d
imul r9d, r9d
xor eax, 0xd60705b5
mov dword [r15], eax
add r9d, ecx
rol r9d, 0x10
mov eax, r9d
imul r9d, r9d
xor eax, 0x67f12372
mov dword [rbx + 0x16c], eax
lea eax, [r8 + rcx]
mov dword [rbx + 0x138], eax
mov rcx, rsi
add r9d, eax
rol r9d, 0x10
mov dword [rbx + 0x68], r9d
xor r9d, 0x3eefcb47
mov dword [rbx + 0x170], r9d
mov rdx, qword [rbx + 8]
nop dword [rax + rax]
cmp rcx, 4
jb 0x140001a74
mov eax, dword [rdi + rcx - 4]
sub rcx, 4
mov dword [rdx + rcx + 0x60], eax
jmp 0x140001a80
movzx eax, byte [rdi + rcx - 1]
dec rcx
mov byte [rdx + rcx + 0x60], al
test rcx, rcx
jne 0x140001a60
mov r8d, dword [rbx + 0x70]
mov ecx, dword [rbx + 0x138]
mov r9d, dword [rbx + 0x68]
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, 0x22e782a2
mov dword [rdi], eax
add r9d, edx
rol r9d, 0x10
mov eax, r9d
imul r9d, r9d
xor eax, 0x20e7aeb
mov dword [r15], eax
add r9d, ecx
rol r9d, 0x10
mov eax, r9d
imul r9d, r9d
xor eax, 0xb8fb1a3d
mov dword [rbx + 0x16c], eax
lea eax, [r8 + rcx]
mov dword [rbx + 0x138], eax
mov rcx, rsi
add r9d, eax
rol r9d, 0x10
mov dword [rbx + 0x68], r9d
xor r9d, 0x1286e01a
mov dword [rbx + 0x170], r9d
mov rdx, qword [rbx + 8]
cmp rcx, 4
jb 0x140001b24
mov eax, dword [rdi + rcx - 4]
sub rcx, 4
mov dword [rdx + rcx + 0x50], eax
jmp 0x140001b30
movzx eax, byte [rdi + rcx - 1]
dec rcx
mov byte [rdx + rcx + 0x50], al
test rcx, rcx
jne 0x140001b10
mov r8d, dword [rbx + 0x70]
mov ecx, dword [rbx + 0x138]
mov r9d, dword [rbx + 0x68]
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, 0xc6e875af
mov dword [rdi], eax
add r9d, edx
rol r9d, 0x10
mov eax, r9d
imul r9d, r9d
xor eax, 0x8e759390
mov dword [r15], eax
add r9d, ecx
rol r9d, 0x10
mov eax, r9d
imul r9d, r9d
xor eax, 0x1b2f5918
mov dword [rbx + 0x16c], eax
lea eax, [r8 + rcx]
mov dword [rbx + 0x138], eax
mov rcx, rsi
add r9d, eax
rol r9d, 0x10
mov dword [rbx + 0x68], r9d
xor r9d, 0x2b80cd46
mov dword [rbx + 0x170], r9d
mov rdx, qword [rbx + 8]
cmp rcx, 4
jb 0x140001bd4
mov eax, dword [rdi + rcx - 4]
sub rcx, 4
mov dword [rdx + rcx + 0x20], eax
jmp 0x140001be0
movzx eax, byte [rdi + rcx - 1]
dec rcx
mov byte [rdx + rcx + 0x20], al
test rcx, rcx
jne 0x140001bc0
mov rcx, qword [rbx + 0x128]
mov edx, 0xd17d5fb8
mov r8d, 0x3ae35fc6
call fcn.140001060
mov qword [rbx + 0x190], rax
test rax, rax
je 0x14000167c
mov r8d, dword [rbx + 0x70]
mov ecx, dword [rbx + 0x138]
mov r9d, dword [rbx + 0x68]
add ecx, r8d
imul r9d, r9d
lea edx, [rcx + r8]
add r9d, ecx
lea ecx, [rdx + r8]
rol r9d, 0x10
mov eax, r9d
imul r9d, r9d
xor eax, 0xc174e111
mov dword [rdi], eax
add r9d, edx
rol r9d, 0x10
mov eax, r9d
imul r9d, r9d
xor eax, 0x98a59b94
mov dword [r15], eax
add r9d, ecx
rol r9d, 0x10
mov eax, r9d
imul r9d, r9d
xor eax, 0xb4bc1ae8
mov dword [rbx + 0x16c], eax
lea eax, [rcx + r8]
mov dword [rbx + 0x138], eax
mov rcx, rsi
add r9d, eax
rol r9d, 0x10
mov dword [rbx + 0x68], r9d
xor r9d, 0xcd1fe482
mov dword [rbx + 0x170], r9d
mov rdx, qword [rbx + 8]
cmp rcx, 4
jb 0x140001cab
mov eax, dword [rdi + rcx - 4]
sub rcx, 4
mov dword [rdx + rcx + 0x40], eax
jmp 0x140001cb7
movzx eax, byte [rdi + rcx - 1]
dec rcx
mov byte [rdx + rcx + 0x40], al
test rcx, rcx
jne 0x140001c97
mov rbp, qword [rbx + 0x128]
mov edx, 0x7fda7d18
mov rcx, rbp
mov r8d, 0x97d689a
call fcn.140001060
mov qword [rbx + 0x1d8], rax
test rax, rax
je 0x14000167c
mov edx, 0x9945ecdc
mov r8d, 0xd0f1f08d
mov rcx, rbp
call fcn.140001060
mov qword [rbx + 0x140], rax
test rax, rax
je 0x14000167c
mov edx, 0xff448df5
mov r8d, 0x39dfe15d
mov rcx, rbp
call fcn.140001060
mov qword [rbx + 0x48], rax
test rax, rax
je 0x14000167c
mov rax, qword [rbx + 0x90]
xor r9d, r9d
xor r8d, r8d
mov dword [rsp + 0x20], r14d
xor ecx, ecx
lea edx, [r9 + 1]
call rax
mov qword [rbx + 0x78], rax
test rax, rax
je 0x14000167c
mov rbp, qword [rbx + 0x128]
mov edx, 0x2030ce05
mov rcx, rbp
mov r8d, 0x4731bf2b
call fcn.140001060
mov qword [rbx + 0x50], rax
test rax, rax
je 0x14000167c
mov r14, qword [rbx + 0x148]
mov edx, 0x53a4ec76
mov rcx, r14
mov r8d, 0xfdace130
call fcn.140001060
mov qword [rbx + 0x110], rax
test rax, rax
je 0x14000167c
mov edx, 0xc1cac189
mov r8d, 0x40aee947
mov rcx, rbp
call fcn.140001060
mov qword [rbx + 0x98], rax
test rax, rax
je 0x14000167c
mov edx, 0xf752d38b
mov r8d, 0x489d6ce9
mov rcx, rbp
call fcn.140001060
mov qword [rbx + 0xe0], rax
test rax, rax
je 0x14000167c
mov edx, 0x3859d666
mov r8d, 0x884b9b35
mov rcx, rbp
call fcn.140001060
mov qword [rbx + 0x150], rax
test rax, rax
je 0x14000167c
mov edx, 0x322de892
mov r8d, 0x7a0712d3
mov rcx, r14
call fcn.140001060
mov qword [rbx + 0x38], rax
test rax, rax
je 0x14000167c
mov edx, 0x7b2b8535
mov r8d, 0x950457d0
mov rcx, r14
call fcn.140001060
mov qword [rbx + 0x30], rax
test rax, rax
je 0x14000167c
mov edx, 0x7a73eed2
mov r8d, 0xf8c34826
mov rcx, r14
call fcn.140001060
mov qword [rbx + 0x10], rax
test rax, rax
je 0x14000167c
mov edx, 0x9ddb4192
mov r8d, 0x90302c24
mov rcx, rbp
call fcn.140001060
mov qword [rbx + 0xc0], rax
test rax, rax
je 0x14000167c
mov edx, 0x129ef4bf
mov r8d, 0x19b3b78f
mov rcx, rbp
call fcn.140001060
mov qword [rbx + 0x88], rax
test rax, rax
je 0x14000167c
lea rdx, [rsp + 0x40]
mov ecx, 0x104
call rax
test eax, eax
je 0x14000167c
mov rax, qword [rbx + 0x1d8]
lea rcx, [rsp + 0x40]
call rax
test eax, eax
je 0x14000167c
mov rcx, qword [rbx + 0x128]
mov edx, 0x2c1eb27a
mov r8d, 0x58532454
call fcn.140001060
mov qword [rbx + 0x178], rax
test rax, rax
je 0x14000167c
lea rdx, [rsp + 0x250]
mov rcx, rbx
call fcn.1400013a0
mov rax, qword [rbx + 0x1a8]
dec rax
cmp rax, 0xfffffffffffffffd
ja 0x14000167c
mov r8d, dword [rbx + 0x70]
mov ecx, dword [rbx + 0x138]
mov r9d, dword [rbx + 0x68]
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, 0x4f928c2c
mov dword [rdi], eax
add r9d, edx
rol r9d, 0x10
mov eax, r9d
imul r9d, r9d
xor eax, 0x5ce0219a
mov dword [r15], eax
add r9d, ecx
rol r9d, 0x10
mov eax, r9d
imul r9d, r9d
xor eax, 0x80c1b620
mov dword [rbx + 0x16c], eax
lea eax, [r8 + rcx]
mov dword [rbx + 0x138], eax
mov rcx, rsi
add r9d, eax
rol r9d, 0x10
mov dword [rbx + 0x68], r9d
xor r9d, 0x5dc03574
mov dword [rbx + 0x170], r9d
mov rdx, qword [rbx + 8]
cmp rcx, 4
jb 0x140001fc3
mov eax, dword [rdi + rcx - 4]
sub rcx, 4
mov dword [rdx + rcx], eax
jmp 0x140001fce
movzx eax, byte [rdi + rcx - 1]
dec rcx
mov byte [rdx + rcx], al
test rcx, rcx
jne 0x140001fb0
mov r8d, dword [rbx + 0x70]
mov ecx, dword [rbx + 0x138]
mov r9d, dword [rbx + 0x68]
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, 0xd827763
mov dword [rdi], eax
add r9d, edx
rol r9d, 0x10
mov eax, r9d
imul r9d, r9d
xor eax, 0x745dad7e
mov dword [r15], eax
add r9d, ecx
rol r9d, 0x10
mov eax, r9d
imul r9d, r9d
xor eax, 0xf2c4adbb
mov dword [rbx + 0x16c], eax
lea eax, [r8 + rcx]
mov dword [rbx + 0x138], eax
mov rcx, rsi
add r9d, eax
rol r9d, 0x10
mov dword [rbx + 0x68], r9d
xor r9d, 0xfa000add
mov dword [rbx + 0x170], r9d
mov rdx, qword [rbx + 8]
nop
cmp rcx, 4
jb 0x140002074
mov eax, dword [rdi + rcx - 4]
sub rcx, 4
mov dword [rdx + rcx + 0x70], eax
jmp 0x140002080
movzx eax, byte [rdi + rcx - 1]
dec rcx
mov byte [rdx + rcx + 0x70], al
test rcx, rcx
jne 0x140002060
mov r8d, dword [rbx + 0x70]
mov ecx, dword [rbx + 0x138]
mov r9d, dword [rbx + 0x68]
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, 0xafeca7b
mov dword [rdi], eax
add r9d, edx
rol r9d, 0x10
mov eax, r9d
imul r9d, r9d
xor eax, 0x1642c802
mov dword [r15], eax
add r9d, ecx
rol r9d, 0x10
mov eax, r9d
imul r9d, r9d
xor eax, 0x68c72105
mov dword [rbx + 0x16c], eax
lea eax, [r8 + rcx]
mov dword [rbx + 0x138], eax
add r9d, eax
rol r9d, 0x10
mov dword [rbx + 0x68], r9d
xor r9d, 0xe546bf8
mov dword [rbx + 0x170], r9d
mov rcx, qword [rbx + 8]
nop dword [rax]
cmp rsi, 4
jb 0x140002124
mov eax, dword [rdi + rsi - 4]
sub rsi, 4
mov dword [rcx + rsi + 0x30], eax
jmp 0x140002130
movzx eax, byte [rdi + rsi - 1]
dec rsi
mov byte [rcx + rsi + 0x30], al
test rsi, rsi
jne 0x140002110
mov rcx, qword [rbx + 0x148]
mov edx, 0xc18f9d42
mov r8d, 0xd559abeb
call fcn.140001060
mov qword [rbx + 0xa0], rax
test rax, rax
je 0x14000167c
mov rax, qword [rbx + 0x140]
lea r9, [rbx + 0xf8]
mov rdx, qword [rbx + 8]
lea r8d, [rsi + 0x71]
mov rcx, qword [rbx + 0x1a8]
mov qword [rsp + 0x20], rsi
call rax
test eax, eax
je 0x14000167c
mov rcx, qword [rbx + 0x1a8]
call qword [rbx + 0x98]
mov r8d, dword [rbx + 0x70]
mov r9d, dword [rbx + 0x68]
mov ecx, dword [rbx + 0x138]
imul r9d, r9d
add ecx, r8d
mov qword [rsp + 0x38], rsi
mov dword [rsp + 0x30], esi
mov dword [rsp + 0x28], 3
lea edx, [rcx + r8]
mov qword [rsp + 0x20], rsi
add r9d, ecx
lea ecx, [r8 + rdx]
rol r9d, 0x10
mov eax, r9d
imul r9d, r9d
xor eax, 0x16885214
mov dword [rdi], eax
add r9d, edx
mov rdx, rdi
rol r9d, 0x10
mov eax, r9d
imul r9d, r9d
xor eax, 0xdf7fcc8
mov dword [r15], eax
add r9d, ecx
rol r9d, 0x10
mov eax, r9d
imul r9d, r9d
xor eax, 0x924192da
mov dword [rbx + 0x16c], eax
lea eax, [r8 + rcx]
mov dword [rbx + 0x138], eax
mov r8d, 0x1bb
add r9d, eax
rol r9d, 0x10
mov dword [rbx + 0x68], r9d
xor r9d, 0x2c9f0d4d
mov dword [rbx + 0x170], r9d
xor r9d, r9d
mov rax, qword [rbx + 0xa0]
mov rcx, qword [rbx + 0x78]
call rax
mov qword [rbx + 0xc8], rax
test rax, rax
je 0x14000167c
mov rax, qword [rbx + 0x1d0]
lea r8, [rsp + 0x250]
mov dword [rsp + 0x28], 1
xor r9d, r9d
xor edx, edx
mov qword [rsp + 0x20], rsi
xor ecx, ecx
call rax
cmp rax, 0x20
jb 0x14000167c
mov r8d, dword [rbx + 0x70]
mov r9d, dword [rbx + 0x68]
mov ecx, dword [rbx + 0x138]
imul r9d, r9d
add ecx, r8d
mov qword [rsp + 0x38], rsi
mov dword [rsp + 0x30], 0x80800000
mov qword [rsp + 0x28], rsi
lea edx, [rcx + r8]
mov qword [rsp + 0x20], rsi
add r9d, ecx
lea ecx, [r8 + rdx]
rol r9d, 0x10
mov eax, r9d
imul r9d, r9d
xor eax, 0x3c3b0c53
mov dword [rdi], eax
add r9d, edx
mov rdx, rdi
rol r9d, 0x10
mov eax, r9d
imul r9d, r9d
xor eax, 0x441f6cb2
mov dword [r15], eax
add r9d, ecx
rol r9d, 0x10
mov eax, r9d
imul r9d, r9d
xor eax, 0xd7419e85
mov dword [rbx + 0x16c], eax
lea eax, [r8 + rcx]
mov dword [rbx + 0x138], eax
mov r8, r15
add r9d, eax
mov rax, qword [rbx + 0x10]
rol r9d, 0x10
mov dword [rbx + 0x68], r9d
xor r9d, 0xdf92a2f9
mov dword [rbx + 0x170], r9d
xor r9d, r9d
mov rcx, qword [rbx + 0xc8]
call rax
mov qword [rbx + 0x1b0], rax
test rax, rax
je 0x14000167c
mov r10, qword [rbx + 0x38]
xor r9d, r9d
xor r8d, r8d
mov dword [rsp + 0x20], esi
xor edx, edx
mov rcx, rax
call r10
test eax, eax
je 0x14000167c
mov rax, qword [rbx + 0x120]
lea r9, [rbx + 0x1b8]
mov rcx, qword [rbx + 0x1b0]
lea r8, [rbx + 0x160]
mov edx, 0x20000005
mov qword [rsp + 0x20], r13
call rax
test eax, eax
je 0x14000167c
mov rax, qword [rbx + 0x58]
lea r9d, [rsi + 4]
mov edx, dword [rbx + 0x160]
xor ecx, ecx
mov r8d, 0x3000
call rax
mov qword [rbx + 0x180], rax
test rax, rax
je 0x14000167c
mov r10, qword [rbx + 0x30]
lea r9, [rbx + 0x18]
mov r8d, dword [rbx + 0x160]
mov rdx, rax
mov rcx, qword [rbx + 0x1b0]
call r10
test eax, eax
je 0x14000167c
mov eax, dword [rbx + 0x160]
cmp dword [rbx + 0x18], eax
jne 0x14000167c
mov rcx, qword [rbx + 0x1b0]
call qword [rbx + 0x110]
mov rax, qword [rbx + 0x180]
mov ecx, 0x5a4d
mov qword [rbx + 0x188], rax
cmp word [rax], cx
jne 0x14000167c
mov rcx, qword [rbx + 0xc8]
call qword [rbx + 0x110]
mov rax, qword [rbx + 0x188]
movsxd rdx, dword [rax + 0x3c]
add rdx, qword [rbx + 0x180]
mov qword [rbx + 0xb0], rdx
cmp dword [rdx], 0x4550
jne 0x14000167c
mov eax, 0x8664
cmp word [rdx + 4], ax
jne 0x14000167c
mov eax, 0x20b
cmp word [rdx + 0x18], ax
jne 0x14000167c
movzx ecx, word [rdx + 0x14]
add rdx, 0x18
add rcx, rdx
mov qword [rbx + 0x198], rcx
mov rcx, qword [rbx + 0x78]
call qword [rbx + 0x110]
mov rax, qword [rbx + 0xb0]
lea r9d, [rsi + 0x40]
mov r10, qword [rbx + 0x58]
xor ecx, ecx
mov r8d, 0x3000
mov edx, dword [rax + 0x50]
call r10
mov qword [rbx], rax
test rax, rax
je 0x14000167c
mov rcx, rbx
call fcn.1400011a0
mov rcx, rbx
call fcn.140001220
mov rax, qword [rbx + 0xb0]
mov rdx, qword [rbx + 0x180]
mov r8, qword [rbx]
mov ecx, dword [rax + 0x54]
test rcx, rcx
je 0x1400024fd
cmp rcx, 4
jb 0x1400024ec
mov eax, dword [rdx + rcx - 4]
sub rcx, 4
mov dword [r8 + rcx], eax
jmp 0x1400024f8
movzx eax, byte [rdx + rcx - 1]
dec rcx
mov byte [r8 + rcx], al
test rcx, rcx
jne 0x1400024d8
mov rcx, rbx
call fcn.140001300
mov rax, qword [rbx + 0xb0]
mov r8d, 0x2000
mov rcx, qword [rbx]
mov r9d, dword [rax + 0x28]
add r9, rcx
test word [rax + 0x16], r8w
je 0x140002550
xor r8d, r8d
lea edx, [r8 + 1]
call r9
mov rcx, qword [rbx]
mov edx, 0x1bead907
mov r8d, 0x3e3816a5
call fcn.140001060
test rax, rax
je 0x14000167c
call rax
jmp 0x14000167c
call r9
jmp 0x14000167c