Function at 0x1400190f0
Capabilities:
Write file on windows

Disassembly:
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x2b0]
sub rsp, 0x3b0
mov qword [rsp + 0x50], 0xfffffffffffffffe
mov qword [rsp + 0x400], rbx
mov rax, qword [0x1402aa8c0]
xor rax, rsp
mov qword [rbp + 0x2a0], rax
mov r14, rdx
mov qword [rsp + 0x28], rdx
mov r13, rcx
mov r8, rdx
lea rdx, str._sHunt.dat
lea rcx, [rbp + 0x90]
call fcn.14000a640
lea rdx, [0x140261b0c]
lea rcx, [rbp + 0x90]
call fcn.1401d1788
mov rsi, rax
mov qword [rsp + 0x40], rax
mov rbx, 0xffffffffffffffff
xor edi, edi
test rax, rax
je 0x140019585
lea edx, [rbx + 2]
mov rcx, r13
call fcn.1400301cc
xor r9d, r9d
xor r8d, r8d
mov edx, 0x1004
mov rcx, qword [r13 + 0x558]
call qword [sym.imp.USER32.dll_SendMessageW]
mov dword [rsp + 0x20], eax
mov r9, rsi
lea edx, [rbx + 5]
lea r8d, [rbx + 2]
lea rcx, [rsp + 0x20]
call fcn.1401d3fc8
movsxd rax, dword [rsp + 0x20]
test eax, eax
jle 0x140019339
mov rcx, rax
mov eax, WSAGetLastError
mul rcx
cmovo rax, rbx
mov rcx, rax
call fcn.14002970c
mov r12, rax
test rax, rax
je 0x140019339
movsxd rcx, dword [rsp + 0x20]
imul r8, rcx, 0x6c
xor edx, edx
mov rcx, rax
call fcn.1401cafc0
mov ebx, edi
mov ecx, dword [rsp + 0x20]
test ecx, ecx
jle 0x14001931e
mov r14, r12
nop word [rax + rax]
mov r9d, 2
mov r8d, ebx
lea rdx, [rsp + 0x30]
lea rcx, [r13 + 0x518]
call fcn.1400366f0
mov rsi, rax
mov rdx, qword [rax]
cmp dword [rdx - 8], 1
jle 0x140019244
mov edx, dword [rdx - 0x10]
mov rcx, rax
call fcn.14000b5a0
mov rdx, qword [rsi]
movsxd rax, ebx
imul r8, rax, 0x6c
sub r8, rdx
add r8, r12
nop dword [rax]
nop word [rax + rax]
movzx eax, word [rdx]
mov word [r8 + rdx + 2], ax
lea rdx, [rdx + 2]
test ax, ax
jne 0x140019260
mov rdx, qword [rsp + 0x30]
add rdx, 0xffffffffffffffe8
mov eax, 0xffffffff
lock xadd dword [rdx + 0x10], eax
sub eax, 1
jg 0x140019293
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
mov r9d, 3
mov r8d, ebx
lea rdx, [rsp + 0x38]
lea rcx, [r13 + 0x518]
call fcn.1400366f0
mov rsi, rax
mov rcx, qword [rax]
cmp dword [rcx - 8], 1
jle 0x1400192c7
mov edx, dword [rcx - 0x10]
mov rcx, rax
call fcn.14000b5a0
mov rcx, qword [rsi]
call fcn.1401d3604
mov dword [r14 + 0x68], eax
mov rdx, qword [rsp + 0x38]
add rdx, 0xffffffffffffffe8
mov eax, 0xffffffff
lock xadd dword [rdx + 0x10], eax
sub eax, 1
jg 0x1400192f1
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
mov edx, ebx
lea rcx, [r13 + 0x518]
call fcn.140045da4
mov byte [r14], al
inc ebx
add r14, 0x6c
mov ecx, dword [rsp + 0x20]
cmp ebx, ecx
jl 0x140019210
mov rsi, qword [rsp + 0x40]
mov r14, qword [rsp + 0x28]
movsxd r8, ecx
mov r9, rsi
mov edx, WSAGetLastError
mov rcx, r12
call fcn.1401d3fc8
mov rcx, r12
call fcn.140029704
xor edx, edx
mov r8d, 0x130
lea rcx, [rsp + 0x60]
call fcn.1401cafc0
movzx eax, byte [r13 + 0x138]
mov byte [rsp + 0x60], al
movzx eax, byte [r13 + 0x13c]
mov byte [rsp + 0x61], al
movzx eax, byte [r13 + 0x140]
mov byte [rsp + 0x62], al
movss xmm0, dword [r13 + 0x724]
movss dword [rsp + 0x64], xmm0
movss xmm1, dword [r13 + 0x728]
movss dword [rsp + 0x68], xmm1
movss xmm0, dword [r13 + 0x72c]
movss dword [rsp + 0x6c], xmm0
movzx eax, byte [r13 + 0x144]
mov byte [rsp + 0x70], al
movzx eax, byte [r13 + 0x148]
mov byte [rsp + 0x71], al
movzx eax, byte [r13 + 0x6e8]
mov byte [rsp + 0x72], al
mov eax, dword [r13 + 0x14c]
mov dword [rsp + 0x74], eax
movzx eax, byte [r13 + 0x6ec]
mov byte [rsp + 0x78], al
movzx eax, byte [r13 + 0x6f0]
mov byte [rsp + 0x79], al
movzx eax, byte [r13 + 0x6f4]
mov byte [rsp + 0x7a], al
movzx eax, byte [r13 + 0x6f8]
mov byte [rsp + 0x7b], al
movzx eax, byte [r13 + 0x6fc]
mov byte [rsp + 0x7c], al
movzx eax, byte [r13 + 0x708]
mov byte [rsp + 0x7d], al
movzx eax, byte [r13 + 0x160]
mov byte [rsp + 0x7e], al
movzx eax, byte [r13 + 0x700]
mov byte [rsp + 0x7f], al
movzx eax, byte [r13 + 0x150]
mov byte [rbp - 0x80], al
mov eax, dword [r13 + 0x154]
mov dword [rbp - 0x7c], eax
movzx eax, byte [r13 + 0x704]
mov byte [rbp - 0x78], al
movzx eax, byte [r13 + 0x158]
mov byte [rbp - 0x77], al
mov eax, dword [r13 + 0x15c]
mov dword [rbp - 0x74], eax
movzx eax, byte [r13 + 0x70c]
mov byte [rbp - 0x70], al
mov eax, dword [r13 + 0x164]
mov dword [rbp - 0x6c], eax
mov eax, dword [r13 + 0x168]
mov dword [rbp - 0x68], eax
movzx eax, byte [r13 + 0x710]
mov byte [rbp - 0x64], al
mov eax, dword [r13 + 0x16c]
mov dword [rbp - 0x60], eax
mov eax, dword [r13 + 0x170]
mov dword [rbp - 0x5c], eax
movzx eax, byte [r13 + 0x714]
mov byte [rbp - 0x58], al
movss xmm0, dword [r13 + 0x730]
movss dword [rbp - 0x54], xmm0
movss xmm1, dword [r13 + 0x734]
movss dword [rbp - 0x50], xmm1
movss xmm0, dword [r13 + 0x738]
movss dword [rbp - 0x4c], xmm0
movzx eax, byte [r13 + 0x718]
mov byte [rbp - 0x48], al
movzx eax, byte [r13 + 0x71c]
mov byte [rbp - 0x47], al
movzx eax, byte [r13 + 0x720]
mov byte [rbp - 0x46], al
mov r9, qword [r13 + 0x130]
mov edx, dword [r9 - 0x10]
test edx, edx
je 0x140019532
cmp dword [r9 - 8], 1
jle 0x14001951d
lea rcx, [r13 + 0x130]
call fcn.14000b5a0
mov r9, qword [r13 + 0x130]
lea r8, [0x140261e3c]
mov edx, 0x32
lea rcx, [rbp - 0x44]
call fcn.14000a5e0
movzx eax, byte [r13 + 0x73c]
mov byte [rbp + 0x20], al
mov eax, dword [r13 + 0x744]
mov dword [rbp + 0x24], eax
movzx eax, byte [r13 + 0x740]
mov byte [rbp + 0x28], al
movzx eax, word [r13 + 0x830]
mov word [rbp + 0x2a], ax
mov r9, rsi
mov edx, 0x130
mov r8d, 1
lea rcx, [rsp + 0x60]
call fcn.1401d3fc8
mov rcx, rsi
call fcn.1401d192c
mov rbx, 0xffffffffffffffff
mov r8, r14
lea rdx, str._sParty.dat
lea rcx, [rbp + 0x90]
call fcn.14000a640
lea rdx, [0x140261b0c]
lea rcx, [rbp + 0x90]
call fcn.1401d1788
mov r12, rax
mov qword [rsp + 0x28], rax
test rax, rax
je 0x140019700
xor r9d, r9d
xor r8d, r8d
mov edx, 0x1004
mov rcx, qword [r13 + 0x640]
call qword [sym.imp.USER32.dll_SendMessageW]
mov dword [rsp + 0x24], eax
mov r9, r12
mov edx, 4
lea r8d, [rdx - 3]
lea rcx, [rsp + 0x24]
call fcn.1401d3fc8
movsxd rax, dword [rsp + 0x24]
test eax, eax
jle 0x1400196f8
mov rcx, rax
mov eax, 0x66
mul rcx
cmovo rax, rbx
mov rcx, rax
call fcn.14002970c
mov r15, rax
movsxd rcx, dword [rsp + 0x24]
imul r8, rcx, 0x66
xor edx, edx
mov rcx, rax
call fcn.1401cafc0
mov ecx, dword [rsp + 0x24]
test ecx, ecx
jle 0x1400196dd
mov rsi, r15
mov r12, 0xffffffffffffffff
mov r9d, 1
mov r8d, edi
lea rdx, [rsp + 0x48]
lea rcx, [r13 + 0x600]
call fcn.1400366f0
mov rbx, rax
mov r9, qword [rax]
cmp dword [r9 - 8], 1
jle 0x140019677
mov edx, dword [r9 - 0x10]
mov rcx, rax
call fcn.14000b5a0
mov r9, qword [rbx]
movsxd rax, edi
imul rcx, rax, 0x66
add rcx, 2
add rcx, r15
lea r8, [0x140261e3c]
mov edx, 0x32
call fcn.14000a5e0
nop
mov rdx, qword [rsp + 0x48]
add rdx, 0xffffffffffffffe8
mov eax, r12d
lock xadd dword [rdx + 0x10], eax
sub eax, 1
jg 0x1400196b6
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
mov edx, edi
lea rcx, [r13 + 0x600]
call fcn.140045da4
mov byte [rsi], al
inc edi
add rsi, 0x66
mov ecx, dword [rsp + 0x24]
cmp edi, ecx
jl 0x140019641
mov r12, qword [rsp + 0x28]
movsxd r8, ecx
mov r9, r12
mov edx, 0x66
mov rcx, r15
call fcn.1401d3fc8
mov rcx, r15
call fcn.140029704
mov rcx, r12
call fcn.1401d192c
mov rcx, qword [rbp + 0x2a0]
xor rcx, rsp
call fcn.1401c8d10
mov rbx, qword [rsp + 0x400]
add rsp, 0x3b0
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret