Function at 0x14005da9c
Capabilities:
Enumerate pe sections

Disassembly:
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
mov eax, 0x16800
call fcn.1400ba8b0
sub rsp, rax
mov qword [rsp + 0x88], 0xfffffffffffffffe
mov qword [rsp + 0x16858], rbx
mov rax, qword [0x1400e0920]
xor rax, rsp
mov qword [rsp + 0x167f0], rax
mov rbp, r8
mov qword [rsp + 0x68], r8
mov rbx, rdx
mov rsi, rcx
mov qword [rsp + 0x60], rcx
xor r12d, r12d
mov dword [rsp + 0x44], r12d
mov dword [rsp + 0x48], r12d
mov rdx, rcx
lea rcx, [rsp + 0x9c20]
call fcn.14000d7e4
nop
mov rdx, rsi
lea rcx, [rsp + 0xb0]
call fcn.14000d7e4
nop
mov r8, rbp
mov rdx, rbx
lea rcx, [rsp + 0x9c20]
call fcn.140030720
lea r15d, [r12 + 1]
mov byte [rsp + 0x9c39], r15b
mov word [rsp + 0x147d0], r12w
mov word [rsp + 0x13fb0], r12w
lea rcx, [rsp + 0x13ba0]
lea r13, [0x140000000]
mov eax, dword [r13 + 0xc83ec]
mov dword [rcx], eax
movzx eax, word [r13 + 0xc83f0]
mov word [rcx + 4], ax
mov al, byte [r13 + 0xc83f2]
mov byte [rcx + 6], al
mov rcx, rbx
call fcn.140052a24
mov r11, rax
lea rdi, [rsp + 0x13ba0]
xor eax, eax
or r14, 0xffffffffffffffff
mov rcx, r14
repne scasb al, byte [rdi]
sub rdi, r15
xor edx, edx
mov cl, byte [r11 + rdx]
mov byte [rdi + rdx], cl
add rdx, r15
test cl, cl
jne 0x14005dba0
xor edx, edx
lea rcx, [rsp + 0x13ba0]
call fcn.140053a98
lea rdx, [rsp + 0x13790]
mov rax, qword [r13 + 0xc83e0]
mov qword [rdx], rax
mov al, byte [r13 + 0xc83e8]
mov byte [rdx + 8], al
mov rcx, rbx
call fcn.140052a24
mov r11, rax
lea rdi, [rsp + 0x13790]
xor eax, eax
mov rcx, r14
repne scasb al, byte [rdi]
sub rdi, r15
xor r8d, r8d
mov dl, byte [r11 + r8]
mov byte [rdi + r8], dl
add r8, r15
test dl, dl
jne 0x14005dbf9
lea rdx, [0x1400c3144]
mov rcx, rbx
call fcn.140052ea4
cmp al, r12b
jne 0x14005dc30
lea rdx, [0x1400c3140]
mov rcx, rbx
call fcn.140052ea4
cmp al, r12b
je 0x14005dc44
lea rdx, [0x1400c313c]
lea rcx, [rsp + 0x13790]
call fcn.140054978
xor edx, edx
lea rcx, [rsp + 0x13790]
call fcn.140053a98
cmp word [rbp], r12w
je 0x14005dd57
mov rcx, r12
movzx eax, word [rcx + r13 + 0xc83d0]
mov word [rsp + rcx + 0x13fb0], ax
add rcx, 2
cmp ax, r12w
jne 0x14005dc61
mov rcx, rbp
call fcn.140052abc
mov r11, rax
lea rdi, [rsp + 0x13fb0]
xor eax, eax
mov rcx, r14
repne scasw ax, word [rdi]
xor edx, edx
movzx ecx, word [r11 + rdx]
mov word [rdi + rdx - 2], cx
add rdx, 2
test cx, cx
jne 0x14005dc99
xor edx, edx
lea rcx, [rsp + 0x13fb0]
call fcn.14005258c
mov rdx, r12
movzx eax, word [rdx + r13 + 0xc83b8]
mov word [rsp + rdx + 0x147d0], ax
add rdx, 2
cmp ax, r12w
jne 0x14005dcbe
mov rcx, rbp
call fcn.140052abc
mov r11, rax
lea rdi, [rsp + 0x147d0]
xor eax, eax
mov rcx, r14
repne scasw ax, word [rdi]
sub rdi, 2
xor edx, edx
movzx ecx, word [r11 + rdx]
mov word [rdi + rdx], cx
add rdx, 2
test cx, cx
jne 0x14005dcfa
lea rdx, [0x1400c4070]
mov rcx, rbp
call fcn.140052ee0
cmp al, r12b
jne 0x14005dd34
lea rdx, [0x1400c4068]
mov rcx, rbp
call fcn.140052ee0
cmp al, r12b
je 0x14005dd48
lea rdx, [0x1400c40f0]
lea rcx, [rsp + 0x147d0]
call fcn.1400549fc
xor edx, edx
lea rcx, [rsp + 0x147d0]
call fcn.14005258c
mov dword [rsp + 0x38], r12d
movabs rbx, 0x7fffffff7fffffff
mov qword [rsp + 0x30], rbx
lea rax, [rsp + 0x40]
mov qword [rsp + 0x28], rax
mov eax, dword [rsi + 0x3924]
mov dword [rsp + 0x20], eax
lea r9, [rsp + 0x13fb0]
lea r8, [rsp + 0x13ba0]
lea rdx, [rsp + 0xb0]
mov rcx, rsi
call fcn.14002f9e8
cmp al, r12b
jne 0x14005ddf3
mov dil, byte [rsp + 0x40]
cmp dil, r12b
jne 0x14005dde0
mov edx, 9
lea rcx, [0x1400ec668]
call fcn.140028648
lea r8, [rsp + 0x13fb0]
lea rdx, [rsp + 0x13ba0]
lea rcx, [0x1400ec668]
call fcn.140028f24
mov dil, byte [rsp + 0x40]
lea rcx, [rsp + 0xb0]
call fcn.140002070
nop
jmp 0x14005e833
mov r13d, 0x267
mov ecx, r13d
call fcn.140061d2c
mov r8, rax
lea r9, [rsp + 0x13fb0]
mov r14d, 0x600
mov rdx, r14
lea rcx, [rsp + 0x14ff0]
call fcn.14005b860
lea rcx, [rsp + 0x14ff0]
call fcn.140087804
lea rdx, [rsp + 0xb0]
lea rcx, [rsp + 0x9c20]
call fcn.14005cf54
cmp eax, r12d
jne 0x14005de7f
lea rcx, [rsp + 0xb0]
call fcn.1400300e4
cmp rax, r12
jle 0x14005de69
lea rcx, [rsp + 0xb0]
call fcn.14002fe00
nop
lea rcx, [rsp + 0xb0]
call fcn.140002070
nop
mov dil, r15b
jmp 0x14005e833
cmp eax, 2
jne 0x14005dee5
lea rcx, [rsp + 0xb0]
call fcn.14002fe00
cmp byte [rsi + 0x3974], r12b
jne 0x14005def7
mov ecx, 0x262
call fcn.140061d2c
mov rdi, rax
mov ecx, 0x275
call fcn.140061d2c
mov rdx, rax
mov r9d, 0x24
mov r8, rdi
mov rcx, qword [0x1400fec08]
call qword [sym.imp.USER32.dll_MessageBoxW]
cmp eax, 6
je 0x14005def7
lea rcx, [rsp + 0xb0]
call fcn.140002070
nop
mov dil, r15b
jmp 0x14005e833
cmp eax, r15d
jne 0x14005def7
lea rcx, [rsp + 0xb0]
call fcn.14002feb8
xor r8d, r8d
xor edx, edx
lea rcx, [rsp + 0x9c20]
call fcn.140030768
mov dword [rsp + 0x38], r12d
mov qword [rsp + 0x30], rbx
lea rax, [rsp + 0x40]
mov qword [rsp + 0x28], rax
mov eax, dword [rsi + 0x3924]
mov dword [rsp + 0x20], eax
lea r9, [rsp + 0x147d0]
lea r8, [rsp + 0x13790]
lea rdx, [rsp + 0xb0]
mov rcx, rsi
call fcn.14002f9e8
cmp al, r12b
jne 0x14005dfa0
mov al, byte [rsp + 0x40]
cmp al, r12b
jne 0x14005df86
mov edx, 9
lea rcx, [0x1400ec668]
call fcn.140028648
lea r8, [rsp + 0x147d0]
lea rdx, [rsp + 0x13790]
lea rcx, [0x1400ec668]
call fcn.140028f24
mov al, byte [rsp + 0x40]
cmp al, r12b
sete dil
lea rcx, [rsp + 0xb0]
call fcn.140002070
nop
jmp 0x14005e833
lea rcx, [rsp + 0x9c20]
call fcn.1400300e4
mov rdi, rax
mov ecx, r13d
call fcn.140061d2c
mov r8, rax
lea r9, [rsp + 0x147d0]
mov rdx, r14
lea rcx, [rsp + 0x14ff0]
call fcn.14005b860
lea rcx, [rsp + 0x14ff0]
call fcn.140087804
mov byte [rsp + 0x41], r12b
xor edx, edx
lea rcx, [rsp + 0x9c20]
call fcn.14000bbb8
cmp al, r12b
je 0x14005e059
mov byte [rsp + 0x41], r15b
movzx eax, word [rsp + 0x10448]
mov word [rsp + 0x68d8], ax
movzx eax, word [rsp + 0x1044a]
mov word [rsp + 0x68da], ax
cmp byte [rsp + 0x12b48], r12b
je 0x14005e059
mov ecx, 0x272
call fcn.140061d2c
mov rdx, rax
lea rcx, [rsp + 0xa040]
call fcn.1400964ac
nop
lea rcx, [rsp + 0xb0]
call fcn.140002070
nop
mov dil, r15b
jmp 0x14005e833
mov dword [rsp + 0x68e0], r12d
mov word [rsp + 0x68dc], r12w
mov eax, dword [rsp + 0x68d8]
and eax, 0xffffff9f
mov word [rsp + 0x68d8], ax
xor r8d, r8d
lea edx, [r8 + 0x72]
lea rcx, [rsp + 0xb0]
call fcn.14000c0d0
xor r8d, r8d
lea edx, [r8 + 0x73]
lea rcx, [rsp + 0xb0]
call fcn.14000c0d0
mov rdx, qword [rsp + 0x12b38]
add rdx, 0xd
xor r8d, r8d
lea rcx, [rsp + 0x9c20]
call fcn.140030768
movzx edx, word [rsp + 0x68da]
sub edx, 0xd
movsxd r8, edx
lea rdx, [rsp + 0xb0]
lea rcx, [rsp + 0x9c20]
call fcn.140030af8
xor r8d, r8d
xor edx, edx
lea rcx, [rsp + 0x9c20]
call fcn.140030768
mov edx, 0x10000
lea rcx, [rsp + 0x70]
call fcn.14000b858
nop
mov rbx, qword [rsp + 0x78]
mov r8, rbx
mov r13, qword [rsp + 0x70]
mov rdx, r13
lea rcx, [rsp + 0x9c20]
call fcn.1400309a4
lea r14, [rbx - 0x1000]
mov qword [rsp + 0x50], r14
lea rax, [rdi - 0x20]
mov qword [rsp + 0x58], rax
mov r11d, 0x28
mov rbp, rbx
mov esi, dword [rsp + 0x48]
mov eax, dword [0x1401179b0]
add eax, r15d
mov dword [0x1401179b0], eax
test eax, 0xfffff
jne 0x14005e165
call fcn.14006bfb0
mov r11d, 0x28
xor edx, edx
mov rax, r12
div r14
lea rbx, [r13 + rdx]
lea r15, [rbx + 2]
movzx ecx, byte [r15]
mov dword [rsp + 0x68ec], ecx
movzx edx, byte [rbx + 6]
shl edx, 8
movzx eax, byte [rbx + 5]
add edx, eax
mov word [rsp + 0x68f2], dx
movzx edi, byte [rbx + 0x1b]
shl edi, 8
movzx eax, byte [rbx + 0x1a]
add edi, eax
mov word [rsp + 0x690a], di
cmp ecx, 0x74
jne 0x14005e69e
mov eax, 0x1000
cmp dx, ax
jae 0x14005e695
lea eax, [rdi - 1]
mov ecx, 0x3fe
cmp ax, cx
ja 0x14005e68c
movzx ecx, byte [rbx + 1]
shl ecx, 8
movzx eax, byte [rbx]
add ecx, eax
mov word [rsp + 0x68e8], cx
movzx r10d, byte [rbx + 4]
shl r10d, 8
movzx eax, byte [rbx + 3]
add r10d, eax
mov word [rsp + 0x68f0], 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 + 0x68f4], 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 + 0x68f8], r9d
mov al, byte [rbx + 0xf]
mov byte [rsp + 0x68fc], 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 + 0x6900], 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 + 0x6904], ecx
mov al, byte [rbx + 0x18]
mov byte [rsp + 0x6908], al
mov al, byte [rbx + 0x19]
mov byte [rsp + 0x6909], 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 + 0x690c], ecx
mov eax, 0x100
and r10w, ax
je 0x14005e345
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 + 0x6910], 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 + 0x6914], edx
jmp 0x14005e359
xor eax, eax
mov edx, eax
mov dword [rsp + 0x6914], eax
mov ecx, eax
mov dword [rsp + 0x6910], ecx
shl rcx, 0x20
mov eax, r8d
add rcx, rax
mov qword [rsp + 0x75c8], rcx
mov ecx, edx
shl rcx, 0x20
mov eax, r9d
add rcx, rax
mov qword [rsp + 0x75d0], rcx
mov eax, 0x20
xor ecx, ecx
cmp r10w, cx
cmovne eax, r11d
movzx r8d, di
movsxd rdx, eax
add rdx, rbx
lea rcx, [rsp + 0x6918]
call fcn.1400a8e30
movzx edx, word [rsp + 0x68f0]
mov eax, 0x200
test ax, dx
je 0x14005e42b
lea rcx, [rsp + 0x90]
call fcn.140025e9c
xor eax, eax
or rcx, 0xffffffffffffffff
lea rdi, [rsp + 0x6918]
repne scasb al, byte [rdi]
not rcx
mov eax, 1
sub rcx, rax
add rcx, rax
movzx r9d, word [rsp + 0x690a]
sub r9, rcx
lea r8, [rsp + rcx + 0x6918]
mov qword [rsp + 0x28], 0x400
lea rax, [rsp + 0x6d18]
mov qword [rsp + 0x20], rax
lea rdx, [rsp + 0x6918]
lea rcx, [rsp + 0x90]
call fcn.140025ee8
mov dx, word [rsp + 0x68f0]
jmp 0x14005e435
xor eax, eax
mov word [rsp + 0x6d18], ax
movzx edi, dx
mov eax, 0x400
and di, ax
je 0x14005e472
mov r9d, 0x100
test r9w, dx
mov ecx, 0x20
lea r8d, [rcx + 8]
cmovne rcx, r8
movzx eax, word [rsp + 0x690a]
add rax, rcx
mov rax, qword [rax + rbx]
mov qword [rsp + 0x7530], rax
jmp 0x14005e47e
mov r8d, 0x28
mov r9d, 0x100
movzx eax, word [rsp + 0x68f2]
sub eax, 2
xor ebx, ebx
cmp eax, ebx
jle 0x14005e685
test byte [rsp + 0x68f0], 8
je 0x14005e4bc
test r9w, dx
lea ecx, [rbx + 0x20]
cmovne ecx, r8d
cmp di, bx
je 0x14005e4b0
add ecx, 8
movzx eax, word [rsp + 0x690a]
lea eax, [rax + rcx - 2]
movsxd r8, eax
mov rdx, r15
or ecx, 0xffffffff
call fcn.1400205fc
not eax
mov word [rsp + 0x8ff2], ax
mov al, byte [rsp + 0x6908]
sub al, 0xf
cmp al, 0x19
ja 0x14005e539
mov al, byte [rsp + 0x6909]
sub al, 0x30
cmp al, 8
ja 0x14005e6bc
mov r15d, 0x400
cmp word [rsp + 0x690a], r15w
ja 0x14005e6ae
cmp byte [rsp + 0x68fc], 0x20
ja 0x14005e6b5
movzx eax, word [rsp + 0x690a]
mov byte [rsp + rax + 0x6918], bl
movzx eax, word [rsp + 0x68e8]
cmp word [rsp + 0x8ff2], ax
sete al
jmp 0x14005e541
mov al, bl
mov r15d, 0x400
cmp al, bl
je 0x14005e6a7
movzx edx, word [rsp + 0x68f2]
add rdx, r12
xor r8d, r8d
lea rcx, [rsp + 0x9c20]
call fcn.140030768
movzx edx, word [rsp + 0x690a]
mov byte [rsp + rdx + 0x6918], bl
call fcn.14006bfb0
cmp word [rsp + 0x6d18], bx
jne 0x14005e599
mov edi, 1
mov dl, dil
lea rcx, [rsp + 0x6918]
call fcn.140053a98
jmp 0x14005e59e
mov edi, 1
movzx ecx, word [rsp + 0x68f0]
mov eax, ecx
btr eax, 0xc
or esi, eax
mov eax, 0x100
test ax, cx
mov edx, 0x20
lea eax, [rdx + 8]
cmovne edx, eax
test r15w, cx
je 0x14005e5ca
add edx, 8
movzx eax, word [rsp + 0x690a]
add eax, edx
mov word [rsp + 0x68f2], ax
lea rdx, [rsp + 0x15bf0]
lea rcx, [rsp + 0x6918]
call sub.USER32.dll_OemToCharA
mov r9, r15
lea r8, [rsp + 0x15ff0]
lea rdx, [rsp + 0x6d18]
lea rcx, [rsp + 0x15bf0]
call fcn.140052988
mov ecx, 0x268
call fcn.140061d2c
mov r8, rax
lea r9, [rsp + 0x15ff0]
mov edx, 0x600
lea rcx, [rsp + 0x14ff0]
call fcn.14005b860
lea rcx, [rsp + 0x14ff0]
call fcn.140087804
mov r15d, dword [rsp + 0x44]
add r15d, edi
mov dword [rsp + 0x44], r15d
xor r8d, r8d
lea edx, [r8 + 0x74]
lea rcx, [rsp + 0xb0]
call fcn.14000c0d0
mov r8d, dword [rsp + 0x68f4]
lea rdx, [rsp + 0xb0]
lea rcx, [rsp + 0x9c20]
call fcn.140030af8
jmp 0x14005e6c1
mov r15d, dword [rsp + 0x44]
jmp 0x14005e6c1
mov r15d, dword [rsp + 0x44]
xor ebx, ebx
jmp 0x14005e6c1
mov r15d, dword [rsp + 0x44]
xor ebx, ebx
jmp 0x14005e6c1
mov r15d, dword [rsp + 0x44]
xor ebx, ebx
jmp 0x14005e6c1
mov r15d, dword [rsp + 0x44]
jmp 0x14005e6c1
mov r15d, dword [rsp + 0x44]
jmp 0x14005e6c1
mov r15d, dword [rsp + 0x44]
jmp 0x14005e6c1
mov r15d, dword [rsp + 0x44]
mov ecx, 1
add r12, rcx
cmp r12, qword [rsp + 0x58]
jge 0x14005e724
xor edx, edx
mov rax, r12
div r14
cmp rdx, rbx
mov r15, rcx
lea r11d, [rcx + 0x27]
jne 0x14005e144
xor r8d, r8d
mov rbx, qword [rsp + 0x50]
mov rdx, rbx
lea rcx, [rsp + 0x9c20]
call fcn.140030768
mov r8, rbp
mov rdx, r13
lea rcx, [rsp + 0x9c20]
call fcn.1400309a4
add rbx, r14
mov qword [rsp + 0x50], rbx
lea r11d, [r15 + 0x27]
jmp 0x14005e144
test sil, 3
mov rsi, qword [rsp + 0x60]
mov rbp, qword [rsp + 0x68]
je 0x14005e745
mov eax, dword [rsp + 0x68d8]
or eax, ecx
mov word [rsp + 0x68d8], ax
cmp r15d, ebx
jle 0x14005e79f
cmp byte [rsp + 0x41], bl
jne 0x14005e79f
cmp byte [rsi + 0x3974], bl
jne 0x14005e79f
mov ecx, 0x262
call fcn.140061d2c
mov rdi, rax
mov ecx, 0x273
call fcn.140061d2c
mov rdx, rax
mov r9d, 0x24
mov r8, rdi
mov rcx, qword [0x1400fec08]
call qword [sym.imp.USER32.dll_MessageBoxW]
cmp eax, 6
jne 0x14005e79f
mov eax, dword [rsp + 0x68d8]
or eax, 8
mov word [rsp + 0x68d8], ax
cmp r15d, ebx
jne 0x14005e7cc
mov ecx, 0x274
call fcn.140061d2c
mov rdx, rax
mov rcx, rbp
call fcn.1400964ac
mov edx, 0xa
lea rcx, [0x1400ec668]
call fcn.140028648
jmp 0x14005e814
xor r8d, r8d
xor edx, edx
lea rcx, [rsp + 0xb0]
call fcn.140030768
xor r8d, r8d
lea edx, [r8 + 0x72]
lea rcx, [rsp + 0xb0]
call fcn.14000c0d0
xor r8d, r8d
lea edx, [r8 + 0x73]
lea rcx, [rsp + 0xb0]
call fcn.14000c0d0
lea rcx, [rsp + 0xb0]
call fcn.14002fe00
nop
cmp r13, rbx
je 0x14005e822
mov rcx, r13
call fcn.1400a86a4
nop
lea rcx, [rsp + 0xb0]
call fcn.140002070
nop
mov dil, 1
lea rcx, [rsp + 0x9c20]
call fcn.140002070
mov al, dil
mov rcx, qword [rsp + 0x167f0]
xor rcx, rsp
call fcn.1400a8530
mov rbx, qword [rsp + 0x16858]
add rsp, 0x16800
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret