Function at 0x1401d0960
Capabilities:
Check internet connectivity via wininet
Read .ini file

Disassembly:
mov qword [rsp + 0x10], rdx
mov qword [rsp + 8], rcx
push rbx
push rsi
push rdi
mov eax, 0x4f50
call fcn.1401e9500
sub rsp, rax
mov qword [rsp + 0x4ec0], 0xfffffffffffffffe
mov rax, qword [0x1402bd5c0]
xor rax, rsp
mov qword [rsp + 0x4f48], rax
mov rax, qword [rsp + 0x4f78]
cmp dword [rax + 0x28], 0x66
jne 0x1401d0b19
mov rax, qword [rsp + 0x4f70]
cmp dword [rax + 0x220], 0
je 0x1401d0b12
mov rcx, qword [rsp + 0x4f70]
add rcx, 0x260
call fcn.14000f140
lea rcx, [rsp + 0x1850]
call fcn.1400503b0
nop
mov rdx, qword [rsp + 0x4f70]
add rdx, 0x2c0
lea rcx, [rsp + 0x1850]
call fcn.140050bb0
mov rcx, qword [rsp + 0x4f70]
add rcx, 0x2c0
call fcn.140050400
mov rcx, qword [rsp + 0x4f70]
add rcx, 0x260
mov rax, qword [rsp + 0x4f70]
mov rax, qword [rax + 0x260]
call qword [rax + 0x28]
mov qword [rsp + 0x1880], 0
jmp 0x1401d0a54
mov rax, qword [rsp + 0x1880]
add rax, 1
mov qword [rsp + 0x1880], rax
lea rcx, [rsp + 0x1850]
call fcn.140050db0
cmp qword [rsp + 0x1880], rax
jae 0x1401d0af4
mov rdx, qword [rsp + 0x1880]
lea rcx, [rsp + 0x1850]
call fcn.140050de0
mov rbx, rax
mov rdx, qword [rsp + 0x1880]
lea rcx, [rsp + 0x1850]
call fcn.140050de0
mov rsi, rax
mov rdx, qword [rsp + 0x1880]
lea rcx, [rsp + 0x1850]
call fcn.140050de0
mov rdi, rax
mov rdx, qword [rsp + 0x1880]
lea rcx, [rsp + 0x1850]
call fcn.140050de0
mov rdx, rax
mov rax, qword [rbx + 0x10]
mov qword [rsp + 0x20], rax
mov r9, qword [rsi + 8]
mov r8d, dword [rdi + 4]
mov edx, dword [rdx]
mov rcx, qword [rsp + 0x4f70]
call fcn.1401cef40
jmp 0x1401d0a40
mov ecx, 0x64
call qword [sym.imp.KERNEL32.dll_Sleep]
nop
lea rcx, [rsp + 0x1850]
call fcn.140050b80
jmp 0x1401d09aa
xor eax, eax
jmp 0x1401d2f4c
mov rax, qword [rsp + 0x4f78]
cmp dword [rax + 0x28], 0x68
jne 0x1401d0b3b
mov rcx, qword [rsp + 0x4f70]
call fcn.1401d0760
xor eax, eax
jmp 0x1401d2f4c
mov rax, qword [rsp + 0x4f78]
cmp dword [rax + 0x28], 0x67
jne 0x1401d21f8
mov rax, qword [rsp + 0x4f70]
cmp dword [rax + 0x220], 0
je 0x1401d21f1
mov dword [rsp + 0x18b4], 1
mov dword [rsp + 0x18b0], 1
xor ecx, ecx
call fcn.1400abce4
mov qword [rsp + 0x18a8], rax
mov rax, qword [rsp + 0x4f70]
cmp dword [rax + 0x220], 0
je 0x1401d0bbe
xor ecx, ecx
call fcn.1400abce4
sub rax, qword [rsp + 0x18a8]
cmp rax, 0x708
jle 0x1401d0bb1
jmp 0x1401d0bbe
mov ecx, 0x3e8
call qword [sym.imp.KERNEL32.dll_Sleep]
jmp 0x1401d0b87
mov rax, qword [rsp + 0x4f70]
cmp dword [rax + 0x220], 0
je 0x1401d0c23
xor edx, edx
lea rcx, [rsp + 0x18b8]
call qword [sym.imp.WININET.dll_InternetGetConnectedState]
test eax, eax
jne 0x1401d0c1f
xor ecx, ecx
call fcn.1400abce4
sub rax, qword [rsp + 0x18a8]
cmp rax, 0xe10
jle 0x1401d0c12
mov dword [rsp + 0x18b4], 1
mov dword [rsp + 0x18b0], 0
jmp 0x1401d0c23
mov ecx, 0x3e8
call qword [sym.imp.KERNEL32.dll_Sleep]
jmp 0x1401d0bbe
jmp 0x1401d0c23
cmp dword [rsp + 0x18b4], 0
je 0x1401d0db8
xor eax, eax
mov word [rsp + 0x18c0], ax
lea rdi, [rsp + 0x18c2]
xor eax, eax
mov ecx, 0x7fe
rep stosb byte [rdi], al
mov r8d, 0x800
lea rdx, [rsp + 0x18c0]
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_GetModuleFileNameW]
mov dx, 0x2e
lea rcx, [rsp + 0x18c0]
call fcn.14000b150
mov rdx, rax
xor eax, eax
mov word [rdx], ax
lea rdx, [rsp + 0x18c0]
lea rcx, [rsp + 0x2198]
call fcn.140002050
nop
mov dx, VarDateFromDisp
lea rcx, [rsp + 0x18c0]
call fcn.14000b150
mov rdx, rax
add rdx, 2
lea rcx, [rsp + 0x2190]
call fcn.140002050
nop
lea rdx, [0x140229550]
lea rcx, [rsp + 0x2198]
call fcn.140006080
xor edx, edx
mov word [rsp + 0x20c0], dx
lea rdi, [rsp + 0x20c2]
xor eax, eax
mov ecx, 0xc6
rep stosb byte [rdi], al
lea rcx, [rsp + 0x2198]
call fcn.140050200
mov qword [rsp + 0x28], rax
mov dword [rsp + 0x20], 0x64
lea r9, [rsp + 0x20c0]
lea r8, [0x14022903c]
lea rdx, [0x140229560]
lea rcx, [0x140229570]
call qword [sym.imp.KERNEL32.dll_GetPrivateProfileStringW]
lea rcx, [rsp + 0x2190]
call fcn.140050200
mov rdx, rax
lea rcx, [rsp + 0x4df0]
call fcn.1400f05c0
mov qword [rsp + 0x4ec8], rax
mov rax, qword [rsp + 0x4ec8]
mov qword [rsp + 0x4ed0], rax
mov rcx, qword [rsp + 0x4ed0]
call fcn.140050200
mov dword [rsp + 0x20], 0
xor r9d, r9d
mov r8, rax
lea rdx, [rsp + 0x20c0]
mov rcx, qword [rsp + 0x4f70]
call fcn.14000f680
mov dword [rsp + 0x18b0], eax
lea rcx, [rsp + 0x4df0]
call fcn.140007060
nop
lea rcx, [rsp + 0x2190]
call fcn.140007060
nop
lea rcx, [rsp + 0x2198]
call fcn.140007060
cmp dword [rsp + 0x18b0], 0xffffffff
jne 0x1401d0ee5
mov eax, 0x52
mov word [rsp + 0x21a0], ax
mov eax, 0x65
mov word [rsp + 0x21a2], ax
mov eax, 0x67
mov word [rsp + 0x21a4], ax
mov eax, 0x69
mov word [rsp + 0x21a6], ax
mov eax, reloc.WS2_32.dll_WSAStartup
mov word [rsp + 0x21a8], ax
mov eax, reloc.WS2_32.dll_WSACleanup
mov word [rsp + 0x21aa], ax
mov eax, 0x65
mov word [rsp + 0x21ac], ax
mov eax, WSACleanup
mov word [rsp + 0x21ae], ax
mov eax, 0x65
mov word [rsp + 0x21b0], ax
mov eax, 0x64
mov word [rsp + 0x21b2], ax
mov eax, 0x20
mov word [rsp + 0x21b4], ax
mov eax, 0x66
mov word [rsp + 0x21b6], ax
mov eax, 0x61
mov word [rsp + 0x21b8], ax
mov eax, WSASetLastError
mov word [rsp + 0x21ba], ax
mov eax, reloc.WS2_32.dll_WSAStartup
mov word [rsp + 0x21bc], ax
mov eax, 0x65
mov word [rsp + 0x21be], ax
xor eax, eax
mov word [rsp + 0x21c0], ax
lea rdx, [rsp + 0x21a0]
mov ecx, 1
call fcn.1400de020
mov rcx, qword [rsp + 0x4f70]
call fcn.1401d0910
mov qword [rsp + 0x20], 0
xor r9d, r9d
mov r8d, 0x8024
xor edx, edx
mov rcx, qword [rsp + 0x4f70]
call fcn.1401cf1e0
jmp 0x1401d21a6
cmp dword [rsp + 0x18b0], 0
jne 0x1401d20da
call fcn.1401cfca0
mov qword [rsp + 0x21c8], rax
cmp qword [rsp + 0x21c8], 0
jmp 0x1401d154f
xor ecx, ecx
call fcn.1400abce4
mov rdx, rax
mov rax, qword [rsp + 0x21c8]
add rax, 0x93a80
cmp rdx, rax
jae 0x1401d1571
jmp 0x1401d21a6
xor eax, eax
mov word [rsp + 0x21d0], ax
lea rdi, [rsp + 0x21d2]
xor eax, eax
mov ecx, 0x7fe
rep stosb byte [rdi], al
mov r8d, 0x800
lea rdx, [rsp + 0x21d0]
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_GetModuleFileNameW]
mov dx, 0x2e
lea rcx, [rsp + 0x21d0]
call fcn.14000b150
mov rdx, rax
xor eax, eax
mov word [rdx], ax
lea rdx, [rsp + 0x21d0]
lea rcx, [rsp + 0x2aa8]
call fcn.140002050
nop
lea rdx, [0x140229580]
lea rcx, [rsp + 0x2aa8]
call fcn.140006080
xor edx, edx
mov word [rsp + 0x29d0], dx
lea rdi, [rsp + 0x29d2]
xor eax, eax
mov ecx, 0xc6
rep stosb byte [rdi], al
lea rcx, [rsp + 0x2aa8]
call fcn.140050200
mov qword [rsp + 0x28], rax
mov dword [rsp + 0x20], 0x64
lea r9, [rsp + 0x29d0]
lea r8, [0x1402290dc]
lea rdx, [0x140229590]
lea rcx, [0x1402295a0]
call qword [sym.imp.KERNEL32.dll_GetPrivateProfileStringW]
lea rcx, [rsp + 0x29d0]
call fcn.1401cffb0
mov dword [rsp + 0x2aa0], eax
cmp dword [rsp + 0x2aa0], 0xffffffff
jmp 0x1401d1a71
cmp dword [rsp + 0x2aa0], 0
jmp 0x1401d20cd
lea rcx, [rsp + 0x2aa8]
call fcn.140007060
mov eax, 0x52
mov word [rsp + 0x1888], ax
mov eax, 0x65
mov word [rsp + 0x188a], ax
mov eax, 0x67
mov word [rsp + 0x188c], ax
mov eax, 0x69
mov word [rsp + 0x188e], ax
mov eax, reloc.WS2_32.dll_WSAStartup
mov word [rsp + 0x1890], ax
mov eax, reloc.WS2_32.dll_WSACleanup
mov word [rsp + 0x1892], ax
mov eax, 0x65
mov word [rsp + 0x1894], ax
mov eax, WSACleanup
mov word [rsp + 0x1896], ax
mov eax, 0x65
mov word [rsp + 0x1898], ax
mov eax, 0x64
mov word [rsp + 0x189a], ax
mov eax, 0x20
mov word [rsp + 0x189c], ax
mov eax, 0x4f
mov word [rsp + 0x189e], ax
mov eax, 0x4b
mov word [rsp + 0x18a0], ax
xor eax, eax
mov word [rsp + 0x18a2], ax
lea rdx, [rsp + 0x1888]
mov ecx, 1
call fcn.1400de020
xor ecx, ecx
call fcn.1401cfb40
xor ecx, ecx
call fcn.1400abce4
mov qword [rsp + 0x18a8], rax
mov rax, qword [rsp + 0x4f70]
cmp dword [rax + 0x220], 0
je 0x1401d21ec
xor ecx, ecx
call fcn.1400abce4
sub rax, qword [rsp + 0x18a8]
cmp rax, 0xa8c0
jle 0x1401d21df
jmp 0x1401d21ec
mov ecx, 0x3e8
call qword [sym.imp.KERNEL32.dll_Sleep]
jmp 0x1401d21b5
jmp 0x1401d0b4d
xor eax, eax
jmp 0x1401d2f4c
lea rcx, [0x1402295b0]
call qword [sym.imp.WS2_32.dll_inet_addr]
mov edx, eax
mov rax, qword [rsp + 0x4f78]
cmp dword [rax + 0x14], edx
je 0x1401d221b
xor eax, eax
jmp 0x1401d2f4c
xor eax, eax
mov word [rsp + 0x40], ax
lea rdi, [rsp + 0x42]
xor eax, eax
mov ecx, 0x7fe
rep stosb byte [rdi], al
mov r8d, 0x400
lea rdx, [rsp + 0x40]
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_GetModuleFileNameW]
lea rdx, [0x1402295bc]
lea rcx, [rsp + 0x40]
call fcn.1400aac14
lea rdx, [rsp + 0x40]
lea rcx, [rsp + 0x4df8]
call fcn.1400daba0
mov qword [rsp + 0x4ed8], rax
mov rax, qword [rsp + 0x4ed8]
mov qword [rsp + 0x4ee0], rax
mov rcx, qword [rsp + 0x4ee0]
call fcn.140050200
mov r8, rax
mov rdx, qword [rsp + 0x4f78]
mov rdx, qword [rdx + 8]
mov rcx, qword [rsp + 0x4f70]
call fcn.1400db000
nop
lea rcx, [rsp + 0x4df8]
call fcn.140007060
mov byte [rsp + 0x850], 0
lea rdi, [rsp + 0x851]
xor eax, eax
mov ecx, 0xfff
rep stosb byte [rdi], al
mov qword [rsp + 0x30], 0x1000
mov r9, qword [rsp + 0x30]
lea r8, [rsp + 0x850]
mov rdx, qword [rsp + 0x4f78]
mov rdx, qword [rdx + 8]
mov rcx, qword [rsp + 0x4f70]
call fcn.1400da6e0
test eax, eax
jne 0x1401d2308
xor eax, eax
jmp 0x1401d2f4c
mov dword [rsp + 0x840], 0
lea rdx, str.Client2Server_r_n
lea rcx, [rsp + 0x850]
call fcn.1400c8848
test eax, eax
jne 0x1401d233b
mov dword [rsp + 0x840], 1
jmp 0x1401d24bb
mov dword [rsp + 0x840], 0
mov qword [rsp + 0x20], 0
mov r9d, 0xf060
mov r8d, 0x112
xor edx, edx
mov rcx, qword [rsp + 0x4f70]
call fcn.1401cef40
mov rcx, qword [rsp + 0x4f70]
add rcx, 0x260
call fcn.14000f140
mov rcx, qword [rsp + 0x4f70]
add rcx, 0x230
call fcn.14001d500
mov rdx, qword [rsp + 0x4f78]
add rdx, 8
mov rcx, qword [rsp + 0x4f70]
add rcx, 0x230
call fcn.140020de0
lea rcx, [rsp + 0x2d30]
call fcn.140078c60
nop
mov rdx, qword [rsp + 0x4f70]
add rdx, 0x298
lea rcx, [rsp + 0x2d30]
call fcn.140078fb8
mov rcx, qword [rsp + 0x4f70]
add rcx, 0x298
call fcn.1400118f0
mov rcx, qword [rsp + 0x4f70]
add rcx, 0x260
mov rax, qword [rsp + 0x4f70]
mov rax, qword [rax + 0x260]
call qword [rax + 0x28]
mov dword [rsp + 0x2d58], 0
jmp 0x1401d242f
mov eax, dword [rsp + 0x2d58]
add eax, 1
mov dword [rsp + 0x2d58], eax
movsxd rdi, dword [rsp + 0x2d58]
lea rcx, [rsp + 0x2d30]
call fcn.1400202c0
cmp rdi, rax
jge 0x1401d2482
movsxd rdx, dword [rsp + 0x2d58]
lea rcx, [rsp + 0x2d30]
call fcn.140050190
mov rcx, rax
call fcn.140050200
mov qword [rsp + 0x20], rax
xor r9d, r9d
xor r8d, r8d
xor edx, edx
mov rcx, qword [rsp + 0x4f70]
call fcn.1401cef40
jmp 0x1401d241e
mov rax, qword [rsp + 0x4f70]
mov eax, dword [rax + 0x2f0]
mov qword [rsp + 0x20], rax
xor r9d, r9d
mov r8d, 0x83e7
xor edx, edx
mov rcx, qword [rsp + 0x4f70]
call fcn.1401cef40
nop
lea rcx, [rsp + 0x2d30]
call fcn.140078f24
cmp dword [rsp + 0x840], 0
je 0x1401d2cea
mov rax, qword [rsp + 0x4f78]
cmp dword [rax], 2
jne 0x1401d2ce3
mov rax, qword [rsp + 0x4f70]
cmp dword [rax + 0x220], 0
je 0x1401d2ce3
mov edx, 1
mov rcx, qword [rsp + 0x4f78]
mov rcx, qword [rcx + 8]
call fcn.1400d9910
test eax, eax
jne 0x1401d250b
jmp 0x1401d24c9
mov dword [rsp + 0x2d5c], 0x1000
movsxd r9, dword [rsp + 0x2d5c]
lea r8, [rsp + 0x850]
mov rdx, qword [rsp + 0x4f78]
mov rdx, qword [rdx + 8]
mov rcx, qword [rsp + 0x4f70]
call fcn.1400da6e0
test eax, eax
jne 0x1401d254a
xor eax, eax
jmp 0x1401d2f4c
mov dword [rsp + 0x2d60], 0
mov dword [rsp + 0x2d80], 0
mov qword [rsp + 0x2d88], 0
mov qword [rsp + 0x2d68], 0
lea rax, [rsp + 0x2d68]
mov qword [rsp + 0x28], rax
lea rax, [rsp + 0x2d88]
mov qword [rsp + 0x20], rax
lea r9, [rsp + 0x2d80]
lea r8, [rsp + 0x2d60]
lea rdx, str._u__u__u__u
lea rcx, [rsp + 0x850]
call fcn.1400b16d4
lea rcx, [rsp + 0x2d78]
call fcn.140002d10
nop
cmp dword [rsp + 0x2d60], 0xffffffff
jne 0x1401d274d
movzx eax, byte [0x14022542e]
mov byte [rsp + 0x2d90], al
lea rdi, [rsp + 0x2d91]
xor eax, eax
mov ecx, 0x1000
rep stosb byte [rdi], al
mov rax, qword [rsp + 0x4f70]
cmp dword [rax + 0x220], 0
je 0x1401d26d1
mov dword [rsp + 0x3da0], 0x1001
movsxd r9, dword [rsp + 0x3da0]
lea r8, [rsp + 0x2d90]
mov rdx, qword [rsp + 0x4f78]
mov rdx, qword [rdx + 8]
mov rcx, qword [rsp + 0x4f70]
call fcn.1400da6e0
test eax, eax
jne 0x1401d2662
mov dword [rsp + 0x4e00], 0
lea rcx, [rsp + 0x2d78]
call fcn.140007060
mov eax, dword [rsp + 0x4e00]
jmp 0x1401d2f4c
lea rdx, [0x14022915c]
lea rcx, [rsp + 0x2d90]
call fcn.1400af160
test eax, eax
jne 0x1401d267c
jmp 0x1401d26d1
lea rdx, [rsp + 0x2d90]
lea rcx, [rsp + 0x4e08]
call fcn.1400dde10
mov qword [rsp + 0x4ee8], rax
mov rax, qword [rsp + 0x4ee8]
mov qword [rsp + 0x4ef0], rax
mov rdx, qword [rsp + 0x4ef0]
lea rcx, [rsp + 0x2d78]
call fcn.140006050
nop
lea rcx, [rsp + 0x4e08]
call fcn.140007060
jmp 0x1401d25f1
lea rcx, [rsp + 0x2d78]
call fcn.1400019a0
mov r9d, eax
sub r9d, 2
xor r8d, r8d
lea rdx, [rsp + 0x4e10]
lea rcx, [rsp + 0x2d78]
call fcn.1400021f0
mov qword [rsp + 0x4ef8], rax
mov rax, qword [rsp + 0x4ef8]
mov qword [rsp + 0x4f00], rax
mov rdx, qword [rsp + 0x4f00]
lea rcx, [rsp + 0x2d78]
call fcn.140002ce0
nop
lea rcx, [rsp + 0x4e10]
call fcn.140007060
lea rcx, [rsp + 0x2d78]
call fcn.140050200
mov qword [rsp + 0x2d68], rax
cmp dword [rsp + 0x2d60], 0xfffffffe
jne 0x1401d2901
mov eax, 2
mul qword [rsp + 0x2d88]
mov rcx, rax
mov rax, 0xffffffffffffffff
cmovo rcx, rax
call fcn.140073290
mov qword [rsp + 0x4e18], rax
mov rax, qword [rsp + 0x4e18]
mov qword [rsp + 0x3db0], rax
mov r8, qword [rsp + 0x2d88]
shl r8, 1
xor edx, edx
mov rcx, qword [rsp + 0x3db0]
call fcn.1400a9850
mov rdx, qword [rsp + 0x3db0]
mov qword [rsp + 0x2d68], rdx
mov rdi, qword [rsp + 0x4f70]
mov rdi, qword [rdi]
mov rax, qword [rsp + 0x4f78]
mov rax, qword [rax + 8]
mov qword [rsp + 0x28], rax
mov rax, qword [rsp + 0x2d68]
mov qword [rsp + 0x20], rax
mov r9, qword [rsp + 0x2d88]
mov r8d, dword [rsp + 0x2d80]
mov edx, dword [rsp + 0x2d60]
mov rcx, qword [rsp + 0x4f70]
call qword [rdi + reloc.OLEAUT32.dll_SafeArrayGetElement]
mov qword [rsp + 0x3da8], rax
mov r8, qword [rsp + 0x3da8]
lea rdx, [0x1402295e4]
lea rcx, [rsp + 0x850]
call fcn.1400ae644
lea r8, [rsp + 0x850]
mov rdx, qword [rsp + 0x4f78]
mov rdx, qword [rdx + 8]
mov rcx, qword [rsp + 0x4f70]
call fcn.1400db000
mov rdx, qword [rsp + 0x3db0]
lea rcx, [rsp + 0x4e20]
call fcn.1400daba0
mov qword [rsp + 0x4f08], rax
mov rax, qword [rsp + 0x4f08]
mov qword [rsp + 0x4f10], rax
mov rcx, qword [rsp + 0x4f10]
call fcn.140050200
mov r8, rax
mov rdx, qword [rsp + 0x4f78]
mov rdx, qword [rdx + 8]
mov rcx, qword [rsp + 0x4f70]
call fcn.1400db000
nop
lea rcx, [rsp + 0x4e20]
call fcn.140007060
lea r8, [0x1402295ec]
mov rdx, qword [rsp + 0x4f78]
mov rdx, qword [rdx + 8]
mov rcx, qword [rsp + 0x4f70]
call fcn.1400db000
mov rax, qword [rsp + 0x3db0]
mov qword [rsp + 0x4e28], rax
mov rcx, qword [rsp + 0x4e28]
call fcn.140073288
nop
lea rcx, [rsp + 0x2d78]
call fcn.140007060
jmp 0x1401d24c9
cmp dword [rsp + 0x2d60], 0xfffffffd
jne 0x1401d2c40
movzx eax, byte [0x14022542f]
mov byte [rsp + 0x3dc0], al
lea rdi, [rsp + 0x3dc1]
xor eax, eax
mov ecx, 0x1000
rep stosb byte [rdi], al
mov rax, qword [rsp + 0x4f70]
cmp dword [rax + 0x220], 0
je 0x1401d2a0e
mov dword [rsp + 0x4dd8], 0x1001
movsxd r9, dword [rsp + 0x4dd8]
lea r8, [rsp + 0x3dc0]
mov rdx, qword [rsp + 0x4f78]
mov rdx, qword [rdx + 8]
mov rcx, qword [rsp + 0x4f70]
call fcn.1400da6e0
test eax, eax
jne 0x1401d299f
mov dword [rsp + 0x4e30], 0
lea rcx, [rsp + 0x2d78]
call fcn.140007060
mov eax, dword [rsp + 0x4e30]
jmp 0x1401d2f4c
lea rdx, [0x1402291dc]
lea rcx, [rsp + 0x3dc0]
call fcn.1400af160
test eax, eax
jne 0x1401d29b9
jmp 0x1401d2a0e
lea rdx, [rsp + 0x3dc0]
lea rcx, [rsp + 0x4e38]
call fcn.1400dde10
mov qword [rsp + 0x4f18], rax
mov rax, qword [rsp + 0x4f18]
mov qword [rsp + 0x4f20], rax
mov rdx, qword [rsp + 0x4f20]
lea rcx, [rsp + 0x2d78]
call fcn.140006050
nop
lea rcx, [rsp + 0x4e38]
call fcn.140007060
jmp 0x1401d292e
lea rcx, [rsp + 0x2d78]
call fcn.1400019a0
mov r9d, eax
sub r9d, 2
xor r8d, r8d
lea rdx, [rsp + 0x4e40]
lea rcx, [rsp + 0x2d78]
call fcn.1400021f0
mov qword [rsp + 0x4f28], rax
mov rax, qword [rsp + 0x4f28]
mov qword [rsp + 0x4f30], rax
mov rdx, qword [rsp + 0x4f30]
lea rcx, [rsp + 0x2d78]
call fcn.140002ce0
nop
lea rcx, [rsp + 0x4e40]
call fcn.140007060
mov eax, 2
mul qword [rsp + 0x2d88]
mov rcx, rax
mov rax, 0xffffffffffffffff
cmovo rcx, rax
call fcn.140073290
mov qword [rsp + 0x4e48], rax
mov rax, qword [rsp + 0x4e48]
mov qword [rsp + 0x4dd0], rax
mov r8, qword [rsp + 0x2d88]
shl r8, 1
xor edx, edx
mov rcx, qword [rsp + 0x4dd0]
call fcn.1400a9850
lea rcx, [rsp + 0x2d78]
call fcn.140050200
mov r8, qword [rsp + 0x2d88]
mov rdx, rax
mov rcx, qword [rsp + 0x4dd0]
call fcn.1400aa9f8
mov rdx, qword [rsp + 0x4dd0]
mov qword [rsp + 0x2d68], rdx
mov rdi, qword [rsp + 0x4f70]
mov rdi, qword [rdi]
mov rax, qword [rsp + 0x4f78]
mov rax, qword [rax + 8]
mov qword [rsp + 0x28], rax
mov rax, qword [rsp + 0x2d68]
mov qword [rsp + 0x20], rax
mov r9, qword [rsp + 0x2d88]
mov r8d, dword [rsp + 0x2d80]
mov edx, dword [rsp + 0x2d60]
mov rcx, qword [rsp + 0x4f70]
call qword [rdi + reloc.OLEAUT32.dll_SafeArrayGetElement]
mov qword [rsp + 0x3db8], rax
mov r8, qword [rsp + 0x3db8]
lea rdx, [0x1402295f4]
lea rcx, [rsp + 0x850]
call fcn.1400ae644
lea r8, [rsp + 0x850]
mov rdx, qword [rsp + 0x4f78]
mov rdx, qword [rdx + 8]
mov rcx, qword [rsp + 0x4f70]
call fcn.1400db000
mov rdx, qword [rsp + 0x4dd0]
lea rcx, [rsp + 0x4e50]
call fcn.1400daba0
mov qword [rsp + 0x4f38], rax
mov rax, qword [rsp + 0x4f38]
mov qword [rsp + 0x4f40], rax
mov rcx, qword [rsp + 0x4f40]
call fcn.140050200
mov r8, rax
mov rdx, qword [rsp + 0x4f78]
mov rdx, qword [rdx + 8]
mov rcx, qword [rsp + 0x4f70]
call fcn.1400db000
nop
lea rcx, [rsp + 0x4e50]
call fcn.140007060
lea r8, [0x1402295fc]
mov rdx, qword [rsp + 0x4f78]
mov rdx, qword [rdx + 8]
mov rcx, qword [rsp + 0x4f70]
call fcn.1400db000
mov rax, qword [rsp + 0x4dd0]
mov qword [rsp + 0x4e58], rax
mov rcx, qword [rsp + 0x4e58]
call fcn.140073288
nop
lea rcx, [rsp + 0x2d78]
call fcn.140007060
jmp 0x1401d24c9
mov rdi, qword [rsp + 0x4f70]
mov rdi, qword [rdi]
mov rax, qword [rsp + 0x4f78]
mov rax, qword [rax + 8]
mov qword [rsp + 0x28], rax
mov rax, qword [rsp + 0x2d68]
mov qword [rsp + 0x20], rax
mov r9, qword [rsp + 0x2d88]
mov r8d, dword [rsp + 0x2d80]
mov edx, dword [rsp + 0x2d60]
mov rcx, qword [rsp + 0x4f70]
call qword [rdi + reloc.OLEAUT32.dll_SafeArrayGetElement]
mov qword [rsp + 0x2d70], rax
mov r8, qword [rsp + 0x2d70]
lea rdx, str._ld_r_n
lea rcx, [rsp + 0x850]
call fcn.1400ae644
lea r8, [rsp + 0x850]
mov rdx, qword [rsp + 0x4f78]
mov rdx, qword [rdx + 8]
mov rcx, qword [rsp + 0x4f70]
call fcn.1400db000
nop
lea rcx, [rsp + 0x2d78]
call fcn.140007060
jmp 0x1401d24c9
xor eax, eax
jmp 0x1401d2f4c
mov rax, qword [rsp + 0x4f78]
cmp dword [rax], 2
jne 0x1401d2de9
mov rax, qword [rsp + 0x4f70]
cmp dword [rax + 0x220], 0
je 0x1401d2de9
mov rcx, qword [rsp + 0x4f70]
add rcx, 0x260
call fcn.14000f140
xor edx, edx
mov rcx, qword [rsp + 0x4f78]
mov rcx, qword [rcx + 8]
call fcn.1400d9910
mov dword [rsp + 0x4ddc], eax
mov dword [rsp + 0x4de0], 1
cmp dword [rsp + 0x4ddc], 0
je 0x1401d2d91
mov qword [rsp + 0x30], 1
mov dword [rsp + 0x20], 2
lea r9, [rsp + 0x30]
lea r8, [rsp + 0x850]
mov rdx, qword [rsp + 0x4f78]
mov rdx, qword [rdx + 8]
mov rcx, qword [rsp + 0x4f70]
call fcn.1400da4b0
mov dword [rsp + 0x4de0], eax
mov rcx, qword [rsp + 0x4f70]
add rcx, 0x260
mov rax, qword [rsp + 0x4f70]
mov rax, qword [rax + 0x260]
call qword [rax + 0x28]
mov ecx, 0xa
call qword [sym.imp.KERNEL32.dll_Sleep]
cmp dword [rsp + 0x4de0], 0
jne 0x1401d2dc9
jmp 0x1401d2de9
cmp dword [rsp + 0x4ddc], 0xffffffff
jne 0x1401d2dd5
jmp 0x1401d2de9
cmp dword [rsp + 0x4ddc], 0
jne 0x1401d2de4
jmp 0x1401d2cea
jmp 0x1401d2cea
mov rax, qword [rsp + 0x4f70]
cmp dword [rax + 0x220], 0
je 0x1401d2f4a
mov rcx, qword [rsp + 0x4f70]
add rcx, 0x260
call fcn.14000f140
mov qword [rsp + 0x4de8], 0
jmp 0x1401d2e34
mov rax, qword [rsp + 0x4de8]
add rax, 1
mov qword [rsp + 0x4de8], rax
mov rcx, qword [rsp + 0x4f70]
add rcx, 0x230
call fcn.14001d480
cmp qword [rsp + 0x4de8], rax
jae 0x1401d2f29
mov rcx, qword [rsp + 0x4f70]
add rcx, 0x230
mov rdx, qword [rsp + 0x4de8]
call fcn.140007280
mov rdx, rax
mov rax, qword [rsp + 0x4f78]
mov rax, qword [rax + 8]
cmp qword [rdx], rax
jne 0x1401d2f24
mov rcx, qword [rsp + 0x4f70]
add rcx, 0x230
lea rdx, [rsp + 0x4e70]
call fcn.14001d8a0
mov r8, qword [rsp + 0x4de8]
lea rdx, [rsp + 0x4e80]
mov rcx, rax
call fcn.140021050
lea rdi, [rsp + 0x4eb0]
mov rsi, rax
mov ecx, reloc.OLEAUT32.dll_SafeArrayGetDim
rep movsb byte [rdi], byte [rsi]
lea rdi, [rsp + 0x4e60]
lea rsi, [rsp + 0x4eb0]
mov ecx, reloc.OLEAUT32.dll_SafeArrayGetDim
rep movsb byte [rdi], byte [rsi]
lea rdi, [rsp + 0x4ea0]
lea rsi, [rsp + 0x4e60]
mov ecx, reloc.OLEAUT32.dll_SafeArrayGetDim
rep movsb byte [rdi], byte [rsi]
mov rcx, qword [rsp + 0x4f70]
add rcx, 0x230
lea r8, [rsp + 0x4ea0]
lea rdx, [rsp + 0x4e90]
call fcn.140020ec0
jmp 0x1401d2f29
jmp 0x1401d2e20
mov rcx, qword [rsp + 0x4f70]
add rcx, 0x260
mov rax, qword [rsp + 0x4f70]
mov rax, qword [rax + 0x260]
call qword [rax + 0x28]
xor eax, eax
mov rcx, qword [rsp + 0x4f48]
xor rcx, rsp
call fcn.1400a9820
add rsp, 0x4f50
pop rdi
pop rsi
pop rbx
ret