Function at 0x14002e5f0
Capabilities:
Enumerate pe sections

Disassembly:
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
mov eax, 0xfdd0
call fcn.140048c40
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.140008698
nop
mov rdx, rsi
lea rcx, [rsp + 0xa0]
call fcn.140008698
nop
mov r8, rdi
mov rdx, rbx
lea rcx, [rsp + 0x7b30]
call fcn.140019b78
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.14002698c
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 0x14002e6d5
xor edx, edx
lea rcx, [rsp + 0xf9c0]
call fcn.140027504
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.14002698c
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 0x14002e72d
lea rdx, [0x14004b7a4]
mov rcx, rbx
call fcn.140026dd4
cmp al, bpl
jne 0x14002e763
lea rdx, [0x14004b7a0]
mov rcx, rbx
call fcn.140026dd4
cmp al, bpl
je 0x14002e777
lea rdx, [0x14004b79c]
lea rcx, [rsp + 0xf5c0]
call fcn.140028108
xor edx, edx
lea rcx, [rsp + 0xf5c0]
call fcn.140027504
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.140018ee0
cmp al, bpl
jne 0x14002e814
mov dil, byte [rsp + 0x40]
cmp dil, bpl
jne 0x14002e801
mov edx, 9
lea rcx, [0x140060e68]
call fcn.140014ff8
lea rdx, [rsp + 0xf9c0]
lea rcx, [0x140060e68]
call fcn.1400156ac
mov dil, byte [rsp + 0x40]
lea rcx, [rsp + 0xa0]
call fcn.140001e60
nop
jmp 0x14002f16f
mov r14d, 0xdda
mov ecx, r14d
call fcn.14002fa38
mov rcx, rax
lea rdx, [rsp + 0xf9c0]
call fcn.1400115ec
lea rdx, [rsp + 0xa0]
lea rcx, [rsp + 0x7b30]
call fcn.14002db7c
cmp eax, 2
jne 0x14002e870
lea rcx, [rsp + 0xa0]
call fcn.14001925c
nop
lea rcx, [rsp + 0xa0]
call fcn.140001e60
nop
mov dil, r12b
jmp 0x14002f16f
cmp eax, r12d
jne 0x14002e8ca
lea rcx, [rsp + 0xa0]
call fcn.14001925c
cmp byte [rsi + 0x28f4], bpl
jne 0x14002e8db
mov ecx, 0xdee
call fcn.14002fa38
mov rcx, rax
call fcn.140011640
mov ecx, 0xbba
call fcn.14002fa38
mov rcx, rax
call fcn.140011848
cmp eax, r12d
je 0x14002e8db
lea rcx, [rsp + 0xa0]
call fcn.140001e60
nop
mov dil, r12b
jmp 0x14002f16f
cmp eax, ebp
jne 0x14002e8db
lea rcx, [rsp + 0xa0]
call fcn.14001930c
xor r8d, r8d
xor edx, edx
lea rcx, [rsp + 0x7b30]
call fcn.140019bc0
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.140018ee0
cmp al, bpl
jne 0x14002e976
mov al, byte [rsp + 0x40]
cmp al, bpl
jne 0x14002e95c
mov edx, 9
lea rcx, [0x140060e68]
call fcn.140014ff8
lea rdx, [rsp + 0xf5c0]
lea rcx, [0x140060e68]
call fcn.1400156ac
mov al, byte [rsp + 0x40]
cmp al, bpl
sete dil
lea rcx, [rsp + 0xa0]
call fcn.140001e60
nop
jmp 0x14002f16f
lea rcx, [rsp + 0x7b30]
call fcn.1400194f0
mov rdi, rax
mov ecx, 0xdd8
call fcn.14002fa38
mov rcx, rax
mov rdx, rbx
call fcn.1400115ec
mov ecx, r14d
call fcn.14002fa38
mov rcx, rax
lea rdx, [rsp + 0xf5c0]
call fcn.1400115ec
mov byte [rsp + 0x41], bpl
xor edx, edx
lea rcx, [rsp + 0x7b30]
call fcn.140006e84
cmp al, bpl
je 0x14002ea2c
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 0x14002ea34
mov ecx, 0xddc
call fcn.14002fa38
mov rdx, rax
lea rcx, [rsp + 0x7b4f]
call fcn.140011e9c
nop
lea rcx, [rsp + 0xa0]
call fcn.140001e60
nop
mov dil, r12b
jmp 0x14002f16f
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.14000753c
xor r8d, r8d
lea edx, [r8 + 0x73]
lea rcx, [rsp + 0xa0]
call fcn.14000753c
mov rdx, qword [rsp + 0xe970]
add rdx, 0xd
xor r8d, r8d
lea rcx, [rsp + 0x7b30]
call fcn.140019bc0
movzx edx, word [rsp + 0x47ee]
sub edx, 0xd
movsxd r8, edx
lea rdx, [rsp + 0xa0]
lea rcx, [rsp + 0x7b30]
call fcn.140019f94
xor r8d, r8d
xor edx, edx
lea rcx, [rsp + 0x7b30]
call fcn.140019bc0
mov edx, 0x10000
lea rcx, [rsp + 0x58]
call fcn.140006904
nop
mov rbx, qword [rsp + 0x60]
mov r8, rbx
mov r12, qword [rsp + 0x58]
mov rdx, r12
lea rcx, [rsp + 0x7b30]
call fcn.140019ddc
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 0x14002f02b
mov eax, 0x1000
cmp dx, ax
jae 0x14002f027
lea eax, [rdi - 1]
mov ecx, 0x3fe
cmp ax, cx
ja 0x14002f023
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 0x14002ecfa
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 0x14002ed11
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.14003d240
movzx edx, word [rsp + 0x4808]
mov eax, 0x200
test ax, dx
je 0x14002ede1
lea rcx, [rsp + 0x78]
call fcn.140014b4c
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.140014b98
mov dx, word [rsp + 0x4808]
xor r8d, r8d
jmp 0x14002eded
xor r8d, r8d
mov word [rsp + 0x4c30], r8w
movzx edi, dx
mov eax, 0x400
and di, ax
je 0x14002ee2a
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 0x14002ee36
mov r11d, 0x100
mov r10d, 0x28
movzx eax, word [rsp + 0x480a]
sub eax, 2
cmp eax, r8d
jle 0x14002f01f
mov r9d, 8
test byte [rsp + 0x4808], r9b
je 0x14002ee7b
test r11w, dx
lea ecx, [r9 + 0x18]
cmovne ecx, r10d
cmp di, r8w
je 0x14002ee6f
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.140011f68
not ax
mov word [rsp + 0x6f0a], ax
mov al, byte [rsp + 0x4820]
sub al, 0xf
cmp al, 0x19
ja 0x14002eefb
mov al, byte [rsp + 0x4821]
sub al, 0x30
cmp al, 8
ja 0x14002f001
mov eax, 0x400
cmp word [rsp + 0x4822], ax
ja 0x14002f015
cmp byte [rsp + 0x4814], 0x20
ja 0x14002f00b
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 0x14002ef00
xor edi, edi
mov al, dil
cmp al, dil
je 0x14002f02f
movzx edx, word [rsp + 0x480a]
add rdx, rbp
xor r8d, r8d
lea rcx, [rsp + 0x7b30]
call fcn.140019bc0
movzx edx, word [rsp + 0x4822]
mov byte [rsp + rdx + 0x4830], dil
call fcn.140034a08
cmp word [rsp + 0x4c30], di
jne 0x14002ef59
mov ebx, 1
mov dl, bl
lea rcx, [rsp + 0x4830]
call fcn.140027504
jmp 0x14002ef5e
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 0x14002ef8e
add eax, 8
add ax, word [rsp + 0x4822]
mov word [rsp + 0x480a], ax
lea rcx, [rsp + 0x4830]
call fcn.140034454
mov rdi, rax
mov ecx, 0xdde
call fcn.14002fa38
mov rcx, rax
mov rdx, rdi
call fcn.1400115ec
add r13d, ebx
xor r8d, r8d
lea edx, [r8 + 0x74]
lea rcx, [rsp + 0xa0]
call fcn.14000753c
mov r8d, dword [rsp + 0x480c]
lea rdx, [rsp + 0xa0]
lea rcx, [rsp + 0x7b30]
call fcn.140019f94
xor edi, edi
mov r11d, 0x100
jmp 0x14002f035
xor edi, edi
mov r11d, 0x100
jmp 0x14002f035
xor edi, edi
mov r11d, 0x100
jmp 0x14002f035
xor edi, edi
mov r11d, 0x100
jmp 0x14002f035
xor edi, edi
jmp 0x14002f035
xor edi, edi
jmp 0x14002f035
xor edi, edi
jmp 0x14002f035
xor edi, edi
jmp 0x14002f035
mov r11d, 0x100
inc rbp
cmp rbp, qword [rsp + 0x50]
jge 0x14002f086
xor edx, edx
mov rax, rbp
div r14
cmp rdx, rdi
jne 0x14002eb16
xor r8d, r8d
mov rdx, r15
lea rcx, [rsp + 0x7b30]
call fcn.140019bc0
mov r8, qword [rsp + 0x60]
mov rdx, r12
lea rcx, [rsp + 0x7b30]
call fcn.140019ddc
add r15, r14
mov r11d, 0x100
jmp 0x14002eb16
test sil, 3
mov rsi, qword [rsp + 0x48]
je 0x14002f0a0
mov ebp, 1
or word [rsp + 0x47ec], bp
jmp 0x14002f0a5
mov ebp, 1
cmp r13d, edi
jle 0x14002f0ef
cmp byte [rsp + 0x41], dil
jne 0x14002f0ef
cmp byte [rsi + 0x28f4], dil
jne 0x14002f0ef
mov ecx, 0xde0
call fcn.14002fa38
mov rcx, rax
call fcn.140011640
mov ecx, 0xbba
call fcn.14002fa38
mov rcx, rax
call fcn.140011848
cmp eax, ebp
jne 0x14002f0ef
mov eax, 8
or word [rsp + 0x47ec], ax
cmp r13d, edi
jne 0x14002f108
mov ecx, 0xde2
call fcn.14002fa38
mov rcx, rax
call fcn.1400115ec
jmp 0x14002f150
xor r8d, r8d
xor edx, edx
lea rcx, [rsp + 0xa0]
call fcn.140019bc0
xor r8d, r8d
lea edx, [r8 + 0x72]
lea rcx, [rsp + 0xa0]
call fcn.14000753c
xor r8d, r8d
lea edx, [r8 + 0x73]
lea rcx, [rsp + 0xa0]
call fcn.14000753c
lea rcx, [rsp + 0xa0]
call fcn.14001925c
nop
cmp r12, rdi
je 0x14002f15e
mov rcx, r12
call fcn.14003cf00
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.14003d0b0
mov rbx, qword [rsp + 0xfe28]
add rsp, 0xfdd0
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret