Function at 0x1400af430
Capabilities:
Enumerate pe sections

Disassembly:
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rbp
mov qword [rsp + 0x20], rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x90
mov rax, qword [0x1401a2920]
xor rax, rsp
mov qword [rsp + 0x80], rax
mov rbx, rcx
mov r12, qword [rcx + 0x30]
xorps xmm0, xmm0
movdqu xmmword [rsp + 0x20], xmm0
xorps xmm1, xmm1
movdqu xmmword [rsp + 0x30], xmm1
movdqu xmmword [rsp + 0x40], xmm0
xor ebp, ebp
mov qword [rsp + 0x50], rbp
mov dword [rsp + 0x58], ebp
mov edi, ebp
lea rsi, [rsp + 0x60]
mov rdx, r12
nop word [rax + rax]
mov ecx, dword [rbx + 0x20]
cmp ecx, dword [rbx + 0x24]
jae 0x1400afbd4
cmp ecx, 0x80000
jae 0x1400af4ff
mov r9, qword [rbx + 8]
mov rax, qword [rbx + 0x10]
sub rax, r9
cmp rax, rcx
jbe 0x1400afc1b
movzx eax, byte [r9 + rcx]
mov byte [rsi], al
lea eax, [rcx + 1]
mov dword [rbx + 0x20], eax
inc rdx
mov qword [rbx + 0x30], rdx
cmp eax, 0x80000
jb 0x1400af4f3
mov rcx, rbx
call fcn.14002b0a0
test al, al
je 0x1400af4ff
mov rdx, qword [rbx + 0x30]
inc edi
inc rsi
cmp edi, 4
jae 0x1400af502
jmp 0x1400af4a0
cmp edi, 4
jne 0x1400afbd4
lea r8, [rsp + 0x20]
lea rdx, [rsp + 0x60]
call fcn.1400af150
xor r8d, r8d
mov rdx, r12
mov rcx, rbx
test eax, eax
jne 0x1400af52e
call fcn.14002aff0
jmp 0x1400afbe2
call fcn.14002aff0
cmp dword [rsp + 0x2c], 3
jne 0x1400afbe2
xorps xmm0, xmm0
mov r15d, dword [rsp + 0x58]
movdqu xmmword [rsp + 0x68], xmm0
mov rsi, rbp
mov qword [rsp + 0x78], rbp
mov r13, rbp
test r15d, r15d
je 0x1400af58e
mov edx, r15d
lea rcx, [rsp + 0x68]
call fcn.14002ac80
mov r8d, r15d
xor edx, edx
mov rdi, qword [rsp + 0x68]
mov rcx, rdi
call fcn.140100000
lea rax, [r15 + rdi]
mov qword [rsp + 0x70], rax
mov r13, rdi
mov rsi, qword [rsp + 0x78]
jmp 0x1400af593
mov rdi, qword [rsp + 0x68]
test r15d, r15d
je 0x1400af5f4
mov r14, r13
nop dword [rax + rax]
mov eax, dword [rbx + 0x20]
cmp eax, dword [rbx + 0x24]
jae 0x1400af5f4
cmp eax, 0x80000
jae 0x1400af5f4
mov ecx, eax
mov rdx, qword [rbx + 8]
mov rax, qword [rbx + 0x10]
sub rax, rdx
cmp rax, rcx
jbe 0x1400afc15
movzx eax, byte [rdx + rcx]
mov byte [r14], al
inc dword [rbx + 0x20]
inc qword [rbx + 0x30]
cmp dword [rbx + 0x20], 0x80000
jb 0x1400af5e8
mov rcx, rbx
call fcn.14002b0a0
test al, al
je 0x1400af5f4
inc ebp
inc r14
cmp ebp, r15d
jae 0x1400af5fd
jmp 0x1400af5a0
cmp ebp, r15d
jb 0x1400afb95
xor r8d, r8d
mov rdx, r12
mov rcx, rbx
call fcn.14002aff0
mov ecx, 0x11
cmp dword [rsp + 0x24], 0
je 0x1400af626
mov eax, 9
cmp dword [rsp + 0x20], 1
cmove ecx, eax
jmp 0x1400af637
mov eax, 0x20
cmp dword [rsp + 0x20], 1
cmove rax, rcx
mov rcx, rax
lea rdx, [rcx + r13]
cmp byte [rdx + 4], 0x58
jne 0x1400afb5b
cmp byte [rdx + 5], 0x69
jne 0x1400afb5b
cmp byte [rdx + 6], 0x6e
jne 0x1400afb5b
cmp byte [rdx + 7], 0x67
jne 0x1400afb5b
movzx r8d, byte [rdx + 8]
shl r8d, 8
movzx eax, byte [rdx + 9]
or r8d, eax
shl r8d, 8
movzx eax, byte [rdx + 0xa]
or r8d, eax
shl r8d, 8
movzx eax, byte [rdx + 0xb]
or r8d, eax
mov dword [rbx + 0x124], r8d
add rdx, 0xc
test r8b, 1
je 0x1400af6c2
movzx ecx, byte [rdx]
shl ecx, 8
movzx eax, byte [rdx + 1]
or ecx, eax
shl ecx, 8
movzx eax, byte [rdx + 2]
or ecx, eax
shl ecx, 8
movzx eax, byte [rdx + 3]
or ecx, eax
mov dword [rbx + 0x128], ecx
add rdx, 4
test r8b, 2
je 0x1400af6f0
movzx ecx, byte [rdx]
shl ecx, 8
movzx eax, byte [rdx + 1]
or ecx, eax
shl ecx, 8
movzx eax, byte [rdx + 2]
or ecx, eax
shl ecx, 8
movzx eax, byte [rdx + 3]
or ecx, eax
mov dword [rbx + 0x12c], ecx
add rdx, 4
test r8b, 4
je 0x1400afae5
movzx eax, byte [rdx]
mov byte [rbx + 0x134], al
movzx eax, byte [rdx + 1]
mov byte [rbx + 0x135], al
movzx eax, byte [rdx + 2]
mov byte [rbx + 0x136], al
movzx eax, byte [rdx + 3]
mov byte [rbx + 0x137], al
movzx eax, byte [rdx + 4]
mov byte [rbx + 0x138], al
movzx eax, byte [rdx + 5]
mov byte [rbx + 0x139], al
movzx eax, byte [rdx + 6]
mov byte [rbx + 0x13a], al
movzx eax, byte [rdx + 7]
mov byte [rbx + 0x13b], al
movzx eax, byte [rdx + 8]
mov byte [rbx + 0x13c], al
movzx eax, byte [rdx + 9]
mov byte [rbx + 0x13d], al
movzx eax, byte [rdx + 0xa]
mov byte [rbx + 0x13e], al
movzx eax, byte [rdx + 0xb]
mov byte [rbx + 0x13f], al
movzx eax, byte [rdx + 0xc]
mov byte [rbx + 0x140], al
movzx eax, byte [rdx + 0xd]
mov byte [rbx + 0x141], al
movzx eax, byte [rdx + 0xe]
mov byte [rbx + 0x142], al
movzx eax, byte [rdx + 0xf]
mov byte [rbx + 0x143], al
movzx eax, byte [rdx + 0x10]
mov byte [rbx + 0x144], al
movzx eax, byte [rdx + 0x11]
mov byte [rbx + 0x145], al
movzx eax, byte [rdx + 0x12]
mov byte [rbx + 0x146], al
movzx eax, byte [rdx + 0x13]
mov byte [rbx + 0x147], al
movzx eax, byte [rdx + 0x14]
mov byte [rbx + 0x148], al
movzx eax, byte [rdx + 0x15]
mov byte [rbx + 0x149], al
movzx eax, byte [rdx + 0x16]
mov byte [rbx + 0x14a], al
movzx eax, byte [rdx + 0x17]
mov byte [rbx + 0x14b], al
movzx eax, byte [rdx + 0x18]
mov byte [rbx + 0x14c], al
movzx eax, byte [rdx + 0x19]
mov byte [rbx + 0x14d], al
movzx eax, byte [rdx + 0x1a]
mov byte [rbx + 0x14e], al
movzx eax, byte [rdx + 0x1b]
mov byte [rbx + 0x14f], al
movzx eax, byte [rdx + 0x1c]
mov byte [rbx + 0x150], al
movzx eax, byte [rdx + 0x1d]
mov byte [rbx + 0x151], al
movzx eax, byte [rdx + 0x1e]
mov byte [rbx + 0x152], al
movzx eax, byte [rdx + 0x1f]
mov byte [rbx + 0x153], al
movzx eax, byte [rdx + 0x20]
mov byte [rbx + 0x154], al
movzx eax, byte [rdx + 0x21]
mov byte [rbx + 0x155], al
movzx eax, byte [rdx + 0x22]
mov byte [rbx + 0x156], al
movzx eax, byte [rdx + 0x23]
mov byte [rbx + 0x157], al
movzx eax, byte [rdx + 0x24]
mov byte [rbx + 0x158], al
movzx eax, byte [rdx + 0x25]
mov byte [rbx + 0x159], al
movzx eax, byte [rdx + 0x26]
mov byte [rbx + 0x15a], al
movzx eax, byte [rdx + 0x27]
mov byte [rbx + 0x15b], al
movzx eax, byte [rdx + 0x28]
mov byte [rbx + 0x15c], al
movzx eax, byte [rdx + 0x29]
mov byte [rbx + 0x15d], al
movzx eax, byte [rdx + 0x2a]
mov byte [rbx + 0x15e], al
movzx eax, byte [rdx + 0x2b]
mov byte [rbx + 0x15f], al
movzx eax, byte [rdx + 0x2c]
mov byte [rbx + 0x160], al
movzx eax, byte [rdx + 0x2d]
mov byte [rbx + 0x161], al
movzx eax, byte [rdx + 0x2e]
mov byte [rbx + 0x162], al
movzx eax, byte [rdx + 0x2f]
mov byte [rbx + 0x163], al
movzx eax, byte [rdx + 0x30]
mov byte [rbx + 0x164], al
movzx eax, byte [rdx + 0x31]
mov byte [rbx + 0x165], al
movzx eax, byte [rdx + 0x32]
mov byte [rbx + 0x166], al
movzx eax, byte [rdx + 0x33]
mov byte [rbx + 0x167], al
movzx eax, byte [rdx + 0x34]
mov byte [rbx + 0x168], al
movzx eax, byte [rdx + 0x35]
mov byte [rbx + 0x169], al
movzx eax, byte [rdx + 0x36]
mov byte [rbx + 0x16a], al
movzx eax, byte [rdx + 0x37]
mov byte [rbx + 0x16b], al
movzx eax, byte [rdx + 0x38]
mov byte [rbx + 0x16c], al
movzx eax, byte [rdx + 0x39]
mov byte [rbx + 0x16d], al
movzx eax, byte [rdx + 0x3a]
mov byte [rbx + 0x16e], al
movzx eax, byte [rdx + 0x3b]
mov byte [rbx + 0x16f], al
movzx eax, byte [rdx + 0x3c]
mov byte [rbx + 0x170], al
movzx eax, byte [rdx + 0x3d]
mov byte [rbx + 0x171], al
movzx eax, byte [rdx + 0x3e]
mov byte [rbx + 0x172], al
movzx eax, byte [rdx + 0x3f]
mov byte [rbx + 0x173], al
movzx eax, byte [rdx + 0x40]
mov byte [rbx + 0x174], al
movzx eax, byte [rdx + 0x41]
mov byte [rbx + 0x175], al
movzx eax, byte [rdx + 0x42]
mov byte [rbx + 0x176], al
movzx eax, byte [rdx + 0x43]
mov byte [rbx + 0x177], al
movzx eax, byte [rdx + 0x44]
mov byte [rbx + 0x178], al
movzx eax, byte [rdx + 0x45]
mov byte [rbx + 0x179], al
movzx eax, byte [rdx + 0x46]
mov byte [rbx + 0x17a], al
movzx eax, byte [rdx + 0x47]
mov byte [rbx + 0x17b], al
movzx eax, byte [rdx + 0x48]
mov byte [rbx + 0x17c], al
movzx eax, byte [rdx + 0x49]
mov byte [rbx + 0x17d], al
movzx eax, byte [rdx + 0x4a]
mov byte [rbx + 0x17e], al
movzx eax, byte [rdx + 0x4b]
mov byte [rbx + 0x17f], al
movzx eax, byte [rdx + 0x4c]
mov byte [rbx + 0x180], al
movzx eax, byte [rdx + 0x4d]
mov byte [rbx + 0x181], al
movzx eax, byte [rdx + 0x4e]
mov byte [rbx + 0x182], al
movzx eax, byte [rdx + 0x4f]
mov byte [rbx + 0x183], al
movzx eax, byte [rdx + 0x50]
mov byte [rbx + 0x184], al
movzx eax, byte [rdx + 0x51]
mov byte [rbx + 0x185], al
movzx eax, byte [rdx + 0x52]
mov byte [rbx + 0x186], al
movzx eax, byte [rdx + 0x53]
mov byte [rbx + 0x187], al
movzx eax, byte [rdx + 0x54]
mov byte [rbx + 0x188], al
movzx eax, byte [rdx + 0x55]
mov byte [rbx + 0x189], al
movzx eax, byte [rdx + 0x56]
mov byte [rbx + 0x18a], al
movzx eax, byte [rdx + 0x57]
mov byte [rbx + 0x18b], al
movzx eax, byte [rdx + 0x58]
mov byte [rbx + 0x18c], al
movzx eax, byte [rdx + 0x59]
mov byte [rbx + 0x18d], al
movzx eax, byte [rdx + 0x5a]
mov byte [rbx + 0x18e], al
movzx eax, byte [rdx + 0x5b]
mov byte [rbx + 0x18f], al
movzx eax, byte [rdx + 0x5c]
mov byte [rbx + 0x190], al
movzx eax, byte [rdx + 0x5d]
mov byte [rbx + 0x191], al
movzx eax, byte [rdx + 0x5e]
mov byte [rbx + 0x192], al
movzx eax, byte [rdx + 0x5f]
mov byte [rbx + 0x193], al
movzx eax, byte [rdx + 0x60]
mov byte [rbx + 0x194], al
movzx eax, byte [rdx + 0x61]
mov byte [rbx + 0x195], al
movzx eax, byte [rdx + 0x62]
mov byte [rbx + 0x196], al
movzx eax, byte [rdx + 0x63]
mov byte [rbx + 0x197], al
add rdx, 0x64
mov dword [rbx + 0x130], 0xffffffff
test r8b, 8
je 0x1400afb19
movzx ecx, byte [rdx]
shl ecx, 8
movzx eax, byte [rdx + 1]
or ecx, eax
shl ecx, 8
movzx eax, byte [rdx + 2]
or ecx, eax
shl ecx, 8
movzx eax, byte [rdx + 3]
or ecx, eax
mov dword [rbx + 0x130], ecx
test rdi, rdi
je 0x1400afb51
sub rsi, rdi
mov rax, rdi
cmp rsi, 0x1000
jb 0x1400afb46
add rsi, 0x27
mov rdi, qword [rdi - 8]
sub rax, rdi
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400afbcd
mov rdx, rsi
mov rcx, rdi
call fcn.1400feb20
mov eax, 1
jmp 0x1400afbe4
test rdi, rdi
je 0x1400afbe2
sub rsi, rdi
mov rax, rdi
cmp rsi, 0x1000
jb 0x1400afb88
add rsi, 0x27
mov rdi, qword [rdi - 8]
sub rax, rdi
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400afbcd
mov rdx, rsi
mov rcx, rdi
call fcn.1400feb20
jmp 0x1400afbe2
xor r8d, r8d
mov rdx, r12
mov rcx, rbx
call fcn.14002aff0
nop
test rdi, rdi
je 0x1400afbe2
sub rsi, rdi
mov rax, rdi
cmp rsi, 0x1000
jb 0x1400afb88
add rsi, 0x27
mov rdi, qword [rdi - 8]
sub rax, rdi
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x1400afb88
call qword [0x140118bb8]
int3
xor r8d, r8d
mov rdx, r12
mov rcx, rbx
call fcn.14002aff0
xor eax, eax
mov rcx, qword [rsp + 0x80]
xor rcx, rsp
call fcn.1400feb00
lea r11, [rsp + 0x90]
mov rbx, qword [r11 + 0x38]
mov rbp, qword [r11 + 0x40]
mov rsi, qword [r11 + 0x48]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rdi
ret
call fcn.140011a70
nop
call fcn.140011a70
int3