Function at 0x18001d7b0
Capabilities:
Contain obfuscated stackstrings
Read file on windows

Disassembly:
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rsi
mov qword [rsp + 0x20], rdi
mov qword [rsp + 8], rcx
push rbp
push r14
push r15
lea rbp, [rsp - 0x50]
sub rsp, 0x150
xor r15d, r15d
lea rcx, [rbp - 0x80]
call fcn.18001d110
nop
mov qword [rbp - 0x50], r15
mov qword [rbp - 0x48], r15
mov qword [rbp - 0x40], r15
mov byte [rbp - 0x38], r15b
mov qword [rbp - 0x30], r15
mov qword [rbp - 0x28], r15
mov ecx, 0x48
call fcn.1800c1910
mov qword [rax], rax
mov qword [rax + 8], rax
mov qword [rax + 0x10], rax
mov word [rax + 0x18], 0x101
mov qword [rbp - 0x30], rax
xorps xmm0, xmm0
movdqa xmmword [rbp - 0x20], xmm0
mov ecx, 0x28
call fcn.1800c1910
mov qword [rax], rax
mov qword [rax + 8], rax
mov qword [rbp - 0x20], rax
xor al, al
mov dword [rbp - 0xf], 0x10000
mov byte [rbp - 0xb], al
mov dword [rbp - 8], r15d
movzx eax, al
mov r14d, 1
cmp qword [rbp - 0x50], r15
cmove eax, r14d
mov byte [rbp - 0x10], al
lea rax, [rbp - 0x80]
cmp qword [rbp - 0x68], 0xf
cmova rax, qword [rbp - 0x80]
mov qword [rsp + 0x40], rax
mov rax, qword [rbp - 0x70]
mov qword [rsp + 0x48], rax
call fcn.1800bb8e0
movaps xmm0, xmmword [rsp + 0x40]
movdqa xmmword [rsp + 0x40], xmm0
lea r8, [rsp + 0x40]
mov edx, eax
lea rcx, [rsp + 0x50]
call fcn.180008460
nop
lea rcx, [rsp + 0x50]
call fcn.180008fe0
movzx ebx, al
mov rdx, qword [rsp + 0x68]
cmp rdx, 7
jbe 0x18001d8e7
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x50]
mov rax, rcx
cmp rdx, 0x1000
jb 0x18001d8e2
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18001ddd5
call fcn.1800c17e8
lea rdx, [rbp - 0x80]
test bl, bl
je 0x18001dd02
cmp qword [rbp - 0x68], 0xf
cmova rdx, qword [rbp - 0x80]
mov qword [rbp + 0x70], r15
lea r8, [0x1801f22b8]
lea rcx, [rbp + 0x70]
call fcn.1800daa60
mov rbx, qword [rbp + 0x70]
test rbx, rbx
je 0x18001dcb8
xor edx, edx
mov r8d, 2
mov rcx, rbx
call fcn.1800ceb74
test eax, eax
je 0x18001d93c
mov ebx, 0xfffffffd
jmp 0x18001d9c7
mov rcx, rbx
call fcn.1800c8394
test eax, eax
jns 0x18001d94f
mov ebx, 0xfffffffd
jmp 0x18001d9c7
jne 0x18001d956
mov ebx, r15d
jmp 0x18001d9c7
movsxd rsi, eax
lea rcx, [rsi + 1]
lea rdx, [0x1801b5b68]
call fcn.1800c1d9c
mov rdi, rax
test rax, rax
jne 0x18001d978
mov ebx, 0xfffffffe
jmp 0x18001d9c7
mov byte [rax + rsi], 0
xor r8d, r8d
xor edx, edx
mov rcx, rbx
call fcn.1800ceb74
mov r9, rbx
mov r8, rsi
mov rdx, r14
mov rcx, rdi
call fcn.1800db898
cmp rax, rsi
je 0x18001d9ae
mov rcx, rdi
call fcn.1800c17e8
mov ebx, 0xfffffffd
jmp 0x18001d9c7
mov r8, rax
mov rdx, rdi
lea rcx, [rbp - 0x50]
call fcn.180046340
mov ebx, eax
mov rcx, rdi
call fcn.1800c17e8
mov rcx, qword [rbp + 0x70]
call fcn.1800ce0f4
test ebx, ebx
js 0x18001dcb8
lea rdx, [rbp - 0x50]
lea rcx, reloc.WS2_32.dll_accept
call fcn.18001b030
mov qword [rbp], r15
mov qword [rbp + 8], r15
mov qword [rbp + 0x10], r15
mov byte [rbp + 0x18], 0
mov qword [rbp + 0x20], r15
mov qword [rbp + 0x28], r15
mov ecx, 0x48
call fcn.1800c1910
mov qword [rax], rax
mov qword [rax + 8], rax
mov qword [rax + 0x10], rax
mov word [rax + 0x18], 0x101
mov qword [rbp + 0x20], rax
xorps xmm0, xmm0
movdqa xmmword [rbp + 0x30], xmm0
mov ecx, 0x28
call fcn.1800c1910
mov qword [rax], rax
mov qword [rax + 8], rax
mov qword [rbp + 0x30], rax
xor al, al
mov dword [rbp + 0x41], 0x10000
mov byte [rbp + 0x45], al
mov dword [rbp + 0x48], r15d
movzx eax, al
cmp qword [rbp], 0
cmove eax, r14d
mov byte [rbp + 0x40], al
lea rdx, [rbp]
lea rcx, reloc.WS2_32.dll_accept
call fcn.180019e30
xorps xmm0, xmm0
movdqu xmmword [rbp - 0x60], xmm0
mov ecx, 0x28
call fcn.1800c1910
mov qword [rax], rax
mov qword [rax + 8], rax
mov qword [rbp - 0x60], rax
lea rdx, [rbp - 0x60]
lea rcx, [rbp - 0x50]
call fcn.180037cc0
mov rsi, qword [rbp - 0x60]
mov rdi, qword [rsi]
cmp rdi, rsi
je 0x18001db70
nop word [rax + rax]
mov qword [rsp + 0x40], r15
mov qword [rsp + 0x48], r15
mov ecx, 0x28
call fcn.1800c1910
mov qword [rax], rax
mov qword [rax + 8], rax
mov qword [rsp + 0x40], rax
lea r8, [rsp + 0x40]
mov rdx, qword [rdi + 0x10]
lea rcx, [rbp - 0x50]
call fcn.180037e10
mov r14, qword [rsp + 0x40]
mov rbx, qword [r14]
cmp rbx, r14
je 0x18001db2f
nop
xor r9d, r9d
mov r8, qword [rbx + 0x10]
mov rdx, qword [rdi + 0x10]
lea rcx, [rbp - 0x50]
call fcn.180038050
mov byte [rsp + 0x30], 1
mov qword [rsp + 0x20], r15
mov r9, rax
mov r8, qword [rbx + 0x10]
mov rdx, qword [rdi + 0x10]
lea rcx, [rbp]
call fcn.1800381a0
mov rbx, qword [rbx]
cmp rbx, r14
jne 0x18001daf0
mov r14, qword [rsp + 0x40]
mov rax, qword [r14 + 8]
mov qword [rax], r15
mov rcx, qword [r14]
test rcx, rcx
je 0x18001db55
nop
mov rbx, qword [rcx]
mov edx, 0x28
call fcn.1800c17e8
mov rcx, rbx
test rbx, rbx
jne 0x18001db40
mov edx, 0x28
mov rcx, qword [rsp + 0x40]
call fcn.1800c17e8
mov rdi, qword [rdi]
cmp rdi, rsi
jne 0x18001dab0
lea rdx, [rbp - 0x80]
cmp qword [rbp - 0x68], 0xf
cmova rdx, qword [rbp - 0x80]
mov qword [rbp + 0x70], r15
lea r8, [0x1801f22bc]
lea rcx, [rbp + 0x70]
call fcn.1800daa60
mov rax, qword [rbp + 0x70]
test rax, rax
je 0x18001dbce
lea rcx, vtable.CSimpleIniTempl_char__struct_SI_NoCase_char___class_SI_ConvertA_char__::FileWriter.0
mov qword [rsp + 0x40], rcx
mov qword [rsp + 0x48], rax
lea rdx, [rsp + 0x40]
lea rcx, [rbp]
call fcn.1800465e0
mov ebx, eax
mov rcx, qword [rbp + 0x70]
call fcn.1800ce0f4
test ebx, ebx
js 0x18001dbce
mov dil, 1
jmp 0x18001dc1d
movdqa xmm0, xmmword [0x1801febf0]
movdqu xmmword [rsp + 0x50], xmm0
movdqa xmm1, xmmword [0x1801feca0]
movdqu xmmword [rsp + 0x60], xmm1
mov dword [rsp + 0x70], 0x69746172
mov dword [rsp + 0x74], 0x66206e6f
mov dword [rsp + 0x78], 0x2e656c69
mov word [rsp + 0x7c], 0xa
lea rdx, [rsp + 0x51]
lea rcx, [0x180230a70]
call fcn.180036f70
xor dil, dil
mov rcx, qword [rbp - 0x60]
mov rax, qword [rcx + 8]
mov qword [rax], r15
mov rcx, qword [rcx]
test rcx, rcx
je 0x18001dc45
mov rbx, qword [rcx]
mov edx, 0x28
call fcn.1800c17e8
mov rcx, rbx
test rbx, rbx
jne 0x18001dc30
mov edx, 0x28
mov rcx, qword [rbp - 0x60]
call fcn.1800c17e8
nop
lea rcx, [rbp]
call fcn.180040330
mov rcx, qword [rbp + 0x30]
mov rax, qword [rcx + 8]
mov qword [rax], r15
mov rcx, qword [rcx]
test rcx, rcx
je 0x18001dc85
mov rbx, qword [rcx]
mov edx, 0x28
call fcn.1800c17e8
mov rcx, rbx
test rbx, rbx
jne 0x18001dc70
mov edx, 0x28
mov rcx, qword [rbp + 0x30]
call fcn.1800c17e8
mov r8, qword [rbp + 0x20]
mov r8, qword [r8 + 8]
lea rdx, [rbp + 0x20]
lea rcx, [rbp + 0x20]
call fcn.1800478f0
mov edx, 0x48
mov rcx, qword [rbp + 0x20]
call fcn.1800c17e8
jmp 0x18001dd0a
movdqa xmm0, xmmword [0x1801fec00]
movdqu xmmword [rsp + 0x50], xmm0
movdqa xmm1, xmmword [0x1801fe5b0]
movdqu xmmword [rsp + 0x60], xmm1
mov dword [rsp + 0x70], 0x6e6f6974
mov dword [rsp + 0x74], 0x6c696620
mov dword [rsp + 0x78], 0xa2e65
lea rdx, [rsp + 0x51]
lea rcx, [0x180230a70]
call fcn.180036f70
xor dil, dil
jmp 0x18001dd0a
call fcn.18001d2b0
mov dil, 1
lea rcx, [rbp - 0x50]
call fcn.180040330
mov rcx, qword [rbp - 0x20]
mov rax, qword [rcx + 8]
mov qword [rax], r15
mov rcx, qword [rcx]
test rcx, rcx
je 0x18001dd45
nop word [rax + rax]
mov rbx, qword [rcx]
mov edx, 0x28
call fcn.1800c17e8
mov rcx, rbx
test rbx, rbx
jne 0x18001dd30
mov edx, 0x28
mov rcx, qword [rbp - 0x20]
call fcn.1800c17e8
mov r8, qword [rbp - 0x30]
mov r8, qword [r8 + 8]
lea rdx, [rbp - 0x30]
lea rcx, [rbp - 0x30]
call fcn.1800478f0
mov edx, 0x48
mov rcx, qword [rbp - 0x30]
call fcn.1800c17e8
nop
mov rdx, qword [rbp - 0x68]
cmp rdx, 0xf
jbe 0x18001ddae
inc rdx
mov rcx, qword [rbp - 0x80]
mov rax, rcx
cmp rdx, 0x1000
jb 0x18001dda9
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18001ddcf
call fcn.1800c17e8
movzx eax, dil
lea r11, [rsp + 0x150]
mov rbx, qword [r11 + 0x28]
mov rsi, qword [r11 + 0x30]
mov rdi, qword [r11 + 0x38]
mov rsp, r11
pop r15
pop r14
pop rbp
ret
call fcn.1800e1ef4
nop
call fcn.1800e1ef4
nop
int3