Function at 0x14002e5e4
Capabilities:
Enumerate pe sections

Disassembly:
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
mov eax, 0xfdd0
call fcn.140048bf0
sub rsp, rax
mov qword [rsp + 0x70], 0xfffffffffffffffe
mov qword [rsp + 0xfe28], rbx
mov rax, qword [0x140056850]
xor rax, rsp
mov qword [rsp + 0xfdc0], rax
mov rdi, r8
mov rbx, rdx
mov rsi, rcx
mov qword [rsp + 0x48], rcx
xor ebp, ebp
mov r13d, ebp
mov dword [rsp + 0x44], ebp
mov rdx, rcx
lea rcx, [rsp + 0x7b30]
call fcn.14000869c
nop
mov rdx, rsi
lea rcx, [rsp + 0xa0]
call fcn.14000869c
nop
mov r8, rdi
mov rdx, rbx
lea rcx, [rsp + 0x7b30]
call fcn.140019b7c
lea r12d, [rbp + 1]
mov byte [rsp + 0x7b49], r12b
lea rcx, [rsp + 0xf9c0]
lea r14, [0x140000000]
mov eax, dword [r14 + 0x4cd4c]
mov dword [rcx], eax
movzx eax, word [r14 + 0x4cd50]
mov word [rcx + 4], ax
mov al, byte [r14 + 0x4cd52]
mov byte [rcx + 6], al
mov rcx, rbx
call fcn.140026980
mov r11, rax
lea rdi, [rsp + 0xf9c0]
xor eax, eax
or r15, 0xffffffffffffffff
mov rcx, r15
repne scasb al, byte [rdi]
sub rdi, r12
xor edx, edx
mov cl, byte [r11 + rdx]
mov byte [rdi + rdx], cl
add rdx, r12
test cl, cl
jne 0x14002e6c9
xor edx, edx
lea rcx, [rsp + 0xf9c0]
call fcn.1400274f8
lea rdx, [rsp + 0xf5c0]
mov rax, qword [r14 + 0x4cd40]
mov qword [rdx], rax
mov al, byte [r14 + 0x4cd48]
mov byte [rdx + 8], al
mov rcx, rbx
call fcn.140026980
mov r11, rax
lea rdi, [rsp + 0xf5c0]
xor eax, eax
mov rcx, r15
repne scasb al, byte [rdi]
sub rdi, r12
xor edx, edx
mov cl, byte [r11 + rdx]
mov byte [rdi + rdx], cl
add rdx, r12
test cl, cl
jne 0x14002e721
lea rdx, [0x14004b7a4]
mov rcx, rbx
call fcn.140026dc8
cmp al, bpl
jne 0x14002e757
lea rdx, [0x14004b7a0]
mov rcx, rbx
call fcn.140026dc8
cmp al, bpl
je 0x14002e76b
lea rdx, [0x14004b79c]
lea rcx, [rsp + 0xf5c0]
call fcn.1400280fc
xor edx, edx
lea rcx, [rsp + 0xf5c0]
call fcn.1400274f8
mov dword [rsp + 0x38], ebp
movabs rdi, 0x7fffffff7fffffff
mov qword [rsp + 0x30], rdi
lea rax, [rsp + 0x40]
mov qword [rsp + 0x28], rax
mov eax, dword [rsi + 0x28a4]
mov dword [rsp + 0x20], eax
xor r9d, r9d
lea r8, [rsp + 0xf9c0]
lea rdx, [rsp + 0xa0]
mov rcx, rsi
call fcn.140018ee4
cmp al, bpl
jne 0x14002e808
mov dil, byte [rsp + 0x40]
cmp dil, bpl
jne 0x14002e7f5
mov edx, 9
lea rcx, [0x140060e68]
call fcn.140014ffc
lea rdx, [rsp + 0xf9c0]
lea rcx, [0x140060e68]
call fcn.1400156b0
mov dil, byte [rsp + 0x40]
lea rcx, [rsp + 0xa0]
call fcn.140001e60
nop
jmp 0x14002f163
mov r14d, 0xdda
mov ecx, r14d
call fcn.14002fa2c
mov rcx, rax
lea rdx, [rsp + 0xf9c0]
call fcn.1400115f0
lea rdx, [rsp + 0xa0]
lea rcx, [rsp + 0x7b30]
call fcn.14002db70
cmp eax, 2
jne 0x14002e864
lea rcx, [rsp + 0xa0]
call fcn.140019260
nop
lea rcx, [rsp + 0xa0]
call fcn.140001e60
nop
mov dil, r12b
jmp 0x14002f163
cmp eax, r12d
jne 0x14002e8be
lea rcx, [rsp + 0xa0]
call fcn.140019260
cmp byte [rsi + 0x28f4], bpl
jne 0x14002e8cf
mov ecx, 0xdee
call fcn.14002fa2c
mov rcx, rax
call fcn.140011644
mov ecx, 0xbba
call fcn.14002fa2c
mov rcx, rax
call fcn.14001184c
cmp eax, r12d
je 0x14002e8cf
lea rcx, [rsp + 0xa0]
call fcn.140001e60
nop
mov dil, r12b
jmp 0x14002f163
cmp eax, ebp
jne 0x14002e8cf
lea rcx, [rsp + 0xa0]
call fcn.140019310
xor r8d, r8d
xor edx, edx
lea rcx, [rsp + 0x7b30]
call fcn.140019bc4
mov dword [rsp + 0x38], ebp
mov qword [rsp + 0x30], rdi
lea rax, [rsp + 0x40]
mov qword [rsp + 0x28], rax
mov eax, dword [rsi + 0x28a4]
mov dword [rsp + 0x20], eax
xor r9d, r9d
lea r8, [rsp + 0xf5c0]
lea rdx, [rsp + 0xa0]
mov rcx, rsi
call fcn.140018ee4
cmp al, bpl
jne 0x14002e96a
mov al, byte [rsp + 0x40]
cmp al, bpl
jne 0x14002e950
mov edx, 9
lea rcx, [0x140060e68]
call fcn.140014ffc
lea rdx, [rsp + 0xf5c0]
lea rcx, [0x140060e68]
call fcn.1400156b0
mov al, byte [rsp + 0x40]
cmp al, bpl
sete dil
lea rcx, [rsp + 0xa0]
call fcn.140001e60
nop
jmp 0x14002f163
lea rcx, [rsp + 0x7b30]
call fcn.1400194f4
mov rdi, rax
mov ecx, 0xdd8
call fcn.14002fa2c
mov rcx, rax
mov rdx, rbx
call fcn.1400115f0
mov ecx, r14d
call fcn.14002fa2c
mov rcx, rax
lea rdx, [rsp + 0xf5c0]
call fcn.1400115f0
mov byte [rsp + 0x41], bpl
xor edx, edx
lea rcx, [rsp + 0x7b30]
call fcn.140006e88
cmp al, bpl
je 0x14002ea20
mov byte [rsp + 0x41], r12b
movzx ecx, word [rsp + 0xc27c]
mov word [rsp + 0x47ec], cx
movzx eax, word [rsp + 0xc27e]
mov word [rsp + 0x47ee], ax
cmp byte [rsp + 0xe980], bpl
je 0x14002ea28
mov ecx, 0xddc
call fcn.14002fa2c
mov rdx, rax
lea rcx, [rsp + 0x7b4f]
call fcn.140011ea0
nop
lea rcx, [rsp + 0xa0]
call fcn.140001e60
nop
mov dil, r12b
jmp 0x14002f163
mov cx, word [rsp + 0x47ec]
mov dword [rsp + 0x47f4], ebp
mov word [rsp + 0x47f0], bp
mov eax, 0xff9f
and cx, ax
mov word [rsp + 0x47ec], cx
xor r8d, r8d
lea edx, [r8 + 0x72]
lea rcx, [rsp + 0xa0]
call fcn.140007540
xor r8d, r8d
lea edx, [r8 + 0x73]
lea rcx, [rsp + 0xa0]
call fcn.140007540
mov rdx, qword [rsp + 0xe970]
add rdx, 0xd
xor r8d, r8d
lea rcx, [rsp + 0x7b30]
call fcn.140019bc4
movzx edx, word [rsp + 0x47ee]
sub edx, 0xd
movsxd r8, edx
lea rdx, [rsp + 0xa0]
lea rcx, [rsp + 0x7b30]
call fcn.140019f98
xor r8d, r8d
xor edx, edx
lea rcx, [rsp + 0x7b30]
call fcn.140019bc4
mov edx, 0x10000
lea rcx, [rsp + 0x58]
call fcn.140006908
nop
mov rbx, qword [rsp + 0x60]
mov r8, rbx
mov r12, qword [rsp + 0x58]
mov rdx, r12
lea rcx, [rsp + 0x7b30]
call fcn.140019de0
lea r14, [rbx - 0x1000]
mov r15, r14
lea rax, [rdi - 0x20]
mov qword [rsp + 0x50], rax
mov r11d, 0x100
mov esi, dword [rsp + 0x44]
xor edx, edx
mov rax, rbp
div r14
lea rbx, [r12 + rdx]
movzx ecx, byte [rbx + 2]
mov dword [rsp + 0x4804], ecx
movzx edx, byte [rbx + 6]
imul dx, r11w
movzx eax, byte [rbx + 5]
add dx, ax
mov word [rsp + 0x480a], dx
movzx edi, byte [rbx + 0x1b]
imul di, r11w
movzx eax, byte [rbx + 0x1a]
add di, ax
mov word [rsp + 0x4822], di
cmp ecx, 0x74
jne 0x14002f01f
mov eax, 0x1000
cmp dx, ax
jae 0x14002f01b
lea eax, [rdi - 1]
mov ecx, 0x3fe
cmp ax, cx
ja 0x14002f017
movzx ecx, byte [rbx + 1]
imul cx, r11w
movzx eax, byte [rbx]
add cx, ax
mov word [rsp + 0x4800], cx
movzx r10d, byte [rbx + 4]
imul r10w, r11w
movzx eax, byte [rbx + 3]
add r10w, ax
mov word [rsp + 0x4808], r10w
movzx r8d, byte [rbx + 0xa]
shl r8d, 8
movzx eax, byte [rbx + 9]
add r8d, eax
shl r8d, 8
movzx eax, byte [rbx + 8]
add r8d, eax
shl r8d, 8
movzx eax, byte [rbx + 7]
add r8d, eax
mov dword [rsp + 0x480c], r8d
movzx r9d, byte [rbx + 0xe]
shl r9d, 8
movzx eax, byte [rbx + 0xd]
add r9d, eax
shl r9d, 8
movzx eax, byte [rbx + 0xc]
add r9d, eax
shl r9d, 8
movzx eax, byte [rbx + 0xb]
add r9d, eax
mov dword [rsp + 0x4810], r9d
mov al, byte [rbx + 0xf]
mov byte [rsp + 0x4814], al
movzx ecx, byte [rbx + 0x13]
shl ecx, 8
movzx eax, byte [rbx + 0x12]
add ecx, eax
shl ecx, 8
movzx eax, byte [rbx + 0x11]
add ecx, eax
shl ecx, 8
movzx eax, byte [rbx + 0x10]
add ecx, eax
mov dword [rsp + 0x4818], ecx
movzx ecx, byte [rbx + 0x17]
shl ecx, 8
movzx eax, byte [rbx + 0x16]
add ecx, eax
shl ecx, 8
movzx eax, byte [rbx + 0x15]
add ecx, eax
shl ecx, 8
movzx eax, byte [rbx + 0x14]
add ecx, eax
mov dword [rsp + 0x481c], ecx
mov al, byte [rbx + 0x18]
mov byte [rsp + 0x4820], al
mov al, byte [rbx + 0x19]
mov byte [rsp + 0x4821], al
movzx ecx, byte [rbx + 0x1f]
shl ecx, 8
movzx eax, byte [rbx + 0x1e]
add ecx, eax
shl ecx, 8
movzx eax, byte [rbx + 0x1d]
add ecx, eax
shl ecx, 8
movzx eax, byte [rbx + 0x1c]
add ecx, eax
mov dword [rsp + 0x4824], ecx
and r10w, r11w
je 0x14002ecee
movzx ecx, byte [rbx + 0x23]
shl ecx, 8
movzx eax, byte [rbx + 0x22]
add ecx, eax
shl ecx, 8
movzx eax, byte [rbx + 0x21]
add ecx, eax
shl ecx, 8
movzx eax, byte [rbx + 0x20]
add ecx, eax
mov dword [rsp + 0x4828], ecx
movzx edx, byte [rbx + 0x27]
shl edx, 8
movzx eax, byte [rbx + 0x26]
add edx, eax
shl edx, 8
movzx eax, byte [rbx + 0x25]
add edx, eax
shl edx, 8
movzx eax, byte [rbx + 0x24]
add edx, eax
mov dword [rsp + 0x482c], edx
xor r11d, r11d
jmp 0x14002ed05
xor r11d, r11d
mov edx, r11d
mov dword [rsp + 0x482c], edx
mov ecx, r11d
mov dword [rsp + 0x4828], ecx
shl rcx, 0x20
mov eax, r8d
add rcx, rax
mov qword [rsp + 0x54e0], rcx
mov ecx, edx
shl rcx, 0x20
mov eax, r9d
add rcx, rax
mov qword [rsp + 0x54e8], rcx
mov eax, 0x20
cmp r10w, r11w
lea ecx, [rax + 8]
cmovne eax, ecx
movzx r8d, di
movsxd rdx, eax
add rdx, rbx
lea rcx, [rsp + 0x4830]
call fcn.14003d1f0
movzx edx, word [rsp + 0x4808]
mov eax, 0x200
test ax, dx
je 0x14002edd5
lea rcx, [rsp + 0x78]
call fcn.140014b50
xor eax, eax
or rcx, 0xffffffffffffffff
lea rdi, [rsp + 0x4830]
repne scasb al, byte [rdi]
not rcx
mov eax, 1
sub rcx, rax
add rcx, rax
movzx r9d, word [rsp + 0x4822]
sub r9, rcx
lea r8, [rsp + rcx + 0x4830]
mov eax, 0x400
mov qword [rsp + 0x28], rax
lea rax, [rsp + 0x4c30]
mov qword [rsp + 0x20], rax
lea rdx, [rsp + 0x4830]
lea rcx, [rsp + 0x78]
call fcn.140014b9c
mov dx, word [rsp + 0x4808]
xor r8d, r8d
jmp 0x14002ede1
xor r8d, r8d
mov word [rsp + 0x4c30], r8w
movzx edi, dx
mov eax, 0x400
and di, ax
je 0x14002ee1e
mov r11d, 0x100
test r11w, dx
mov ecx, 0x20
lea r10d, [rcx + 8]
cmovne rcx, r10
movzx eax, word [rsp + 0x4822]
add rax, rcx
mov rax, qword [rax + rbx]
mov qword [rsp + 0x5448], rax
jmp 0x14002ee2a
mov r11d, 0x100
mov r10d, 0x28
movzx eax, word [rsp + 0x480a]
sub eax, 2
cmp eax, r8d
jle 0x14002f013
mov r9d, 8
test byte [rsp + 0x4808], r9b
je 0x14002ee6f
test r11w, dx
lea ecx, [r9 + 0x18]
cmovne ecx, r10d
cmp di, r8w
je 0x14002ee63
add ecx, r9d
movzx eax, word [rsp + 0x4822]
lea eax, [rax + rcx - 2]
movsxd r8, eax
lea rdx, [rbx + 2]
or ecx, 0xffffffff
call fcn.140011f6c
not ax
mov word [rsp + 0x6f0a], ax
mov al, byte [rsp + 0x4820]
sub al, 0xf
cmp al, 0x19
ja 0x14002eeef
mov al, byte [rsp + 0x4821]
sub al, 0x30
cmp al, 8
ja 0x14002eff5
mov eax, 0x400
cmp word [rsp + 0x4822], ax
ja 0x14002f009
cmp byte [rsp + 0x4814], 0x20
ja 0x14002efff
movzx eax, word [rsp + 0x4822]
xor edi, edi
mov byte [rsp + rax + 0x4830], dil
movzx eax, word [rsp + 0x4800]
cmp word [rsp + 0x6f0a], ax
sete al
jmp 0x14002eef4
xor edi, edi
mov al, dil
cmp al, dil
je 0x14002f023
movzx edx, word [rsp + 0x480a]
add rdx, rbp
xor r8d, r8d
lea rcx, [rsp + 0x7b30]
call fcn.140019bc4
movzx edx, word [rsp + 0x4822]
mov byte [rsp + rdx + 0x4830], dil
call fcn.1400349c0
cmp word [rsp + 0x4c30], di
jne 0x14002ef4d
mov ebx, 1
mov dl, bl
lea rcx, [rsp + 0x4830]
call fcn.1400274f8
jmp 0x14002ef52
mov ebx, 1
movzx ecx, word [rsp + 0x4808]
mov eax, ecx
btr eax, 0xc
or esi, eax
mov eax, 0x100
test ax, cx
mov eax, 0x20
lea edx, [rax + 8]
cmovne eax, edx
mov edx, 0x400
test dx, cx
je 0x14002ef82
add eax, 8
add ax, word [rsp + 0x4822]
mov word [rsp + 0x480a], ax
lea rcx, [rsp + 0x4830]
call fcn.14003440c
mov rdi, rax
mov ecx, 0xdde
call fcn.14002fa2c
mov rcx, rax
mov rdx, rdi
call fcn.1400115f0
add r13d, ebx
xor r8d, r8d
lea edx, [r8 + 0x74]
lea rcx, [rsp + 0xa0]
call fcn.140007540
mov r8d, dword [rsp + 0x480c]
lea rdx, [rsp + 0xa0]
lea rcx, [rsp + 0x7b30]
call fcn.140019f98
xor edi, edi
mov r11d, 0x100
jmp 0x14002f029
xor edi, edi
mov r11d, 0x100
jmp 0x14002f029
xor edi, edi
mov r11d, 0x100
jmp 0x14002f029
xor edi, edi
mov r11d, 0x100
jmp 0x14002f029
xor edi, edi
jmp 0x14002f029
xor edi, edi
jmp 0x14002f029
xor edi, edi
jmp 0x14002f029
xor edi, edi
jmp 0x14002f029
mov r11d, 0x100
inc rbp
cmp rbp, qword [rsp + 0x50]
jge 0x14002f07a
xor edx, edx
mov rax, rbp
div r14
cmp rdx, rdi
jne 0x14002eb0a
xor r8d, r8d
mov rdx, r15
lea rcx, [rsp + 0x7b30]
call fcn.140019bc4
mov r8, qword [rsp + 0x60]
mov rdx, r12
lea rcx, [rsp + 0x7b30]
call fcn.140019de0
add r15, r14
mov r11d, 0x100
jmp 0x14002eb0a
test sil, 3
mov rsi, qword [rsp + 0x48]
je 0x14002f094
mov ebp, 1
or word [rsp + 0x47ec], bp
jmp 0x14002f099
mov ebp, 1
cmp r13d, edi
jle 0x14002f0e3
cmp byte [rsp + 0x41], dil
jne 0x14002f0e3
cmp byte [rsi + 0x28f4], dil
jne 0x14002f0e3
mov ecx, 0xde0
call fcn.14002fa2c
mov rcx, rax
call fcn.140011644
mov ecx, 0xbba
call fcn.14002fa2c
mov rcx, rax
call fcn.14001184c
cmp eax, ebp
jne 0x14002f0e3
mov eax, 8
or word [rsp + 0x47ec], ax
cmp r13d, edi
jne 0x14002f0fc
mov ecx, 0xde2
call fcn.14002fa2c
mov rcx, rax
call fcn.1400115f0
jmp 0x14002f144
xor r8d, r8d
xor edx, edx
lea rcx, [rsp + 0xa0]
call fcn.140019bc4
xor r8d, r8d
lea edx, [r8 + 0x72]
lea rcx, [rsp + 0xa0]
call fcn.140007540
xor r8d, r8d
lea edx, [r8 + 0x73]
lea rcx, [rsp + 0xa0]
call fcn.140007540
lea rcx, [rsp + 0xa0]
call fcn.140019260
nop
cmp r12, rdi
je 0x14002f152
mov rcx, r12
call fcn.14003ceb8
nop
lea rcx, [rsp + 0xa0]
call fcn.140001e60
nop
mov dil, bpl
lea rcx, [rsp + 0x7b30]
call fcn.140001e60
mov al, dil
mov rcx, qword [rsp + 0xfdc0]
xor rcx, rsp
call fcn.14003d060
mov rbx, qword [rsp + 0xfe28]
add rsp, 0xfdd0
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret