Function at 0x140021130
Capabilities:
Read .ini file
Read file on windows

Disassembly:
mov rax, rsp
push rbp
push r12
push r13
push r14
push r15
lea rbp, [rax - 0x518]
sub rsp, 0x5f0
mov qword [rbp - 0x48], 0xfffffffffffffffe
mov qword [rax + 0x10], rbx
mov qword [rax + 0x18], rsi
mov qword [rax + 0x20], rdi
mov rax, qword [0x1402aa8c0]
xor rax, rsp
mov qword [rbp + 0x4e0], rax
mov r14, rcx
mov qword [rbp - 0x78], rcx
mov r9d, dword [0x1402c0c3c]
lea r8, [0x1402bf7e0]
lea rdx, str._sSetting_dSchedule.dat
lea rcx, [rbp + 0x1f0]
call fcn.14000a640
lea rdx, [0x140261acc]
lea rcx, [rbp + 0x1f0]
call fcn.1401d1788
mov r15, rax
mov qword [rsp + 0x70], rax
test rax, rax
je 0x1400222aa
xor edi, edi
mov dword [rsp + 0x50], edi
mov r9, rax
lea edx, [rdi + 4]
lea r8d, [rdi + 1]
lea rcx, [rsp + 0x50]
call fcn.1401d1c20
xor r9d, r9d
xor r8d, r8d
mov edx, 0x1009
mov rcx, qword [r14 + 0x260]
call qword [sym.imp.USER32.dll_SendMessageW]
lea r13d, [rdi + 2]
lea r12, [rdi - 1]
movsxd rax, dword [rsp + 0x50]
test eax, eax
jle 0x140021349
mov rcx, rax
mov eax, 0x66
mul rcx
cmovo rax, r12
mov rcx, rax
call fcn.14002970c
mov rbx, rax
mov qword [rsp + 0x58], rax
test rax, rax
je 0x140021349
movsxd rcx, dword [rsp + 0x50]
imul r8, rcx, 0x66
xor edx, edx
mov rcx, rax
call fcn.1401cafc0
movsxd r8, dword [rsp + 0x50]
mov r9, r15
lea edx, [rdi + 0x66]
mov rcx, rbx
call fcn.1401d1c20
mov esi, edi
cmp dword [rsp + 0x50], edi
jle 0x140021341
lea r15, [r14 + 0x220]
mov r12, rbx
mov r14, rbx
nop dword [rax]
mov qword [rsp + 0x38], rdi
mov dword [rsp + 0x30], edi
mov dword [rsp + 0x28], edi
mov dword [rsp + 0x20], edi
lea r9, [0x140262214]
mov r8d, esi
mov edx, 1
mov rcx, r15
call fcn.140036950
lea ebx, [rsi + 1]
mov r8d, ebx
lea rdx, [0x140264a88]
lea rcx, [rbp + 0x400]
call fcn.14000a640
lea r9, [rbp + 0x400]
mov r8d, 1
mov edx, esi
mov rcx, r15
call fcn.140036c6c
movsxd rax, esi
imul rcx, rax, 0x66
lea r9, [r14 + 2]
add r9, rcx
mov r8d, r13d
mov edx, esi
mov rcx, r15
call fcn.140036c6c
movzx r8d, byte [r12]
mov edx, esi
mov rcx, r15
call fcn.140045dfc
mov qword [rsp + 0x40], rdi
mov dword [rsp + 0x38], edi
mov dword [rsp + 0x30], edi
mov dword [rsp + 0x28], edi
mov qword [rsp + 0x20], rdi
mov r9d, 4
xor r8d, r8d
mov edx, esi
mov rcx, r15
call fcn.140036b74
mov esi, ebx
lea r12, [r12 + 0x66]
cmp ebx, dword [rsp + 0x50]
jl 0x140021270
mov r14, qword [rbp - 0x78]
mov r12, 0xffffffffffffffff
mov rbx, qword [rsp + 0x58]
mov r15, qword [rsp + 0x70]
mov rcx, rbx
call fcn.140029704
mov dword [rsp + 0x50], edi
mov r9, r15
mov edx, 4
lea r8d, [rdx - 3]
lea rcx, [rsp + 0x50]
call fcn.1401d1c20
xor r9d, r9d
xor r8d, r8d
mov edx, 0x1009
mov rcx, qword [r14 + 0x348]
call qword [sym.imp.USER32.dll_SendMessageW]
movsxd rax, dword [rsp + 0x50]
test eax, eax
jle 0x1400214a1
mov rcx, rax
mov eax, 0x66
mul rcx
cmovo rax, r12
mov rcx, rax
call fcn.14002970c
mov rbx, rax
mov qword [rsp + 0x58], rax
test rax, rax
je 0x1400214a1
movsxd rcx, dword [rsp + 0x50]
imul r8, rcx, 0x66
xor edx, edx
mov rcx, rax
call fcn.1401cafc0
movsxd r8, dword [rsp + 0x50]
mov r9, r15
mov edx, 0x66
mov rcx, rbx
call fcn.1401d1c20
mov esi, edi
cmp dword [rsp + 0x50], edi
jle 0x140021499
lea r15, [r14 + 0x308]
mov r12, rbx
mov r14, rbx
mov qword [rsp + 0x38], rdi
mov dword [rsp + 0x30], edi
mov dword [rsp + 0x28], edi
mov dword [rsp + 0x20], edi
lea r9, [0x140262214]
mov r8d, esi
mov edx, 1
mov rcx, r15
call fcn.140036950
lea ebx, [rsi + 1]
mov r8d, ebx
lea rdx, [0x140264a88]
lea rcx, [rbp + 0x470]
call fcn.14000a640
lea r9, [rbp + 0x470]
mov r8d, 1
mov edx, esi
mov rcx, r15
call fcn.140036c6c
movsxd rax, esi
imul rcx, rax, 0x66
lea r9, [r14 + 2]
add r9, rcx
mov r8d, r13d
mov edx, esi
mov rcx, r15
call fcn.140036c6c
movzx r8d, byte [r12]
mov edx, esi
mov rcx, r15
call fcn.140045dfc
mov esi, ebx
lea r12, [r12 + 0x66]
cmp ebx, dword [rsp + 0x50]
jl 0x1400213f1
mov r14, qword [rbp - 0x78]
mov r12, 0xffffffffffffffff
mov rbx, qword [rsp + 0x58]
mov r15, qword [rsp + 0x70]
mov rcx, rbx
call fcn.140029704
mov dword [rsp + 0x54], 0x190
mov r9, r15
mov edx, 4
lea r8d, [rdx - 3]
lea rcx, [rsp + 0x54]
call fcn.1401d1c20
xorps xmm0, xmm0
movsd qword [rbp - 0x58], xmm0
mov dword [rbp - 0x50], edi
mov r8d, dword [rsp + 0x54]
mov eax, 0x51eb851f
imul r8d
mov ecx, edx
sar ecx, 5
mov eax, ecx
shr eax, 0x1f
add ecx, eax
imul eax, ecx, 0x64
sub r8d, eax
mov eax, 0x88888889
imul r8d
add edx, r8d
sar edx, 5
mov eax, edx
shr eax, 0x1f
add edx, eax
imul eax, edx, 0x3c
sub r8d, eax
mov eax, 0x2aaaaaab
imul ecx
sar edx, 2
mov eax, edx
shr eax, 0x1f
add edx, eax
lea eax, [rdx + rdx*2]
shl eax, 3
sub ecx, eax
xor r9d, r9d
mov edx, ecx
lea rcx, [rbp - 0x58]
call fcn.1400165c0
lea rcx, [r14 + 0x138]
lea rdx, [rbp - 0x58]
call fcn.140046020
mov r9d, dword [0x1402c0c3c]
lea r8, [0x1402bf7e0]
lea rdx, str._sSetting_dSchedule.ini
lea rcx, [rbp + 0x1f0]
call fcn.14000a640
lea r9, [rbp + 0x1f0]
xor r8d, r8d
lea rdx, str.Actor
lea rcx, str.Create
call qword [sym.imp.KERNEL32.dll_GetPrivateProfileIntW]
and eax, 0x80000003
jge 0x140021588
dec eax
or eax, 0xfffffffc
inc eax
mov dword [r14 + 0x5c0], eax
lea r9, [rbp + 0x1f0]
xor r8d, r8d
lea rdx, str.Class
lea rcx, str.Create
call qword [sym.imp.KERNEL32.dll_GetPrivateProfileIntW]
and eax, 0x80000001
jge 0x1400215bb
dec eax
or eax, 0xfffffffe
inc eax
mov dword [r14 + 0x5c4], eax
lea r9, [rbp + 0x1f0]
xor r8d, r8d
lea rdx, str.Snake
lea rcx, str.Dungeon
call qword [sym.imp.KERNEL32.dll_GetPrivateProfileIntW]
mov dword [r14 + 0x5c8], eax
mov rcx, r15
call fcn.1401d192c
mov esi, edi
xor r9d, r9d
xor r8d, r8d
mov edx, 0x1004
mov rcx, qword [r14 + 0x260]
call qword [sym.imp.USER32.dll_SendMessageW]
test eax, eax
jle 0x140021a89
lea r15, [r14 + 0x220]
nop dword [rax + rax]
mov r9d, r13d
mov r8d, esi
lea rdx, [rbp - 0x70]
mov rcx, r15
call fcn.1400366f0
mov rbx, rax
mov r9, qword [rax]
cmp dword [r9 - 8], 1
jle 0x14002164e
mov edx, dword [r9 - 0x10]
mov rcx, rax
call fcn.14000b5a0
mov r9, qword [rbx]
lea r8, [0x1402bf7e0]
lea rdx, str._sSchedule_sMain.dat
lea rcx, [rbp + 0x1f0]
call fcn.14000a640
nop
mov rdx, qword [rbp - 0x70]
add rdx, 0xffffffffffffffe8
mov eax, r12d
lock xadd dword [rdx + 0x10], eax
sub eax, 1
jg 0x140021687
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
lea rdx, [0x140261acc]
lea rcx, [rbp + 0x1f0]
call fcn.1401d1788
mov rbx, rax
test rax, rax
je 0x140021a67
xorps xmm0, xmm0
xor eax, eax
movups xmmword [rbp - 0x40], xmm0
movups xmmword [rbp - 0x30], xmm0
movups xmmword [rbp - 0x20], xmm0
movups xmmword [rbp - 0x10], xmm0
movups xmmword [rbp], xmm0
movups xmmword [rbp + 0x10], xmm0
movups xmmword [rbp + 0x20], xmm0
mov qword [rbp + 0x30], rax
mov r9, rbx
lea edx, [rax + 0x78]
lea r8d, [rax + 1]
lea rcx, [rbp - 0x40]
call fcn.1401d1c20
mov rcx, rbx
call fcn.1401d192c
cmp byte [rbp - 0x40], 0
je 0x14002173e
movzx r9d, word [rbp - 0x3e]
mov eax, 0x38e38e39
mul r9d
shr edx, 1
lea eax, [rdx + rdx*8]
sub r9d, eax
inc r9d
mov eax, edx
imul r8, rax, 0x64
lea rax, [0x1402ae250]
add r8, rax
lea rdx, str._s_02d
lea rcx, [rbp + 0x1f0]
call fcn.14000a640
lea r9, [rbp + 0x1f0]
mov r8d, 3
mov edx, esi
mov rcx, r15
call fcn.140036c6c
cmp byte [rbp - 0x3c], 0
je 0x1400217e5
call fcn.1400347dc
mov rcx, rax
test rax, rax
je 0x1400222f0
mov rax, qword [rax]
call qword [rax + 0x18]
add rax, 0x18
mov qword [rsp + 0x78], rax
mov r8d, 0xeac4
lea rcx, [rsp + 0x78]
call fcn.14000ef10
mov rbx, qword [rsp + 0x78]
cmp dword [rbx - 8], 1
jle 0x140021795
mov edx, dword [rbx - 0x10]
lea rcx, [rsp + 0x78]
call fcn.14000b5a0
mov rbx, qword [rsp + 0x78]
movzx r8d, byte [rbp - 0x3b]
inc r8d
mov r9, rbx
lea rdx, str._d_s
lea rcx, [rbp + 0x1f0]
call fcn.14000a640
lea r9, [rbp + 0x1f0]
mov r8d, 4
mov edx, esi
mov rcx, r15
call fcn.140036c6c
nop
lea rdx, [rbx - 0x18]
mov eax, r12d
lock xadd dword [rdx + 0x10], eax
sub eax, 1
jg 0x1400217e5
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
cmp byte [rbp - 0x3a], 0
je 0x14002197f
call fcn.1400347dc
mov rcx, rax
test rax, rax
je 0x1400222f0
mov rax, qword [rax]
call qword [rax + 0x18]
add rax, 0x18
mov qword [rsp + 0x60], rax
lea rcx, [rsp + 0x60]
cmp byte [rbp - 0x39], 0
jne 0x14002190b
mov r8d, 0xead2
call fcn.14000ef10
mov rbx, qword [rsp + 0x60]
cmp dword [rbx - 8], 1
jle 0x140021846
mov edx, dword [rbx - 0x10]
lea rcx, [rsp + 0x60]
call fcn.14000b5a0
mov rbx, qword [rsp + 0x60]
mov r10d, dword [rbp - 0x34]
mov eax, 0x51eb851f
imul r10d
mov ecx, edx
sar ecx, 5
mov eax, ecx
shr eax, 0x1f
add ecx, eax
mov r9d, dword [rbp - 0x38]
mov eax, 0x51eb851f
imul r9d
mov r8d, edx
sar r8d, 5
mov eax, r8d
shr eax, 0x1f
add r8d, eax
imul eax, ecx, 0x64
sub r10d, eax
mov eax, 0x88888889
imul r10d
add edx, r10d
sar edx, 5
mov eax, edx
shr eax, 0x1f
add edx, eax
imul eax, edx, 0x3c
sub r10d, eax
mov eax, 0x2aaaaaab
imul ecx
sar edx, 2
mov eax, edx
shr eax, 0x1f
add edx, eax
lea eax, [rdx + rdx*2]
shl eax, 3
sub ecx, eax
imul eax, r8d, 0x64
sub r9d, eax
mov eax, 0x88888889
imul r9d
add edx, r9d
sar edx, 5
mov eax, edx
shr eax, 0x1f
add edx, eax
imul eax, edx, 0x3c
sub r9d, eax
mov eax, 0x2aaaaaab
imul r8d
sar edx, 2
mov eax, edx
shr eax, 0x1f
add edx, eax
lea eax, [rdx + rdx*2]
shl eax, 3
sub r8d, eax
mov dword [rsp + 0x28], r10d
mov dword [rsp + 0x20], ecx
mov rdx, rbx
lea rcx, [rbp + 0x1f0]
call fcn.14000a640
jmp 0x14002194d
mov r8d, 0xeac7
call fcn.14000ef10
mov rbx, qword [rsp + 0x60]
cmp dword [rbx - 8], 1
jle 0x140021933
mov edx, dword [rbx - 0x10]
lea rcx, [rsp + 0x60]
call fcn.14000b5a0
mov rbx, qword [rsp + 0x60]
mov r9, rbx
mov r8d, dword [rbp - 0x30]
lea rdx, str._d_s
lea rcx, [rbp + 0x1f0]
call fcn.14000a640
lea r9, [rbp + 0x1f0]
mov r8d, 5
mov edx, esi
mov rcx, r15
call fcn.140036c6c
nop
lea rdx, [rbx - 0x18]
mov eax, r12d
lock xadd dword [rdx + 0x10], eax
sub eax, 1
jg 0x14002197f
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
movzx r8d, byte [rbp - 0x3a]
lea rdx, [0x140264a88]
lea rcx, [rbp + 0x1f0]
call fcn.14000a640
lea r9, [rbp + 0x1f0]
mov r8d, 6
mov edx, esi
mov rcx, r15
call fcn.140036c6c
movzx r8d, byte [rbp - 0x39]
lea rdx, [0x140264a88]
lea rcx, [rbp + 0x1f0]
call fcn.14000a640
lea r9, [rbp + 0x1f0]
mov r8d, 7
mov edx, esi
mov rcx, r15
call fcn.140036c6c
mov r8d, dword [rbp - 0x38]
lea rdx, [0x140264a88]
lea rcx, [rbp + 0x1f0]
call fcn.14000a640
lea r9, [rbp + 0x1f0]
mov r8d, 8
mov edx, esi
mov rcx, r15
call fcn.140036c6c
mov r8d, dword [rbp - 0x34]
lea rdx, [0x140264a88]
lea rcx, [rbp + 0x1f0]
call fcn.14000a640
lea r9, [rbp + 0x1f0]
mov r8d, 9
mov edx, esi
mov rcx, r15
call fcn.140036c6c
mov r8d, dword [rbp - 0x30]
lea rdx, [0x140264a88]
lea rcx, [rbp + 0x1f0]
call fcn.14000a640
lea r9, [rbp + 0x1f0]
mov r8d, 0xa
mov edx, esi
mov rcx, r15
call fcn.140036c6c
inc esi
xor r9d, r9d
xor r8d, r8d
mov edx, 0x1004
mov rcx, qword [r14 + 0x260]
call qword [sym.imp.USER32.dll_SendMessageW]
cmp esi, eax
jl 0x140021620
mov esi, edi
xor r9d, r9d
xor r8d, r8d
mov edx, 0x1004
mov rcx, qword [r14 + 0x348]
call qword [sym.imp.USER32.dll_SendMessageW]
test eax, eax
jle 0x140021e55
lea r15, [r14 + 0x308]
mov r9d, r13d
mov r8d, esi
lea rdx, [rbp - 0x68]
mov rcx, r15
call fcn.1400366f0
mov rbx, rax
mov r9, qword [rax]
cmp dword [r9 - 8], 1
jle 0x140021ae0
mov edx, dword [r9 - 0x10]
mov rcx, rax
call fcn.14000b5a0
mov r9, qword [rbx]
lea r8, [0x1402bf7e0]
lea rdx, str._sSchedule_sMain.dat
lea rcx, [rbp + 0x1f0]
call fcn.14000a640
nop
mov rdx, qword [rbp - 0x68]
add rdx, 0xffffffffffffffe8
mov eax, r12d
lock xadd dword [rdx + 0x10], eax
sub eax, 1
jg 0x140021b19
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
lea rdx, [0x140261acc]
lea rcx, [rbp + 0x1f0]
call fcn.1401d1788
mov rbx, rax
test rax, rax
je 0x140021e33
xorps xmm0, xmm0
xor eax, eax
movups xmmword [rbp + 0x80], xmm0
movups xmmword [rbp + 0x90], xmm0
movups xmmword [rbp + 0xa0], xmm0
movups xmmword [rbp + 0xb0], xmm0
movups xmmword [rbp + 0xc0], xmm0
movups xmmword [rbp + 0xd0], xmm0
movups xmmword [rbp + 0xe0], xmm0
mov qword [rbp + 0xf0], rax
mov r9, rbx
lea edx, [rax + 0x78]
lea r8d, [rax + 1]
lea rcx, [rbp + 0x80]
call fcn.1401d1c20
mov rcx, rbx
call fcn.1401d192c
cmp byte [rbp + 0x86], 0
je 0x140021d3c
call fcn.1400347dc
mov rcx, rax
test rax, rax
je 0x140022306
mov rax, qword [rax]
call qword [rax + 0x18]
add rax, 0x18
mov qword [rsp + 0x68], rax
lea rcx, [rsp + 0x68]
cmp byte [rbp + 0x87], 0
jne 0x140021cc5
mov r8d, 0xead2
call fcn.14000ef10
mov rbx, qword [rsp + 0x68]
cmp dword [rbx - 8], 1
jle 0x140021bfa
mov edx, dword [rbx - 0x10]
lea rcx, [rsp + 0x68]
call fcn.14000b5a0
mov rbx, qword [rsp + 0x68]
mov r10d, dword [rbp + 0x8c]
mov eax, 0x51eb851f
imul r10d
mov ecx, edx
sar ecx, 5
mov eax, ecx
shr eax, 0x1f
add ecx, eax
mov r9d, dword [rbp + 0x88]
mov eax, 0x51eb851f
imul r9d
mov r8d, edx
sar r8d, 5
mov eax, r8d
shr eax, 0x1f
add r8d, eax
imul eax, ecx, 0x64
sub r10d, eax
mov eax, 0x88888889
imul r10d
add edx, r10d
sar edx, 5
mov eax, edx
shr eax, 0x1f
add edx, eax
imul eax, edx, 0x3c
sub r10d, eax
mov eax, 0x2aaaaaab
imul ecx
sar edx, 2
mov eax, edx
shr eax, 0x1f
add edx, eax
lea eax, [rdx + rdx*2]
shl eax, 3
sub ecx, eax
imul eax, r8d, 0x64
sub r9d, eax
mov eax, 0x88888889
imul r9d
add edx, r9d
sar edx, 5
mov eax, edx
shr eax, 0x1f
add edx, eax
imul eax, edx, 0x3c
sub r9d, eax
mov eax, 0x2aaaaaab
imul r8d
sar edx, 2
mov eax, edx
shr eax, 0x1f
add edx, eax
lea eax, [rdx + rdx*2]
shl eax, 3
sub r8d, eax
mov dword [rsp + 0x28], r10d
mov dword [rsp + 0x20], ecx
mov rdx, rbx
lea rcx, [rbp + 0x1f0]
call fcn.14000a640
jmp 0x140021d0a
mov r8d, 0xeac7
call fcn.14000ef10
mov rbx, qword [rsp + 0x68]
cmp dword [rbx - 8], 1
jle 0x140021ced
mov edx, dword [rbx - 0x10]
lea rcx, [rsp + 0x68]
call fcn.14000b5a0
mov rbx, qword [rsp + 0x68]
mov r9, rbx
mov r8d, dword [rbp + 0x90]
lea rdx, str._d_s
lea rcx, [rbp + 0x1f0]
call fcn.14000a640
lea r9, [rbp + 0x1f0]
mov r8d, 3
mov edx, esi
mov rcx, r15
call fcn.140036c6c
nop
lea rdx, [rbx - 0x18]
mov eax, r12d
lock xadd dword [rdx + 0x10], eax
sub eax, 1
jg 0x140021d3c
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
movzx r8d, byte [rbp + 0x86]
lea rdx, [0x140264a88]
lea rcx, [rbp + 0x1f0]
call fcn.14000a640
lea r9, [rbp + 0x1f0]
mov r8d, 4
mov edx, esi
mov rcx, r15
call fcn.140036c6c
movzx r8d, byte [rbp + 0x87]
lea rdx, [0x140264a88]
lea rcx, [rbp + 0x1f0]
call fcn.14000a640
lea r9, [rbp + 0x1f0]
mov r8d, 5
mov edx, esi
mov rcx, r15
call fcn.140036c6c
mov r8d, dword [rbp + 0x88]
lea rdx, [0x140264a88]
lea rcx, [rbp + 0x1f0]
call fcn.14000a640
lea r9, [rbp + 0x1f0]
mov r8d, 6
mov edx, esi
mov rcx, r15
call fcn.140036c6c
mov r8d, dword [rbp + 0x8c]
lea rdx, [0x140264a88]
lea rcx, [rbp + 0x1f0]
call fcn.14000a640
lea r9, [rbp + 0x1f0]
mov r8d, 7
mov edx, esi
mov rcx, r15
call fcn.140036c6c
mov r8d, dword [rbp + 0x90]
lea rdx, [0x140264a88]
lea rcx, [rbp + 0x1f0]
call fcn.14000a640
lea r9, [rbp + 0x1f0]
mov r8d, 8
mov edx, esi
mov rcx, r15
call fcn.140036c6c
inc esi
xor r9d, r9d
xor r8d, r8d
mov edx, 0x1004
mov rcx, qword [r14 + 0x348]
call qword [sym.imp.USER32.dll_SendMessageW]
cmp esi, eax
jl 0x140021ab2
xor r9d, r9d
xor r8d, r8d
mov edx, 0x1004
mov rcx, qword [r14 + 0x260]
call qword [sym.imp.USER32.dll_SendMessageW]
mov dword [rsp + 0x50], eax
test eax, eax
jle 0x140022236
lea rcx, [rbp + 0x40]
call qword [sym.imp.KERNEL32.dll_GetLocalTime]
movzx esi, word [rbp + 0x40]
movzx ebx, word [rbp + 0x42]
movzx r11d, word [rbp + 0x46]
mov r10d, dword [rsp + 0x54]
mov eax, 0x51eb851f
imul r10d
mov r9d, edx
sar r9d, 5
mov eax, r9d
shr eax, 0x1f
add r9d, eax
mov eax, 0x51eb851f
mul esi
shr edx, 5
imul eax, edx, 0x64
mov ecx, esi
sub ecx, eax
imul eax, ecx, 0x64
add eax, ebx
imul ecx, eax, 0x64
add ecx, r11d
imul r8d, ecx, 0x64
mov eax, 0x2aaaaaab
imul r9d
sar edx, 2
mov eax, edx
shr eax, 0x1f
add edx, eax
lea ecx, [rdx + rdx*2]
shl ecx, 3
mov eax, r9d
sub eax, ecx
add r8d, eax
imul ecx, r8d, 0x64
imul eax, r9d, 0x64
sub r10d, eax
mov eax, 0x88888889
imul r10d
add edx, r10d
sar edx, 5
mov eax, edx
shr eax, 0x1f
add edx, eax
imul eax, edx, 0x3c
sub r10d, eax
add ecx, r10d
mov dword [rbp - 0x7c], ecx
movzx ecx, word [rbp + 0x4a]
movzx edx, word [rbp + 0x48]
cmp esi, 0x7b2
jb 0x1400222e5
lea eax, [rbx - 1]
cmp eax, 0xb
ja 0x1400222e5
lea eax, [r11 - 1]
cmp eax, 0x1e
ja 0x1400222e5
cmp edx, 0x17
ja 0x1400222e5
cmp ecx, 0x3b
ja 0x1400222e5
mov dword [rbp + 0x50], edi
mov dword [rbp + 0x54], ecx
mov dword [rbp + 0x58], edx
mov dword [rbp + 0x5c], r11d
lea eax, [rbx - 1]
mov dword [rbp + 0x60], eax
lea eax, [rsi - 0x76c]
mov dword [rbp + 0x64], eax
mov dword [rbp + 0x70], r12d
lea rcx, [rbp + 0x50]
call fcn.1401d3a28
cmp rax, 0xffffffffffffffff
je 0x1400222fb
add rax, 0xfffffffffffeae80
mov qword [rsp + 0x58], rax
lea rdx, [rsp + 0x58]
lea rcx, [rbp + 0x100]
call fcn.1401d3d28
test eax, eax
jne 0x140021fb9
mov ebx, dword [rbp + 0x114]
add ebx, 0x76c
jmp 0x140021fbb
mov ebx, edi
mov eax, 0x51eb851f
imul ebx
sar edx, 5
mov eax, edx
shr eax, 0x1f
add edx, eax
imul eax, edx, 0x64
sub ebx, eax
lea rdx, [rsp + 0x58]
lea rcx, [rbp + 0x128]
call fcn.1401d3d28
test eax, eax
jne 0x140021ff0
mov eax, dword [rbp + 0x138]
inc eax
jmp 0x140021ff2
mov eax, edi
imul ebx, ebx, 0x64
add ebx, eax
lea rdx, [rsp + 0x58]
lea rcx, [rbp + 0x150]
call fcn.1401d3d28
mov r8d, edi
test eax, eax
cmove r8d, dword [rbp + 0x15c]
mov r10d, dword [rsp + 0x54]
mov eax, 0x51eb851f
imul r10d
mov r9d, edx
sar r9d, 5
mov ecx, r9d
shr ecx, 0x1f
add r9d, ecx
imul ecx, ebx, 0x64
add ecx, r8d
imul r8d, ecx, 0x64
mov eax, 0x2aaaaaab
imul r9d
sar edx, 2
mov ecx, edx
shr ecx, 0x1f
add edx, ecx
lea edx, [rdx + rdx*2]
shl edx, 3
mov ecx, r9d
sub ecx, edx
add r8d, ecx
imul r8d, r8d, 0x64
imul ecx, r9d, 0x64
sub r10d, ecx
mov eax, 0x88888889
imul r10d
add edx, r10d
sar edx, 5
mov eax, edx
shr eax, 0x1f
add edx, eax
imul eax, edx, 0x3c
sub r10d, eax
add r8d, r10d
mov dword [rbp - 0x80], r8d
call fcn.1400347dc
mov rcx, rax
test rax, rax
je 0x1400222da
mov rax, qword [rax]
call qword [rax + 0x18]
lea rbx, [rax + 0x18]
mov qword [rsp + 0x70], rbx
mov esi, edi
cmp dword [rsp + 0x50], edi
jle 0x14002221d
lea r15, [r14 + 0x220]
mov r14d, dword [rbp - 0x80]
mov edi, dword [rbp - 0x7c]
nop dword [rax]
nop word [rax + rax]
mov r9d, dword [0x1402c0c3c]
lea r8, [0x1402bf7e0]
lea rdx, str._sStatus_d.dat
lea rcx, [rbp + 0x1f0]
call fcn.14000a640
xorps xmm0, xmm0
xor eax, eax
movups xmmword [rbp + 0x180], xmm0
movups xmmword [rbp + 0x190], xmm0
movups xmmword [rbp + 0x1a0], xmm0
movups xmmword [rbp + 0x1b0], xmm0
movups xmmword [rbp + 0x1c0], xmm0
movups xmmword [rbp + 0x1d0], xmm0
mov dword [rbp + 0x1e0], eax
mov r9d, r13d
mov r8d, esi
lea rdx, [rbp - 0x60]
mov rcx, r15
call fcn.1400366f0
mov rbx, rax
mov rdx, qword [rax]
cmp dword [rdx - 8], 1
jle 0x140022152
mov edx, dword [rdx - 0x10]
mov rcx, rax
call fcn.14000b5a0
mov rdx, qword [rbx]
lea rax, [rbp + 0x1f0]
mov qword [rsp + 0x28], rax
mov dword [rsp + 0x20], gethostname
lea r9, [rbp + 0x180]
lea r8, [0x1402671ac]
lea rcx, [0x1402671b0]
call qword [sym.imp.KERNEL32.dll_GetPrivateProfileStringW]
nop
mov rdx, qword [rbp - 0x60]
add rdx, 0xffffffffffffffe8
mov eax, r12d
lock xadd dword [rdx + 0x10], eax
sub eax, 1
jg 0x1400221a0
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
xor r8d, r8d
xor edx, edx
lea rcx, [rbp + 0x180]
call fcn.1401d40d0
test eax, eax
je 0x1400221e3
movzx ecx, word [rbp + 0x48]
imul r8d, ecx, 0x64
movzx ecx, word [rbp + 0x4a]
add r8d, ecx
mov ecx, dword [rsp + 0x54]
cmp r8d, ecx
jl 0x1400221d6
cmp eax, edi
jae 0x1400221db
cmp r8d, ecx
jge 0x1400221e3
cmp eax, r14d
jb 0x1400221e3
mov r8d, 0xead9
jmp 0x1400221e9
mov r8d, 0xeada
lea rcx, [rsp + 0x70]
call fcn.14000ef10
mov rbx, qword [rsp + 0x70]
mov r9, rbx
mov r8d, reloc.WS2_32.dll_inet_addr
mov edx, esi
mov rcx, r15
call fcn.140036c6c
inc esi
cmp esi, dword [rsp + 0x50]
jl 0x1400220d0
xor edi, edi
mov r14, qword [rbp - 0x78]
lea rdx, [rbx - 0x18]
lock xadd dword [rdx + 0x10], r12d
sub r12d, 1
jg 0x140022236
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
mov eax, dword [rsp + 0x54]
mov dword [0x1402ae578], eax
xor r9d, r9d
xor r8d, r8d
mov edx, 0x14b
mov rcx, qword [r14 + 0x518]
call qword [sym.imp.USER32.dll_SendMessageW]
lea rbx, [0x1402aea40]
nop
mov eax, dword [r14 + 0x5c0]
and eax, 0x80000003
jge 0x140022275
dec eax
or eax, 0xfffffffc
inc eax
cdqe
lea rdx, [rdi + rax*2]
imul r9, rdx, 0x64
add r9, rbx
xor r8d, r8d
mov edx, 0x143
mov rcx, qword [r14 + 0x518]
call qword [sym.imp.USER32.dll_SendMessageW]
inc rdi
sub r13, 1
jne 0x140022260
xor edx, edx
mov rcx, r14
call fcn.1400301cc
mov rcx, qword [rbp + 0x4e0]
xor rcx, rsp
call fcn.1401c8d10
lea r11, [rsp + 0x5f0]
mov rbx, qword [r11 + 0x38]
mov rsi, qword [r11 + 0x40]
mov rdi, qword [r11 + 0x48]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rbp
ret
mov ecx, 0x80004005
call fcn.14000bb00
int3
mov ecx, 0x80004005
call fcn.14000bb00
int3
mov ecx, 0x80004005
call fcn.14000bb00
int3
mov ecx, 0x80070057
call fcn.14000bb00
int3
mov ecx, 0x80004005
call fcn.14000bb00
int3