Function at 0x1400016c0
Capabilities:
Parse pe header

Disassembly:
push rbp
lea rbp, [rsp - 0x420]
sub rsp, 0x520
mov qword [rsp + 0x540], rdi
xor edi, edi
mov dword [rbp - 0x10], edi
mov dword [rbp + 0x168], 4
mov rax, qword gs:[0x30]
mov qword [rsp + 0x68], rax
test rax, rax
je 0x14000288a
mov dword [rsp + 0x78], edi
mov rcx, qword [rax + 0x60]
mov qword [rbp + 0x1d0], rcx
test rcx, rcx
je 0x14000288a
mov rax, qword [rcx + 0x18]
mov qword [rbp + 0x70], rax
test rax, rax
je 0x14000288a
add rax, 0x20
mov dword [rbp + 0x60], 4
mov qword [rbp + 0x90], rax
je 0x14000288a
mov rax, qword [rax]
add rax, 0xfffffffffffffff0
mov qword [rsp + 0x50], rax
je 0x14000288a
mov edx, 0x6b0fee59
lea rcx, [rsp + 0x40]
mov r8d, 0x7df785c6
call fcn.1400010d0
mov qword [rbp + 0x188], rax
test rax, rax
je 0x14000288a
xor edx, edx
mov rcx, rax
call fcn.140001130
mov qword [rbp - 0x20], rax
test rax, rax
je 0x14000288a
mov rcx, qword [rbp + 0x188]
mov r9d, 0xb784cbd7
mov r8d, 0x1a8ff8e
mov rdx, rax
call fcn.140001180
mov qword [rbp + 0x18], rax
test rax, rax
je 0x14000288a
mov rdx, qword [rbp - 0x20]
mov r9d, 0x2ad472c4
mov rcx, qword [rbp + 0x188]
mov r8d, 0xe6cc2ed1
call fcn.140001180
mov qword [rbp + 0x198], rax
test rax, rax
je 0x14000288a
mov rdx, qword [rbp - 0x20]
mov r9d, 0xe73d452
mov rcx, qword [rbp + 0x188]
mov r8d, 0xca577545
call fcn.140001180
mov qword [rsp + 0x48], rax
test rax, rax
je 0x14000288a
mov rdx, qword [rbp - 0x20]
mov r9d, 0x7cddcdea
mov rcx, qword [rbp + 0x188]
mov r8d, 0xccfa6998
call fcn.140001180
mov qword [rbp + 0x1a8], rax
test rax, rax
je 0x14000288a
mov edx, 0x134
lea r9d, [rdi + 4]
xor ecx, ecx
mov r8d, 0x3000
call qword [rbp + 0x198]
mov qword [rbp + 0xf8], rax
test rax, rax
je 0x14000288a
mov rdx, qword [rbp - 0x20]
mov r9d, 0xbe1c676e
mov rcx, qword [rbp + 0x188]
mov r8d, 0x68a7900c
call fcn.140001180
mov qword [rbp - 0x50], rax
test rax, rax
je 0x14000288a
mov rdx, qword [rbp - 0x20]
mov r9d, 0x8801da6c
mov rcx, qword [rbp + 0x188]
mov r8d, 0xa2f6d6c5
call fcn.140001180
mov qword [rbp + 0xa8], rax
test rax, rax
je 0x14000288a
mov rdx, qword [rbp - 0x20]
mov r9d, 0x2fe2c4e0
mov rcx, qword [rbp + 0x188]
mov r8d, 0xf4d298fb
call fcn.140001180
mov qword [rbp + 0x110], rax
test rax, rax
je 0x14000288a
mov rdx, qword [rbp - 0x20]
mov r9d, 0x8e055a50
mov rcx, qword [rbp + 0x188]
mov r8d, 0xfc1a9021
call fcn.140001180
mov qword [rbp + 0x128], rax
test rax, rax
je 0x14000288a
mov rdx, qword [rbp - 0x20]
mov r9d, 0xe5149fa2
mov rcx, qword [rbp + 0x188]
mov r8d, 0x17e1f508
call fcn.140001180
mov qword [rsp + 0x70], rax
test rax, rax
je 0x14000288a
mov rax, qword [rsp + 0x50]
mov rcx, qword [rax + 0x60]
mov qword [rbp + 0x80], rcx
test rcx, rcx
je 0x14000288a
mov rdx, qword [rbp - 0x20]
mov r9d, 0x67028a58
mov rcx, qword [rbp + 0x188]
mov r8d, 0x244e2d49
call fcn.140001180
mov qword [rbp + 0x160], rax
test rax, rax
je 0x14000288a
mov rdx, qword [rbp - 0x20]
mov r9d, 0x660f7a17
mov rcx, qword [rbp + 0x188]
mov r8d, 0x8f247037
call fcn.140001180
mov qword [rbp - 0x40], rax
test rax, rax
je 0x14000288a
mov rdx, qword [rbp + 0x80]
lea r8d, [rdi + 0x11]
mov ecx, 0x42664aa
call section..text
mov rdx, qword [rbp - 0x20]
mov r9d, 0xedd4bb7
mov rcx, qword [rbp + 0x188]
mov r8d, 0x7f576fa9
mov dword [rbp + 0x200], eax
call fcn.140001180
mov qword [rbp + 0x1d8], rax
test rax, rax
je 0x14000288a
mov rdx, qword [rbp - 0x20]
mov r9d, 0x8850300b
mov rcx, qword [rbp + 0x188]
mov r8d, 0x5270aa01
call fcn.140001180
mov qword [rbp + 0x1e8], rax
test rax, rax
je 0x14000288a
mov rdx, qword [rbp - 0x20]
mov r9d, 0xb929d7c
mov rcx, qword [rbp + 0x188]
mov r8d, 0x1b4efee5
call fcn.140001180
mov qword [rbp + 0x120], rax
test rax, rax
je 0x14000288a
mov rdx, qword [rbp + 0x80]
lea r8d, [rdi + 0x11]
mov ecx, 0x6c40fdb8
call section..text
mov rdx, qword [rbp + 0x80]
lea r8d, [rdi + 0x11]
mov ecx, 0x8e8f2855
mov dword [rbp + 0x138], eax
call section..text
mov rdx, qword [rbp - 0x20]
or eax, 1
mov rcx, qword [rbp + 0x188]
mov r9d, 0x22f14fdd
mov r8d, 0x4480b927
mov dword [rbp], eax
call fcn.140001180
mov qword [rbp + 0x10], rax
test rax, rax
je 0x14000288a
mov rdx, qword [rbp - 0x20]
mov r9d, 0x5fa70f87
mov rcx, qword [rbp + 0x188]
mov r8d, 0x93158af4
call fcn.140001180
mov qword [rbp - 0x30], rax
test rax, rax
je 0x14000288a
mov rax, qword [rsp + 0x50]
mov rdx, qword [rax + 0x50]
mov qword [rbp - 0x60], rdx
cmp qword [rbp + 0x80], rdi
je 0x14000288a
mov ecx, edi
mov qword [rsp + 0x538], rbx
mov dword [rbp + 0x100], ecx
cmp word [rdx], cx
je 0x140001b13
nop word [rax + rax]
movsxd rax, ecx
lea ecx, [rax + 1]
mov dword [rbp + 0x100], ecx
cmp word [rdx + rax*2 + 2], di
jne 0x140001b00
mov r8, qword [rbp + 0xf8]
movsxd rcx, ecx
add rcx, rcx
je 0x140001b47
cmp rcx, 4
jb 0x140001b36
mov eax, dword [rcx + rdx - 4]
sub rcx, 4
mov dword [r8 + rcx], eax
jmp 0x140001b42
movzx eax, byte [rcx + rdx - 1]
dec rcx
mov byte [r8 + rcx], al
test rcx, rcx
jne 0x140001b22
mov edx, 0x5ccce420
mov dword [rsp + 0x20], 0x706fd028
mov r9d, 0x7a4227f6
lea rcx, [rsp + 0x40]
mov r8d, 0x5adc1cbe
call fcn.140001520
movsxd rcx, dword [rbp + 0x100]
mov ebx, 0x10
mov rax, qword [rbp + 0xf8]
mov edx, ebx
lea r8, [rax + rcx*2]
cmp rdx, 4
jb 0x140001b97
mov eax, dword [rsp + rdx + 0x78]
sub rdx, 4
mov dword [r8 + rdx], eax
jmp 0x140001ba3
movzx eax, byte [rsp + rdx + 0x7b]
dec rdx
mov byte [r8 + rdx], al
test rdx, rdx
jne 0x140001b83
mov edx, 0x5a9d3091
mov dword [rsp + 0x20], 0x28973697
mov r9d, 0xb8e0e08e
lea rcx, [rsp + 0x40]
mov r8d, 0xc4ff2684
call fcn.140001520
movsxd rcx, dword [rbp + 0x100]
mov rdx, rbx
mov rax, qword [rbp + 0xf8]
lea r8, [rax + rcx*2]
cmp rdx, 4
jb 0x140001bf5
mov eax, dword [rsp + rdx + 0x78]
sub rdx, 4
mov dword [r8 + rdx + 0x10], eax
jmp 0x140001c02
movzx eax, byte [rsp + rdx + 0x7b]
dec rdx
mov byte [r8 + rdx + 0x10], al
test rdx, rdx
jne 0x140001be0
mov edx, 0x55c69f30
mov dword [rsp + 0x20], 0xaaf7bd38
mov r9d, 0x17496969
lea rcx, [rsp + 0x40]
mov r8d, 0xa52f77d5
call fcn.140001520
movsxd rcx, dword [rbp + 0x100]
mov rdx, rbx
mov rax, qword [rbp + 0xf8]
lea r8, [rax + rcx*2]
nop
cmp rdx, 4
jb 0x140001c55
mov eax, dword [rsp + rdx + 0x78]
sub rdx, 4
mov dword [r8 + rdx + 0x20], eax
jmp 0x140001c62
movzx eax, byte [rsp + rdx + 0x7b]
dec rdx
mov byte [r8 + rdx + 0x20], al
test rdx, rdx
jne 0x140001c40
mov rcx, qword [rbp + 0xf8]
xor r9d, r9d
mov qword [rsp + 0x30], rdi
mov edx, 0x80000000
mov dword [rsp + 0x28], edi
mov dword [rsp + 0x20], 3
lea r8d, [r9 + 7]
call qword [rsp + 0x70]
mov qword [rbp + 0x78], rax
cmp rax, 0xffffffffffffffff
je 0x140002882
xor edx, edx
mov rcx, rax
call qword [rbp + 0x120]
mov dword [rbp - 0x68], eax
test eax, eax
je 0x140002882
xor ecx, ecx
mov edx, eax
mov r8d, 0x3000
lea r9d, [rcx + 4]
call qword [rbp + 0x198]
mov qword [rbp + 0x50], rax
test rax, rax
je 0x140002882
mov r8d, dword [rbp - 0x68]
lea r9, [rbp + 0x430]
mov rcx, qword [rbp + 0x78]
mov rdx, rax
mov qword [rsp + 0x20], rdi
call qword [rbp + 0x1e8]
test eax, eax
je 0x140002882
mov eax, dword [rbp - 0x68]
cmp dword [rbp + 0x430], eax
jne 0x140002882
mov rcx, qword [rbp + 0x78]
call qword [rbp + 0x1d8]
mov r8d, dword [rbp - 0x68]
mov ecx, 0xe8a55ac3
mov rdx, qword [rbp + 0x50]
call fcn.140001060
cmp eax, 0xccbdc20e
jne 0x140002882
mov r8d, dword [rbp - 0x68]
mov ecx, 0xc94023c1
mov rdx, qword [rbp + 0x50]
call fcn.140001060
mov r8d, dword [rbp - 0x68]
mov ecx, 0x726c3126
mov rdx, qword [rbp + 0x50]
mov dword [rbp + 0x200], eax
call fcn.140001060
mov r8d, dword [rbp - 0x68]
mov ecx, 0x5d694e24
mov rdx, qword [rbp + 0x50]
mov dword [rbp + 0x138], eax
call fcn.140001060
or eax, 1
mov dword [rsp + 0x20], 0xeb499d72
mov edx, 0xf66f077f
mov dword [rbp], eax
mov r9d, 0xbd0fe53d
lea rcx, [rsp + 0x40]
mov r8d, 0xe24f075
call fcn.140001520
mov rcx, rdi
nop dword [rax]
movzx eax, byte [rsp + rcx + 0x7c]
test eax, eax
je 0x140001dc2
add eax, 0xffffffd0
cmp eax, 0x4a
ja 0x140002882
inc rcx
cmp rcx, rbx
jl 0x140001da0
jmp 0x140002882
lea rcx, [rsp + 0x7c]
call qword [rbp + 0x18]
mov qword [rbp + 0xa0], rax
test rax, rax
je 0x140002882
mov edx, 0xbae248c0
mov dword [rsp + 0x20], 0x97f40fd2
mov r9d, 0x26cd8bd1
lea rcx, [rsp + 0x40]
mov r8d, 0x892863c6
call fcn.140001520
lea rcx, [rsp + 0x7c]
call qword [rbp + 0x18]
mov qword [rbp + 0x1b0], rax
test rax, rax
je 0x140002882
xor edx, edx
mov rcx, rax
call fcn.140001130
mov qword [rsp + 0x60], rax
test rax, rax
je 0x140002882
mov edx, 0x2a
xor ecx, ecx
mov r8d, 0x3000
lea r9d, [rdx - 0x26]
call qword [rbp + 0x198]
mov qword [rbp + 0x1b8], rax
test rax, rax
je 0x140002882
mov edx, 0x620e17cf
mov dword [rsp + 0x20], 0x4a2590a4
mov r9d, 0xc4bb10ba
lea rcx, [rsp + 0x40]
mov r8d, 0x914ec806
call fcn.140001520
lea rcx, [rsp + 0x7c]
call qword [rbp + 0x18]
mov qword [rbp + 0x190], rax
test rax, rax
je 0x140002882
mov edx, 0xcb07e93e
mov dword [rsp + 0x20], 0x7b120328
mov r9d, 0xba390b6b
lea rcx, [rsp + 0x40]
mov r8d, 0xd2d6a4fe
call fcn.140001520
lea rcx, [rsp + 0x7c]
call qword [rbp + 0x18]
mov qword [rbp + 0xc8], rax
test rax, rax
je 0x140002882
mov rcx, qword [rbp + 0x190]
xor edx, edx
call fcn.140001130
mov qword [rsp + 0x58], rax
test rax, rax
je 0x140002882
mov rcx, qword [rbp + 0xc8]
xor edx, edx
call fcn.140001130
mov qword [rbp - 0x58], rax
test rax, rax
je 0x140002882
mov rcx, qword [rbp + 0xa0]
xor edx, edx
call fcn.140001130
mov qword [rbp + 0xd8], rax
test rax, rax
je 0x140002882
mov edx, 0x27
xor ecx, ecx
mov r8d, 0x3000
lea r9d, [rdx - 0x23]
call qword [rbp + 0x198]
mov qword [rbp - 0x48], rax
test rax, rax
je 0x140002882
mov edx, 0x13
xor ecx, ecx
mov r8d, 0x3000
lea r9d, [rdx - 0xf]
call qword [rbp + 0x198]
mov qword [rbp + 0x1c0], rax
test rax, rax
je 0x140002882
mov edx, 0x4bb50074
mov dword [rsp + 0x20], 0x5893a550
mov r9d, 0x57a1b817
lea rcx, [rsp + 0x40]
mov r8d, 0xb2ab57cd
call fcn.140001520
mov rdx, qword [rbp - 0x48]
mov rcx, rbx
cmp rcx, 4
jb 0x140001fa7
mov eax, dword [rsp + rcx + 0x78]
sub rcx, 4
mov dword [rcx + rdx], eax
jmp 0x140001fb2
movzx eax, byte [rsp + rcx + 0x7b]
dec rcx
mov byte [rcx + rdx], al
test rcx, rcx
jne 0x140001f94
mov edx, 0x6cdf5ed2
mov dword [rsp + 0x20], 0xeb375e17
mov r9d, 0xd52c4cbb
lea rcx, [rsp + 0x40]
mov r8d, 0x8e0b721e
call fcn.140001520
mov rdx, qword [rbp + 0x1c0]
mov rcx, rbx
cmp rcx, 4
jb 0x140001ff8
mov eax, dword [rsp + rcx + 0x78]
sub rcx, 4
mov dword [rdx + rcx + 0x10], eax
jmp 0x140002004
movzx eax, byte [rsp + rcx + 0x7b]
dec rcx
mov byte [rdx + rcx + 0x10], al
test rcx, rcx
jne 0x140001fe4
mov rdx, qword [rbp + 0xd8]
mov r9d, 0xd5f988e7
mov rcx, qword [rbp + 0xa0]
mov r8d, 0xe3fe346d
call fcn.140001180
mov qword [rbp + 8], rax
test rax, rax
je 0x140002882
mov rdx, qword [rbp + 0xd8]
mov r9d, 0xcc247a07
mov rcx, qword [rbp + 0xa0]
mov r8d, 0x7539178a
call fcn.140001180
mov qword [rbp + 0x68], rax
test rax, rax
je 0x140002882
mov edx, 0x26e05159
mov dword [rsp + 0x20], 0x26dff84
mov r9d, 0x2080ef9b
lea rcx, [rsp + 0x40]
mov r8d, 0x7d268fc8
call fcn.140001520
mov rdx, qword [rbp + 0x1b8]
mov rcx, rbx
nop
cmp rcx, 4
jb 0x1400020a4
mov eax, dword [rsp + rcx + 0x78]
sub rcx, 4
mov dword [rdx + rcx + 0x10], eax
jmp 0x1400020b0
movzx eax, byte [rsp + rcx + 0x7b]
dec rcx
mov byte [rdx + rcx + 0x10], al
test rcx, rcx
jne 0x140002090
mov edx, 0x3d1dad83
mov dword [rsp + 0x20], 0x7252100f
mov r9d, 0x47dfa9e4
lea rcx, [rsp + 0x40]
mov r8d, 0x19070ed4
call fcn.140001520
mov rdx, qword [rbp - 0x48]
mov rcx, rbx
nop
cmp rcx, 4
jb 0x1400020f4
mov eax, dword [rsp + rcx + 0x78]
sub rcx, 4
mov dword [rdx + rcx + 0x20], eax
jmp 0x140002100
movzx eax, byte [rsp + rcx + 0x7b]
dec rcx
mov byte [rdx + rcx + 0x20], al
test rcx, rcx
jne 0x1400020e0
mov edx, 0x35fe1268
mov dword [rsp + 0x20], 0x97a75e63
mov r9d, 0x71028807
lea rcx, [rsp + 0x40]
mov r8d, 0x7aef43b4
call fcn.140001520
mov rdx, qword [rbp + 0x1c0]
mov rcx, rbx
cmp rcx, 4
jb 0x140002145
mov eax, dword [rsp + rcx + 0x78]
sub rcx, 4
mov dword [rdx + rcx], eax
jmp 0x140002150
movzx eax, byte [rsp + rcx + 0x7b]
dec rcx
mov byte [rdx + rcx], al
test rcx, rcx
jne 0x140002132
mov rdx, qword [rbp + 0xd8]
mov r9d, 0x2394b960
mov rcx, qword [rbp + 0xa0]
mov r8d, 0xd7dbced
call fcn.140001180
mov qword [rbp - 0x28], rax
test rax, rax
je 0x140002882
mov edx, 0xabeb550b
mov dword [rsp + 0x20], 0x25361733
mov r9d, 0x33dc9a3
lea rcx, [rsp + 0x40]
mov r8d, 0xa9aa59c8
call fcn.140001520
mov rdx, qword [rbp + 0x1b8]
mov rcx, rbx
nop
cmp rcx, 4
jb 0x1400021c3
mov eax, dword [rsp + rcx + 0x78]
sub rcx, 4
mov dword [rdx + rcx], eax
jmp 0x1400021ce
movzx eax, byte [rsp + rcx + 0x7b]
dec rcx
mov byte [rdx + rcx], al
test rcx, rcx
jne 0x1400021b0
mov rdx, qword [rsp + 0x60]
mov r9d, 0x874a4356
mov rcx, qword [rbp + 0x1b0]
mov r8d, 0x74f1a6e1
call fcn.140001180
mov qword [rbp - 8], rax
test rax, rax
je 0x140002882
mov edx, 0x1f6ff132
mov dword [rsp + 0x20], 0x9824f08e
mov r9d, 0xbc3bb304
lea rcx, [rsp + 0x40]
mov r8d, 0x3c11c61d
call fcn.140001520
mov rdx, qword [rbp - 0x48]
mov rcx, rbx
cmp rcx, 4
jb 0x14000223b
mov eax, dword [rsp + rcx + 0x78]
sub rcx, 4
mov dword [rdx + rcx + 0x10], eax
jmp 0x140002247
movzx eax, byte [rsp + rcx + 0x7b]
dec rcx
mov byte [rdx + rcx + 0x10], al
test rcx, rcx
jne 0x140002227
mov rdx, qword [rbp + 0xd8]
mov r9d, 0x10a15d02
mov rcx, qword [rbp + 0xa0]
mov r8d, 0xe85c17b4
call fcn.140001180
mov qword [rbp - 0x70], rax
test rax, rax
je 0x140002882
xor ecx, ecx
call qword [rbp - 8]
mov dword [rbp + 0x130], eax
test eax, eax
js 0x140002882
mov rdx, qword [rsp + 0x58]
mov r9d, 0x8496ac6
mov rcx, qword [rbp + 0x190]
mov r8d, 0x2af603f8
call fcn.140001180
mov qword [rbp + 0xe8], rax
test rax, rax
je 0x140002882
xor r9d, r9d
mov dword [rsp + 0x20], edi
xor r8d, r8d
xor ecx, ecx
lea edx, [r9 + 1]
call qword [rbp + 8]
mov qword [rbp + 0xd0], rax
test rax, rax
je 0x140002882
mov rdx, qword [rbp + 0xd8]
mov r9d, 0xdbb8d472
mov rcx, qword [rbp + 0xa0]
mov r8d, 0x14a5a65b
call fcn.140001180
mov qword [rbp + 0x38], rax
test rax, rax
je 0x140002882
mov rdx, qword [rbp + 0xd8]
mov r9d, 0x2c91601d
mov rcx, qword [rbp + 0xa0]
mov r8d, 0x4bf1cba9
call fcn.140001180
mov qword [rbp + 0x180], rax
test rax, rax
je 0x140002882
mov rdx, qword [rbp - 0x58]
mov r9d, 0x86efb2f6
mov rcx, qword [rbp + 0xc8]
mov r8d, 0x34e59ae0
call fcn.140001180
mov qword [rsp + 0x40], rax
test rax, rax
je 0x140002882
lea rdx, [rbp + 0x210]
mov ecx, 0x104
call qword [rbp + 0x10]
test eax, eax
je 0x140002882
lea rcx, [rbp + 0x210]
call qword [rbp - 0x40]
test eax, eax
je 0x140002882
mov edx, 0xf38187dd
mov dword [rsp + 0x20], 0x7aa7e13b
mov r9d, 0x3774affa
lea rcx, [rsp + 0x40]
mov r8d, 0x5a6134a5
call fcn.140001520
mov rcx, qword [rbp + 0x1b8]
cmp rbx, 4
jb 0x1400023c7
mov eax, dword [rsp + rbx + 0x78]
sub rbx, 4
mov dword [rcx + rbx + 0x20], eax
jmp 0x1400023d3
movzx eax, byte [rsp + rbx + 0x7b]
dec rbx
mov byte [rcx + rbx + 0x20], al
test rbx, rbx
jne 0x1400023b3
mov rdx, qword [rbp + 0xd8]
mov r9d, 0xc9f6c974
mov rcx, qword [rbp + 0xa0]
mov r8d, 0xab64ace7
call fcn.140001180
mov qword [rbp - 0x18], rax
test rax, rax
je 0x140002882
mov edx, 0x5ca1f7d3
mov dword [rsp + 0x20], 0x56b80fbb
mov r9d, 0xe15c31fa
lea rcx, [rsp + 0x40]
mov r8d, 0xfc81c1b5
call fcn.140001520
mov rcx, qword [rbp + 0xd0]
lea rdx, [rsp + 0x7c]
mov qword [rsp + 0x38], rdi
mov r8d, 0x1bb
mov dword [rsp + 0x30], edi
xor r9d, r9d
mov dword [rsp + 0x28], 3
mov qword [rsp + 0x20], rdi
call qword [rbp - 0x18]
mov qword [rbp + 0x98], rax
test rax, rax
je 0x140002882
mov edx, 0xf8c13f69
mov dword [rsp + 0x20], 0xe77d4075
mov r9d, 0x89740c11
lea rcx, [rsp + 0x40]
mov r8d, 0xfe22c211
call fcn.140001520
mov rcx, qword [rbp + 0x98]
lea r8, [rbp - 0x80]
mov qword [rsp + 0x38], rdi
lea rdx, [rsp + 0x7c]
mov dword [rsp + 0x30], 0x80800000
xor r9d, r9d
mov qword [rsp + 0x28], rdi
mov qword [rsp + 0x20], rdi
call qword [rbp - 0x70]
mov qword [rbp + 0xb8], rax
test rax, rax
je 0x140002882
mov rdx, qword [rbp + 0x1b8]
lea rcx, [rsp + 0x40]
call fcn.1400015a0
mov rax, qword [rbp + 0x1e0]
dec rax
cmp rax, 0xfffffffffffffffd
ja 0x140002882
mov rcx, qword [rbp + 0xb8]
xor r9d, r9d
xor r8d, r8d
mov dword [rsp + 0x20], edi
xor edx, edx
call qword [rbp + 0x68]
test eax, eax
je 0x140002882
mov rcx, qword [rbp + 0xb8]
lea rax, [rsp + 0x78]
lea r9, [rbp + 0x60]
mov qword [rsp + 0x20], rax
lea r8, [rbp + 0x178]
mov edx, 0x20000005
call qword [rbp + 0x38]
test eax, eax
je 0x140002882
mov edx, dword [rbp + 0x178]
lea r9d, [rbx + 4]
xor ecx, ecx
mov r8d, 0x3000
call qword [rbp + 0x198]
mov qword [rbp + 0x170], rax
test rax, rax
je 0x140002882
mov r8d, dword [rbp + 0x178]
lea r9, [rbp + 0x1f8]
mov rcx, qword [rbp + 0xb8]
mov rdx, rax
call qword [rbp - 0x28]
test eax, eax
je 0x140002882
mov eax, dword [rbp + 0x178]
cmp dword [rbp + 0x1f8], eax
jne 0x140002882
mov rcx, qword [rbp + 0x98]
call qword [rbp + 0x180]
mov edx, 0xc095dc51
mov dword [rsp + 0x20], 0xe769d496
mov r9d, 0x1c808aad
lea rcx, [rsp + 0x40]
mov r8d, 0x8e9fd570
call fcn.140001520
mov rcx, qword [rbp + 0xd0]
lea rdx, [rsp + 0x7c]
mov qword [rsp + 0x38], rdi
mov r8d, 0x1bb
mov dword [rsp + 0x30], edi
xor r9d, r9d
mov dword [rsp + 0x28], 3
mov qword [rsp + 0x20], rdi
call qword [rbp - 0x18]
mov qword [rbp + 0x40], rax
test rax, rax
je 0x140002882
mov r8d, dword [rbp + 0x178]
lea r9, [rbp + 0x88]
mov rdx, qword [rbp + 0x170]
mov rcx, qword [rbp + 0x1e0]
mov qword [rsp + 0x20], rdi
call qword [rbp - 0x30]
test eax, eax
je 0x140002882
mov rcx, qword [rbp + 0xb8]
call qword [rbp + 0x180]
mov edx, 0xc625d6e5
mov dword [rsp + 0x20], 0x265e6ade
mov r9d, 0x126b9601
lea rcx, [rsp + 0x40]
mov r8d, 0x8456fee7
call fcn.140001520
mov rcx, qword [rbp + 0x40]
lea r8, [rbp - 0x80]
mov qword [rsp + 0x38], rdi
lea rdx, [rsp + 0x7c]
mov dword [rsp + 0x30], 0x80800000
xor r9d, r9d
mov qword [rsp + 0x28], rdi
mov qword [rsp + 0x20], rdi
call qword [rbp - 0x70]
mov qword [rbp + 0x108], rax
test rax, rax
je 0x140002882
mov rcx, qword [rbp + 0x1e0]
call qword [rbp + 0x1d8]
mov rdx, qword [rbp + 0x1b8]
lea r8d, [rbx + 1]
xor ecx, ecx
call qword [rsp + 0x40]
mov dword [rbp + 0x1a0], eax
test eax, eax
js 0x140002882
mov r8, qword [rbp + 0x1c0]
mov r9d, 0x1040
mov rdx, qword [rbp - 0x48]
xor ecx, ecx
call qword [rbp + 0xe8]
mov rcx, qword [rbp + 0x108]
xor r9d, r9d
xor r8d, r8d
mov dword [rsp + 0x20], edi
xor edx, edx
call qword [rbp + 0x68]
test eax, eax
je 0x140002882
mov rcx, qword [rbp + 0x108]
lea rax, [rbp - 0x10]
lea r9, [rbp + 0x168]
mov qword [rsp + 0x20], rax
lea r8, [rbp + 0xb0]
mov edx, 0x20000005
call qword [rbp + 0x38]
test eax, eax
je 0x140002882
mov edx, dword [rbp + 0xb0]
lea r9d, [rbx + 4]
xor ecx, ecx
mov r8d, 0x3000
call qword [rbp + 0x198]
mov qword [rbp + 0x1f0], rax
test rax, rax
je 0x140002882
mov r8d, dword [rbp + 0xb0]
lea r9, [rbp + 0x58]
mov rcx, qword [rbp + 0x108]
mov rdx, rax
call qword [rbp - 0x28]
test eax, eax
je 0x140002882
mov eax, dword [rbp + 0xb0]
cmp dword [rbp + 0x58], eax
jne 0x140002882
mov rcx, qword [rbp + 0x108]
call qword [rbp + 0x180]
mov rcx, qword [rbp + 0xd0]
call qword [rbp + 0x180]
mov rcx, qword [rbp + 0x40]
call qword [rbp + 0x180]
mov rcx, qword [rbp + 0x1f0]
mov eax, 0x5a4d
mov qword [rbp + 0x30], rcx
cmp word [rcx], ax
jne 0x140002882
movsxd rdx, dword [rcx + 0x3c]
add rdx, rcx
mov qword [rbp + 0x48], rdx
cmp dword [rdx], 0x4550
jne 0x140002882
mov eax, 0x8664
cmp word [rdx + 4], ax
jne 0x140002882
mov eax, 0x20b
cmp word [rdx + 0x18], ax
jne 0x140002882
movzx ecx, word [rdx + 0x14]
lea r9d, [rbx + 0x40]
add rcx, 0x18
mov r8d, 0x3000
add rcx, rdx
mov qword [rbp + 0x148], rcx
xor ecx, ecx
mov edx, dword [rdx + 0x50]
call qword [rbp + 0x198]
mov qword [rbp + 0x158], rax
mov r8, rax
test rax, rax
je 0x140002882
mov rcx, qword [rbp + 0x48]
mov edx, dword [rcx + 0x54]
mov rcx, qword [rbp + 0x1f0]
test rdx, rdx
je 0x14000285a
cmp rdx, 4
jb 0x140002849
mov eax, dword [rcx + rdx - 4]
sub rdx, 4
mov dword [rdx + r8], eax
jmp 0x140002855
movzx eax, byte [rcx + rdx - 1]
dec rdx
mov byte [rdx + r8], al
test rdx, rdx
jne 0x140002835
lea rcx, [rsp + 0x40]
call fcn.140001220
lea rcx, [rsp + 0x40]
call fcn.1400012b0
lea rcx, [rsp + 0x40]
call fcn.1400013a0
lea rcx, [rsp + 0x40]
call fcn.140001450
mov rbx, qword [rsp + 0x538]
mov rax, qword [rsp + 0x48]
mov rdi, qword [rsp + 0x540]
test rax, rax
je 0x1400028a0
xor ecx, ecx
call rax
xor eax, eax
add rsp, 0x520
pop rbp
ret