Function at 0x461850
Capabilities:
Create tcp socket
Create thread
Create udp socket
Get common file path
Get geographical location
Query or enumerate registry value
Set socket configuration

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x564364
mov eax, dword fs:[0]
push eax
sub esp, 0x2d8
mov eax, dword [0x5b3680]
xor eax, ebp
mov dword [ebp - 0x18], eax
push ebx
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov dword [ebp - 0x10], esp
mov edi, ecx
mov dword [ebp - 0x29c], edi
push 0x3f14700
push 0x64000
mov ebx, dword [sym.imp.KERNEL32.dll_GetCurrentProcess]
call ebx
push eax
call dword [sym.imp.KERNEL32.dll_SetProcessWorkingSetSize]
call ebx
push eax
call dword [sym.imp.PSAPI.DLL_EmptyWorkingSet]
mov byte [ebp - 0x22c], 0
push 0xfe
push 0
lea eax, [ebp - 0x22b]
push eax
call fcn.00531bd0
add esp, 0xc
call dword [sym.imp.KERNEL32.dll_GetSystemDefaultLCID]
push 0xff
lea ecx, [ebp - 0x22c]
push ecx
push 0x1001
push eax
call dword [sym.imp.KERNEL32.dll_GetLocaleInfoA]
push ecx
lea eax, [ebp - 0x22c]
push eax
lea ecx, [ebp - 0x294]
call fcn.00478080
mov dword [ebp - 4], 0
push eax
lea eax, [ebp - 0x2ac]
push eax
call fcn.00512b78
add esp, 8
mov ecx, dword [ebp - 0x2ac]
test ecx, ecx
je 0x46192b
mov eax, dword [ecx]
call dword [eax + 8]
test eax, eax
je 0x46192b
mov edx, dword [eax]
push 1
mov ecx, eax
call dword [edx]
mov dword [ebp - 4], 0xffffffff
mov ecx, dword [ebp - 0x294]
test ecx, ecx
je 0x46194d
mov eax, dword [ecx]
call dword [eax + 8]
test eax, eax
je 0x46194d
mov edx, dword [eax]
push 1
mov ecx, eax
call dword [edx]
push 8
call fcn.00529b2d
add esp, 4
mov ebx, eax
mov dword [ebp - 0x290], ebx
mov dword [ebp - 4], 1
test ebx, ebx
je 0x46197f
mov dword [ebx], reloc.OLEAUT32.dll_SysReAllocString
mov dword [ebx + 4], 0
mov dword [ebp - 0x2ac], eax
jmp 0x461987
xor ebx, ebx
mov dword [ebp - 0x2ac], ebx
mov dword [ebp - 4], 0xffffffff
mov dword [ebp - 0x2a4], ebx
mov dword [ebp - 4], 2
test ebx, ebx
je 0x461a84
lea esi, [ebx + 4]
push 0
push esi
push 0
push 3
push 0
push 0
push 0
push 0x584038
push dword [ebx]
call dword [sym.imp.ADVAPI32.dll_RegCreateKeyExW]
test eax, eax
je 0x4619d0
push eax
call dword [sym.imp.KERNEL32.dll_SetLastError]
jmp 0x461a84
mov byte [ebp - 0x12c], 0
push 0x103
push 0
lea eax, [ebp - 0x12b]
push eax
call fcn.00531bd0
add esp, 0xc
mov dword [ebp - 0x2c4], 0x104
mov dword [ebp - 0x290], 1
lea eax, [ebp - 0x2c4]
push eax
lea eax, [ebp - 0x12c]
push eax
lea eax, [ebp - 0x290]
push eax
push 0
push str.PADM
push dword [esi]
call dword [sym.imp.ADVAPI32.dll_RegQueryValueExW]
test eax, eax
je 0x461a30
push eax
call dword [sym.imp.KERNEL32.dll_SetLastError]
lea eax, [ebp - 0x12c]
push eax
lea ecx, [ebp - 0x294]
call fcn.004031c0
mov byte [ebp - 4], 3
mov ecx, dword [0x5ba1b0]
lea ecx, [ecx + 0x108]
lea eax, [ebp - 0x294]
push eax
call fcn.00416320
mov byte [ebp - 4], 2
mov edx, dword [ebp - 0x294]
add edx, 0xfffffff0
lea ecx, [edx + 0xc]
or esi, 0xffffffff
mov eax, esi
lock xadd dword [ecx], eax
dec eax
test eax, eax
jg 0x461a84
mov ecx, dword [edx]
mov eax, dword [ecx]
push edx
call dword [eax + 4]
lea eax, [edi + 0x170]
push eax
call fcn.00472a50
mov ecx, edi
call fcn.00471510
mov ecx, edi
call fcn.00471780
mov ecx, edi
call fcn.004719f0
lea eax, [edi + 0x16c]
push eax
mov ecx, edi
call fcn.00471c60
call dword [sym.imp.KERNEL32.dll_GetCurrentProcess]
push eax
call dword [sym.imp.KERNEL32.dll_GetProcessId]
mov dword [edi + 0x2468], eax
lea esi, [edi + 0x188]
push ecx
push esi
mov ecx, edi
call fcn.004691e0
test eax, eax
jne 0x461ae8
mov ecx, edi
call fcn.004614b0
push esi
mov ecx, edi
call fcn.00469480
push 0
push 0
call dword [sym.imp.ole32.dll_CoInitializeEx]
push 0xa
lea eax, [ebp - 0x24]
push eax
mov eax, dword [0x5ba1b0]
push dword [eax + 0x1ac]
call fcn.0052f09c
add esp, 0xc
mov dword [ebp - 0x234], 0
mov dword [ebp - 0x230], 0
mov dword [ebp - 0x230], 7
mov dword [ebp - 0x234], 0
xor eax, eax
mov word [ebp - 0x244], ax
cmp word [ebp - 0x24], ax
jne 0x461b46
xor ecx, ecx
jmp 0x461b5f
lea ecx, [ebp - 0x24]
lea edx, [ecx + 2]
lea esp, [esp]
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x461b50
sub ecx, edx
sar ecx, 1
push ecx
lea eax, [ebp - 0x24]
push eax
lea ecx, [ebp - 0x244]
call fcn.00413ad0
mov byte [ebp - 4], 5
mov edx, 0x15
lea ecx, [ebp - 0x28c]
call fcn.00417d20
cmp dword [ebp - 0x278], 8
jb 0x461b9a
push dword [ebp - 0x28c]
call fcn.005295dd
add esp, 4
lea eax, [ebp - 0x244]
push eax
mov edx, 0x15
lea ecx, [ebp - 0x28c]
call fcn.004174f0
add esp, 4
cmp dword [ebp - 0x278], 8
jb 0x461bcb
push dword [ebp - 0x28c]
call fcn.005295dd
add esp, 4
lea ecx, [ebp - 0x28c]
call fcn.00417250
cmp dword [ebp - 0x278], 8
jb 0x461bed
push dword [ebp - 0x28c]
call fcn.005295dd
add esp, 4
call dword [sym.imp.ole32.dll_CoUninitialize]
sub esp, 0xc
lea ecx, [ebp - 0x2e0]
call fcn.004040a0
mov byte [ebp - 4], 6
push ecx
lea ecx, [ebp - 0x2e0]
call fcn.00404a50
mov esi, eax
push 0xc
call fcn.00529b2d
add esp, 4
mov ecx, eax
mov dword [ebp - 0x290], ecx
mov byte [ebp - 4], 7
test ecx, ecx
je 0x461c53
mov dword [ecx], vtable.IniParser::CCommonValue.0
mov byte [ebp - 4], 8
mov dword [ecx], vtable.IniParser::CBoolValue.0
lea eax, [edi + 0x18d]
mov dword [ecx + 4], eax
mov dword [ecx + 8], 0
mov byte [ebp - 4], 7
jmp 0x461c55
xor ecx, ecx
mov byte [ebp - 4], 6
push 1
push ecx
push str.IsStealth
mov ecx, esi
call fcn.00403d70
push 0xc
call fcn.00529b2d
add esp, 4
mov ecx, eax
mov dword [ebp - 0x290], ecx
mov byte [ebp - 4], 9
test ecx, ecx
je 0x461ca8
mov dword [ecx], vtable.IniParser::CCommonValue.0
mov byte [ebp - 4], 0xa
mov dword [ecx], vtable.IniParser::CBoolValue.0
lea eax, [edi + 0x19c]
mov dword [ecx + 4], eax
mov dword [ecx + 8], 0
mov byte [ebp - 4], 9
jmp 0x461caa
xor ecx, ecx
mov byte [ebp - 4], 6
push 1
push ecx
push str.IsSSLogEnable
mov ecx, esi
call fcn.00403d70
push 0x14
call fcn.00529b2d
add esp, 4
mov ecx, eax
mov dword [ebp - 0x290], ecx
mov byte [ebp - 4], 0xb
test ecx, ecx
je 0x461d0b
mov dword [ecx], vtable.IniParser::CCommonValue.0
mov byte [ebp - 4], 0xc
mov dword [ecx], vtable.IniParser::CNumericType_int_.0
lea eax, [edi + 0x1a8]
mov dword [ecx + 4], eax
mov dword [ecx + 8], 0
mov dword [ecx + 0xc], 1
mov dword [ecx + 0x10], 6
mov byte [ebp - 4], 0xb
jmp 0x461d0d
xor ecx, ecx
mov byte [ebp - 4], 6
push 1
push ecx
push str.dwSSPeriod
mov ecx, esi
call fcn.00403d70
push 0x14
call fcn.00529b2d
add esp, 4
mov ecx, eax
mov dword [ebp - 0x290], ecx
mov byte [ebp - 4], 0xd
test ecx, ecx
je 0x461d6e
mov dword [ecx], vtable.IniParser::CCommonValue.0
mov byte [ebp - 4], 0xe
mov dword [ecx], vtable.IniParser::CNumericType_int_.0
lea eax, [edi + 0x1a0]
mov dword [ecx + 4], eax
mov dword [ecx + 8], 0
mov dword [ecx + 0xc], 1
mov dword [ecx + 0x10], 6
mov byte [ebp - 4], 0xd
jmp 0x461d70
xor ecx, ecx
mov byte [ebp - 4], 6
push 1
push ecx
push str.dwSSQuota
mov ecx, esi
call fcn.00403d70
push 0xc
call fcn.00529b2d
add esp, 4
mov ecx, eax
mov dword [ebp - 0x290], ecx
mov byte [ebp - 4], 0xf
test ecx, ecx
je 0x461dc3
mov dword [ecx], vtable.IniParser::CCommonValue.0
mov byte [ebp - 4], 0x10
mov dword [ecx], vtable.IniParser::CBoolValue.0
lea eax, [edi + 0x19d]
mov dword [ecx + 4], eax
mov dword [ecx + 8], 0
mov byte [ebp - 4], 0xf
jmp 0x461dc5
xor ecx, ecx
mov byte [ebp - 4], 6
push 1
push ecx
push str.bIsSSWO
mov ecx, esi
call fcn.00403d70
movzx eax, byte [edi + 0x1b0]
mov dword [ebp - 0x2c0], eax
push 0x14
call fcn.00529b2d
add esp, 4
mov dword [ebp - 0x290], eax
mov byte [ebp - 4], 0x11
test eax, eax
je 0x461e31
mov dword [eax], vtable.IniParser::CCommonValue.0
mov byte [ebp - 4], 0x12
mov dword [eax], vtable.IniParser::CNumericType_int_.0
lea ecx, [ebp - 0x2c0]
mov dword [eax + 4], ecx
mov dword [eax + 8], 0
mov dword [eax + 0xc], 1
mov dword [eax + 0x10], 6
mov byte [ebp - 4], 0x11
jmp 0x461e33
xor eax, eax
mov byte [ebp - 4], 6
push 1
push eax
push 0x58426c
mov ecx, esi
call fcn.00403d70
push 0x14
call fcn.00529b2d
add esp, 4
mov ecx, eax
mov dword [ebp - 0x290], ecx
mov byte [ebp - 4], 0x13
test ecx, ecx
je 0x461e94
mov dword [ecx], vtable.IniParser::CCommonValue.0
mov byte [ebp - 4], 0x14
mov dword [ecx], vtable.IniParser::CNumericType_double_.0
lea eax, [edi + 0xae0]
mov dword [ecx + 4], eax
mov dword [ecx + 8], 0
mov dword [ecx + 0xc], 0x10
mov dword [ecx + 0x10], 6
mov byte [ebp - 4], 0x13
jmp 0x461e96
xor ecx, ecx
mov byte [ebp - 4], 6
push 1
push ecx
push str.From
mov ecx, esi
call fcn.00403d70
push 0x14
call fcn.00529b2d
add esp, 4
mov ecx, eax
mov dword [ebp - 0x290], ecx
mov byte [ebp - 4], 0x15
test ecx, ecx
je 0x461ef7
mov dword [ecx], vtable.IniParser::CCommonValue.0
mov byte [ebp - 4], 0x16
mov dword [ecx], vtable.IniParser::CNumericType_double_.0
lea eax, [edi + 0xae8]
mov dword [ecx + 4], eax
mov dword [ecx + 8], 0
mov dword [ecx + 0xc], 0x10
mov dword [ecx + 0x10], 6
mov byte [ebp - 4], 0x15
jmp 0x461ef9
xor ecx, ecx
mov byte [ebp - 4], 6
push 1
push ecx
push 0x58c088
mov ecx, esi
call fcn.00403d70
cmp byte [edi + 0xaf9], 0
setne byte [ebp - 0x2a5]
push 0xc
call fcn.00529b2d
add esp, 4
mov dword [ebp - 0x290], eax
mov byte [ebp - 4], 0x17
test eax, eax
je 0x461f58
mov dword [eax], vtable.IniParser::CCommonValue.0
mov byte [ebp - 4], 0x18
mov dword [eax], vtable.IniParser::CBoolValue.0
lea ecx, [ebp - 0x2a5]
mov dword [eax + 4], ecx
mov dword [eax + 8], 0
mov byte [ebp - 4], 0x17
jmp 0x461f5a
xor eax, eax
mov byte [ebp - 4], 6
push 1
push eax
push str.enClp
mov ecx, esi
call fcn.00403d70
push 0x14
call fcn.00529b2d
add esp, 4
mov ecx, eax
mov dword [ebp - 0x290], ecx
mov byte [ebp - 4], 0x19
test ecx, ecx
je 0x461fbb
mov dword [ecx], vtable.IniParser::CCommonValue.0
mov byte [ebp - 4], 0x1a
mov dword [ecx], vtable.IniParser::CNumericType_int_.0
lea eax, [edi + 0xaf4]
mov dword [ecx + 4], eax
mov dword [ecx + 8], 0
mov dword [ecx + 0xc], 1
mov dword [ecx + 0x10], 6
mov byte [ebp - 4], 0x19
jmp 0x461fbd
xor ecx, ecx
mov byte [ebp - 4], 6
push 1
push ecx
push str.dwClpFsize
mov ecx, esi
call fcn.00403d70
push 0xc
call fcn.00529b2d
add esp, 4
mov ecx, eax
mov dword [ebp - 0x290], ecx
mov byte [ebp - 4], 0x1b
test ecx, ecx
je 0x462010
mov dword [ecx], vtable.IniParser::CCommonValue.0
mov byte [ebp - 4], 0x1c
mov dword [ecx], vtable.IniParser::CBoolValue.0
lea eax, [edi + 0xaf8]
mov dword [ecx + 4], eax
mov dword [ecx + 8], 0
mov byte [ebp - 4], 0x1b
jmp 0x462012
xor ecx, ecx
mov byte [ebp - 4], 6
push 1
push ecx
push str.bClpEnF
mov ecx, esi
call fcn.00403d70
push 0xc
call fcn.00529b2d
add esp, 4
mov ecx, eax
mov dword [ebp - 0x290], ecx
mov byte [ebp - 4], 0x1d
test ecx, ecx
je 0x462065
mov dword [ecx], vtable.IniParser::CCommonValue.0
mov byte [ebp - 4], 0x1e
mov dword [ecx], vtable.IniParser::CBoolValue.0
lea eax, [edi + 0x140c]
mov dword [ecx + 4], eax
mov dword [ecx + 8], 0
mov byte [ebp - 4], 0x1d
jmp 0x462067
xor ecx, ecx
mov byte [ebp - 4], 6
push 1
push ecx
push str.bPaused
mov ecx, esi
call fcn.00403d70
movzx eax, byte [edi + 0xafc]
mov dword [ebp - 0x2bc], eax
push 0x14
call fcn.00529b2d
add esp, 4
mov dword [ebp - 0x290], eax
mov byte [ebp - 4], 0x1f
test eax, eax
je 0x4620d3
mov dword [eax], vtable.IniParser::CCommonValue.0
mov byte [ebp - 4], 0x20
mov dword [eax], vtable.IniParser::CNumericType_int_.0
lea ecx, [ebp - 0x2bc]
mov dword [eax + 4], ecx
mov dword [eax + 8], 0
mov dword [eax + 0xc], 1
mov dword [eax + 0x10], 6
mov byte [ebp - 4], 0x1f
jmp 0x4620d5
xor eax, eax
mov byte [ebp - 4], 6
push 1
push eax
push str.bSqual
mov ecx, esi
call fcn.00403d70
push 0xc
call fcn.00529b2d
add esp, 4
mov ecx, eax
mov dword [ebp - 0x290], ecx
mov byte [ebp - 4], 0x21
test ecx, ecx
je 0x462128
mov dword [ecx], vtable.IniParser::CCommonValue.0
mov byte [ebp - 4], 0x22
mov dword [ecx], vtable.IniParser::CBoolValue.0
lea eax, [edi + 0xafb]
mov dword [ecx + 4], eax
mov dword [ecx + 8], 0
mov byte [ebp - 4], 0x21
jmp 0x46212a
xor ecx, ecx
mov byte [ebp - 4], 6
push 1
push ecx
push str.bGrayscale
mov ecx, esi
call fcn.00403d70
push 0xc
call fcn.00529b2d
add esp, 4
mov ecx, eax
mov dword [ebp - 0x290], ecx
mov byte [ebp - 4], 0x23
test ecx, ecx
je 0x46217d
mov dword [ecx], vtable.IniParser::CCommonValue.0
mov byte [ebp - 4], 0x24
mov dword [ecx], vtable.IniParser::CBoolValue.0
lea eax, [edi + 0xfc]
mov dword [ecx + 4], eax
mov dword [ecx + 8], 0
mov byte [ebp - 4], 0x23
jmp 0x46217f
xor ecx, ecx
mov byte [ebp - 4], 6
push 1
push ecx
push 0x58c0fc
mov ecx, esi
call fcn.00403d70
push 0x14
call fcn.00529b2d
add esp, 4
mov ecx, eax
mov dword [ebp - 0x290], ecx
mov byte [ebp - 4], 0x25
test ecx, ecx
je 0x4621e0
mov dword [ecx], vtable.IniParser::CCommonValue.0
mov byte [ebp - 4], 0x26
mov dword [ecx], vtable.IniParser::CNumericType_unsigned_short_int_.0
lea eax, [edi + 0xf4]
mov dword [ecx + 4], eax
mov dword [ecx + 8], 0
mov dword [ecx + 0xc], 1
mov dword [ecx + 0x10], 6
mov byte [ebp - 4], 0x25
jmp 0x4621e2
xor ecx, ecx
mov byte [ebp - 4], 6
push 1
push ecx
push str.wKey
mov ecx, esi
call fcn.00403d70
push 0x14
call fcn.00529b2d
add esp, 4
mov ecx, eax
mov dword [ebp - 0x290], ecx
mov byte [ebp - 4], 0x27
test ecx, ecx
je 0x462243
mov dword [ecx], vtable.IniParser::CCommonValue.0
mov byte [ebp - 4], 0x28
mov dword [ecx], vtable.IniParser::CNumericType_unsigned_short_int_.0
lea eax, [edi + 0x100]
mov dword [ecx + 4], eax
mov dword [ecx + 8], 0
mov dword [ecx + 0xc], 1
mov dword [ecx + 0x10], 6
mov byte [ebp - 4], 0x27
jmp 0x462245
xor ecx, ecx
mov byte [ebp - 4], 6
push 1
push ecx
push str.wMod
mov ecx, esi
call fcn.00403d70
push 0x14
call fcn.00529b2d
add esp, 4
mov ecx, eax
mov dword [ebp - 0x290], ecx
mov byte [ebp - 4], 0x29
test ecx, ecx
je 0x4622a6
mov dword [ecx], vtable.IniParser::CCommonValue.0
mov byte [ebp - 4], 0x2a
mov dword [ecx], vtable.IniParser::CNumericType_unsigned_short_int_.0
lea eax, [edi + 0xf6]
mov dword [ecx + 4], eax
mov dword [ecx + 8], 0
mov dword [ecx + 0xc], 1
mov dword [ecx + 0x10], 6
mov byte [ebp - 4], 0x29
jmp 0x4622a8
xor ecx, ecx
mov byte [ebp - 4], 6
push 1
push ecx
push str.wKeyAgStart
mov ecx, esi
call fcn.00403d70
push 0x14
call fcn.00529b2d
add esp, 4
mov ecx, eax
mov dword [ebp - 0x290], ecx
mov byte [ebp - 4], 0x2b
test ecx, ecx
je 0x462309
mov dword [ecx], vtable.IniParser::CCommonValue.0
mov byte [ebp - 4], 0x2c
mov dword [ecx], vtable.IniParser::CNumericType_unsigned_short_int_.0
lea eax, [edi + 0x102]
mov dword [ecx + 4], eax
mov dword [ecx + 8], 0
mov dword [ecx + 0xc], 1
mov dword [ecx + 0x10], 6
mov byte [ebp - 4], 0x2b
jmp 0x46230b
xor ecx, ecx
mov byte [ebp - 4], 6
push 1
push ecx
push str.wModAgStart
mov ecx, esi
call fcn.00403d70
push 0x14
call fcn.00529b2d
add esp, 4
mov ecx, eax
mov dword [ebp - 0x290], ecx
mov byte [ebp - 4], 0x2d
test ecx, ecx
je 0x46236c
mov dword [ecx], vtable.IniParser::CCommonValue.0
mov byte [ebp - 4], 0x2e
mov dword [ecx], vtable.IniParser::CNumericType_unsigned_short_int_.0
lea eax, [edi + 0xf8]
mov dword [ecx + 4], eax
mov dword [ecx + 8], 0
mov dword [ecx + 0xc], 1
mov dword [ecx + 0x10], 6
mov byte [ebp - 4], 0x2d
jmp 0x46236e
xor ecx, ecx
mov byte [ebp - 4], 6
push 1
push ecx
push str.wKeyAgStop
mov ecx, esi
call fcn.00403d70
push 0x14
call fcn.00529b2d
add esp, 4
mov ecx, eax
mov dword [ebp - 0x290], ecx
mov byte [ebp - 4], 0x2f
test ecx, ecx
je 0x4623cf
mov dword [ecx], vtable.IniParser::CCommonValue.0
mov byte [ebp - 4], 0x30
mov dword [ecx], vtable.IniParser::CNumericType_unsigned_short_int_.0
lea eax, [edi + 0x104]
mov dword [ecx + 4], eax
mov dword [ecx + 8], 0
mov dword [ecx + 0xc], 1
mov dword [ecx + 0x10], 6
mov byte [ebp - 4], 0x2f
jmp 0x4623d1
xor ecx, ecx
mov byte [ebp - 4], 6
push 1
push ecx
push str.wModAgStop
mov ecx, esi
call fcn.00403d70
lea ecx, [edi + 0x108]
mov eax, dword [ecx]
cmp dword [eax - 4], 1
jle 0x462400
push dword [eax - 0xc]
call fcn.004024c0
lea ecx, [edi + 0x108]
mov edx, dword [ecx]
mov dword [ebp - 0x24c], 0
mov dword [ebp - 0x248], 0
mov dword [ebp - 0x248], 7
mov dword [ebp - 0x24c], 0
xor eax, eax
mov word [ebp - 0x25c], ax
cmp word [edx], ax
jne 0x46243c
xor ecx, ecx
jmp 0x46245a
mov ecx, edx
lea eax, [ecx + 2]
mov dword [ebp - 0x290], eax
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x462447
sub ecx, dword [ebp - 0x290]
sar ecx, 1
push ecx
push edx
lea ecx, [ebp - 0x25c]
call fcn.00413ad0
mov byte [ebp - 4], 0x31
push 0x10
call fcn.00529b2d
add esp, 4
mov dword [ebp - 0x290], eax
mov byte [ebp - 4], 0x32
test eax, eax
je 0x4624ad
mov dword [eax], vtable.IniParser::CCommonValue.0
mov byte [ebp - 4], 0x33
mov dword [eax], vtable.IniParser::CStdStringValue.0
lea ecx, [ebp - 0x25c]
mov dword [eax + 4], ecx
mov dword [eax + 8], 0xffffffff
mov byte [eax + 0xc], 1
mov byte [ebp - 4], 0x32
jmp 0x4624af
xor eax, eax
mov byte [ebp - 4], 0x31
push 1
push eax
push str.HKEP
mov ecx, esi
call fcn.00403d70
push 0xc
call fcn.00529b2d
add esp, 4
mov ecx, eax
mov dword [ebp - 0x290], ecx
mov byte [ebp - 4], 0x34
test ecx, ecx
je 0x462502
mov dword [ecx], vtable.IniParser::CCommonValue.0
mov byte [ebp - 4], 0x35
mov dword [ecx], vtable.IniParser::CBoolValue.0
lea eax, [edi + 0xafd]
mov dword [ecx + 4], eax
mov dword [ecx + 8], 0
mov byte [ebp - 4], 0x34
jmp 0x462504
xor ecx, ecx
mov byte [ebp - 4], 0x31
push 1
push ecx
push str.bScreenAppAct
mov ecx, esi
call fcn.00403d70
mov al, byte [edi + 0x1b0]
shr al, 6
and al, 1
mov byte [ebp - 0x2a6], al
push 0xc
call fcn.00529b2d
add esp, 4
mov dword [ebp - 0x290], eax
mov byte [ebp - 4], 0x36
test eax, eax
je 0x462566
mov dword [eax], vtable.IniParser::CCommonValue.0
mov byte [ebp - 4], 0x37
mov dword [eax], vtable.IniParser::CBoolValue.0
lea ecx, [ebp - 0x2a6]
mov dword [eax + 4], ecx
mov dword [eax + 8], 0
mov byte [ebp - 4], 0x36
jmp 0x462568
xor eax, eax
mov byte [ebp - 4], 0x31
push 1
push eax
push str.bSpool
mov ecx, esi
call fcn.00403d70
push 0xc
call fcn.00529b2d
add esp, 4
mov ecx, eax
mov dword [ebp - 0x290], ecx
mov byte [ebp - 4], 0x38
test ecx, ecx
je 0x4625bb
mov dword [ecx], vtable.IniParser::CCommonValue.0
mov byte [ebp - 4], 0x39
mov dword [ecx], vtable.IniParser::CBoolValue.0
lea eax, [edi + 0x18e]
mov dword [ecx + 4], eax
mov dword [ecx + 8], 0
mov byte [ebp - 4], 0x38
jmp 0x4625bd
xor ecx, ecx
mov byte [ebp - 4], 0x31
push 1
push ecx
push str.enPrn
mov ecx, esi
call fcn.00403d70
push 0xc
call fcn.00529b2d
add esp, 4
mov ecx, eax
mov dword [ebp - 0x290], ecx
mov byte [ebp - 4], 0x3a
test ecx, ecx
je 0x462610
mov dword [ecx], vtable.IniParser::CCommonValue.0
mov byte [ebp - 4], 0x3b
mov dword [ecx], vtable.IniParser::CBoolValue.0
lea eax, [edi + 0x191]
mov dword [ecx + 4], eax
mov dword [ecx + 8], 0
mov byte [ebp - 4], 0x3a
jmp 0x462612
xor ecx, ecx
mov byte [ebp - 4], 0x31
push 1
push ecx
push str.bMAPI
mov ecx, esi
call fcn.00403d70
lea eax, [edi + 0xb7a]
push eax
lea ecx, [ebp - 0x2a0]
call fcn.004031c0
mov byte [ebp - 4], 0x3c
push 0x58c1cc
push 0x58c1d0
lea ecx, [ebp - 0x2a0]
call fcn.004140e0
mov dword [ebp - 0x264], 0
mov dword [ebp - 0x260], 0
mov dword [ebp - 0x260], 7
mov dword [ebp - 0x264], 0
xor eax, eax
mov word [ebp - 0x274], ax
mov eax, dword [ebp - 0x2a0]
cmp word [eax], 0
jne 0x462691
xor edx, edx
jmp 0x4626b3
mov edx, eax
lea ecx, [edx + 2]
mov dword [ebp - 0x290], ecx
lea esp, [esp]
mov cx, word [edx]
add edx, 2
test cx, cx
jne 0x4626a0
sub edx, dword [ebp - 0x290]
sar edx, 1
push edx
push eax
lea ecx, [ebp - 0x274]
call fcn.00413ad0
mov byte [ebp - 4], 0x3d
push 0x10
call fcn.00529b2d
add esp, 4
mov dword [ebp - 0x290], eax
mov byte [ebp - 4], 0x3e
test eax, eax
je 0x462706
mov dword [eax], vtable.IniParser::CCommonValue.0
mov byte [ebp - 4], 0x3f
mov dword [eax], vtable.IniParser::CStdStringValue.0
lea ecx, [ebp - 0x274]
mov dword [eax + 4], ecx
mov dword [eax + 8], 0xffffffff
mov byte [eax + 0xc], 1
mov byte [ebp - 4], 0x3e
jmp 0x462708
xor eax, eax
mov byte [ebp - 4], 0x3d
push 1
push eax
push str.SMsg
mov ecx, esi
call fcn.00403d70
push 0
push 0
call dword [sym.imp.KERNEL32.dll_GetCurrentDirectoryW]
mov esi, eax
call fcn.00402a00
mov edx, eax
xor ecx, ecx
test edx, edx
setne cl
test ecx, ecx
jne 0x462743
push 0x80004005
call fcn.004027b0
mov eax, dword [edx]
mov ecx, edx
call dword [eax + 0xc]
add eax, 0x10
mov dword [ebp - 0x298], eax
mov byte [ebp - 4], 0x41
test esi, esi
jns 0x462765
push 0x80070057
call fcn.004027b0
mov edx, dword [ebp - 0x298]
mov ecx, 1
sub ecx, dword [edx - 4]
mov eax, dword [edx - 8]
sub eax, esi
or eax, ecx
jge 0x46278e
push esi
lea ecx, [ebp - 0x298]
call fcn.00402590
mov edx, dword [ebp - 0x298]
cmp esi, dword [edx - 8]
jg 0x46275b
mov dword [edx - 0xc], esi
xor ecx, ecx
mov eax, dword [ebp - 0x298]
mov word [eax + esi*2], cx
push edx
push esi
call dword [sym.imp.KERNEL32.dll_GetCurrentDirectoryW]
mov eax, dword [ebp - 0x298]
push dword [eax - 8]
push eax
call fcn.00529878
add esp, 8
mov edx, eax
test edx, edx
js 0x46275b
mov ecx, dword [ebp - 0x298]
cmp edx, dword [ecx - 8]
jg 0x46275b
mov dword [ecx - 0xc], edx
xor ecx, ecx
mov eax, dword [ebp - 0x298]
mov word [eax + edx*2], cx
cmp dword [edi + 0xd8], ecx
je 0x4627f9
push str.SysWOW64
push str.system32
lea ecx, [ebp - 0x298]
call fcn.004140e0
push 0xb
push str._sstray.ini
lea ecx, [ebp - 0x298]
call fcn.00443ec0
mov byte [ebp - 4], 0x42
wait
push dword [ebp - 0x298]
lea ecx, [ebp - 0x2e0]
call fcn.00404430
wait
mov dword [ebp - 4], 0x41
jmp 0x462844
or esi, 0xffffffff
mov dword [ebp - 0x2b8], 0
mov dword [ebp - 0x2b4], 0
mov dword [ebp - 0x2b0], 0
mov byte [ebp - 4], 0x45
test byte [edi + 0x1b0], 4
je 0x4629a0
cmp byte [edi + 0x140c], 0
jne 0x4629a0
call fcn.0043cbc0
mov dword [ebp - 0x294], eax
test eax, eax
je 0x4629a0
movsd xmm0, qword [edi + 0xae8]
comisd xmm0, xmmword [edi + 0xae0]
jbe 0x4629a0
push 1
lea eax, [ebp - 0x29c]
push eax
mov ecx, edi
call fcn.0045c760
mov byte [ebp - 4], 0x46
push dword [eax]
push 0x104
push 0x5b9c90
call fcn.0052c92e
add esp, 0xc
mov byte [ebp - 4], 0x45
lea ecx, [ebp - 0x29c]
call fcn.00402750
cmp byte [edi + 0x18e], 0
setne al
movzx eax, al
push eax
mov eax, dword [ebp - 0x294]
add eax, 0x2c40
push eax
call dword [sym.imp.KERNEL32.dll_InterlockedExchange]
movups xmm0, xmmword [edi + 0xae0]
mov eax, dword [ebp - 0x294]
movups xmmword [eax + 0x2c30], xmm0
mov ecx, eax
cmp byte [edi + 0x18c], 0
je 0x462926
push 1
jmp 0x462928
push 0
sub esp, 0xc
call fcn.00440f20
mov al, byte [edi + 0x1b0]
not al
and al, 1
movzx eax, al
push eax
lea eax, [edi + 0x1b2]
push eax
lea eax, [edi + 0x5b2]
push eax
mov ecx, dword [ebp - 0x294]
call fcn.00440bd0
mov ecx, dword [0x5ba1b0]
mov eax, dword [ecx + 0x180]
mov edx, dword [ebp - 0x294]
mov dword [edx + 0x13c], eax
mov dword [0x5ba5b0], ecx
mov eax, dword [ecx + 0x180]
mov dword [edx + 0x1a8], eax
mov eax, dword [edi + 0x188]
mov dword [edx + 0x120], eax
mov dword [edx + 0x168], eax
mov dword [edx + 0x1d4], eax
mov ecx, edx
call fcn.0043d400
push 0
push 0
push 1
push 0
call dword [sym.imp.KERNEL32.dll_CreateEventW]
mov dword [edi + 0xf0], eax
cmp byte [edi + 0x140c], 0
jne 0x462d4d
mov eax, dword [0x5ba1b0]
mov dword [0x5ba194], eax
mov ecx, dword [0x5ba210]
mov dword [ebp - 0x294], ecx
test ecx, ecx
jne 0x462a1a
push 0x2c
call fcn.00529b2d
add esp, 4
mov dword [ebp - 0x29c], eax
mov byte [ebp - 4], 0x47
test eax, eax
je 0x462a04
mov ecx, eax
call fcn.0047b070
mov ecx, eax
mov dword [ebp - 0x294], eax
jmp 0x462a0c
xor ecx, ecx
mov dword [ebp - 0x294], ecx
mov byte [ebp - 4], 0x45
mov dword [0x5ba210], ecx
test ecx, ecx
je 0x462a52
mov eax, dword [0x5ba1b0]
mov dword [0x5ba20c], eax
call fcn.0043a0a0
mov ecx, dword [ebp - 0x294]
call fcn.00448160
push 0
push 0
push 0
push 0x47b210
push 0
push 0
call fcn.0052cf98
add esp, 0x18
push eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov ecx, dword [0x5ba220]
mov dword [ebp - 0x294], ecx
test ecx, ecx
jne 0x462aa1
push 0x3c
call fcn.00529b2d
add esp, 4
mov dword [ebp - 0x29c], eax
mov byte [ebp - 4], 0x48
test eax, eax
je 0x462a8b
mov ecx, eax
call fcn.0047c4d0
mov ecx, eax
mov dword [ebp - 0x294], eax
jmp 0x462a93
xor ecx, ecx
mov dword [ebp - 0x294], ecx
mov byte [ebp - 4], 0x45
mov dword [0x5ba220], ecx
test ecx, ecx
je 0x462ad9
mov eax, dword [0x5ba1b0]
mov dword [0x5ba21c], eax
call fcn.0043a0a0
mov ecx, dword [ebp - 0x294]
call fcn.00452470
push 0
push 0
push 0
push 0x47c670
push 0
push 0
call fcn.0052cf98
add esp, 0x18
push eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov ecx, dword [0x5ba1e0]
mov dword [ebp - 0x294], ecx
test ecx, ecx
jne 0x462b28
push 0x2c
call fcn.00529b2d
add esp, 4
mov dword [ebp - 0x29c], eax
mov byte [ebp - 4], 0x49
test eax, eax
je 0x462b12
mov ecx, eax
call fcn.00479440
mov ecx, eax
mov dword [ebp - 0x294], eax
jmp 0x462b1a
xor ecx, ecx
mov dword [ebp - 0x294], ecx
mov byte [ebp - 4], 0x45
mov dword [0x5ba1e0], ecx
test ecx, ecx
je 0x462b60
mov eax, dword [0x5ba1b0]
mov dword [0x5ba1dc], eax
call fcn.0043a0a0
mov ecx, dword [ebp - 0x294]
call fcn.0043a300
push 0
push 0
push 0
push 0x4795e0
push 0
push 0
call fcn.0052cf98
add esp, 0x18
push eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov ecx, dword [0x5ba228]
mov dword [ebp - 0x294], ecx
test ecx, ecx
jne 0x462baf
push 0x2c
call fcn.00529b2d
add esp, 4
mov dword [ebp - 0x29c], eax
mov byte [ebp - 4], 0x4a
test eax, eax
je 0x462b99
mov ecx, eax
call fcn.0047dd60
mov ecx, eax
mov dword [ebp - 0x294], eax
jmp 0x462ba1
xor ecx, ecx
mov dword [ebp - 0x294], ecx
mov byte [ebp - 4], 0x45
mov dword [0x5ba228], ecx
test ecx, ecx
je 0x462be7
mov eax, dword [0x5ba1b0]
mov dword [0x5ba224], eax
call fcn.0043a0a0
mov ecx, dword [ebp - 0x294]
call fcn.00451ce0
push 0
push 0
push 0
push 0x47df00
push 0
push 0
call fcn.0052cf98
add esp, 0x18
push eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov ecx, dword [0x5ba218]
mov dword [ebp - 0x294], ecx
test ecx, ecx
jne 0x462c36
push 0x2c
call fcn.00529b2d
add esp, 4
mov dword [ebp - 0x29c], eax
mov byte [ebp - 4], 0x4b
test eax, eax
je 0x462c20
mov ecx, eax
call fcn.0047bce0
mov ecx, eax
mov dword [ebp - 0x294], eax
jmp 0x462c28
xor ecx, ecx
mov dword [ebp - 0x294], ecx
mov byte [ebp - 4], 0x45
mov dword [0x5ba218], ecx
test ecx, ecx
je 0x462c6e
mov eax, dword [0x5ba1b0]
mov dword [0x5ba214], eax
call fcn.0043a0a0
mov ecx, dword [ebp - 0x294]
call fcn.00451ce0
push 0
push 0
push 0
push 0x47be80
push 0
push 0
call fcn.0052cf98
add esp, 0x18
push eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov eax, dword [0x5ba520]
test eax, eax
jne 0x462ca8
push 0x54
call fcn.00529b2d
add esp, 4
mov dword [ebp - 0x29c], eax
mov byte [ebp - 4], 0x4c
test eax, eax
je 0x462c99
push ecx
mov ecx, eax
call fcn.004ec320
jmp 0x462c9b
xor eax, eax
mov byte [ebp - 4], 0x45
mov dword [0x5ba520], eax
test eax, eax
je 0x462cb0
push ecx
mov ecx, eax
call fcn.004ec950
mov ecx, dword [0x5ba230]
test ecx, ecx
jne 0x462cee
push 0x7c
call fcn.00529b2d
add esp, 4
mov dword [ebp - 0x29c], eax
mov byte [ebp - 4], 0x4d
test eax, eax
je 0x462cde
push ecx
mov ecx, eax
call fcn.0047e570
mov ecx, eax
jmp 0x462ce0
xor ecx, ecx
mov byte [ebp - 4], 0x45
mov dword [0x5ba230], ecx
test ecx, ecx
je 0x462d17
sub esp, 8
movsd xmm0, qword [edi + 0xae8]
movsd qword [esp], xmm0
movzx eax, byte [edi + 0x1b0]
and eax, 0x10
push eax
push ecx
movsd xmm3, qword [edi + 0xae0]
call fcn.0047ea40
call fcn.00446a50
push ecx
mov eax, esp
mov dword [ebp - 0x29c], esp
push 1
push eax
mov ecx, edi
call fcn.0045c9a0
mov byte [ebp - 4], 0x4e
mov byte [ebp - 4], 0x45
call fcn.00446b00
add esp, 4
push 0
xor edx, edx
mov cl, 1
call fcn.004478f0
add esp, 4
push dword [edi + 8]
call dword [sym.imp.WS2_32.dll_closesocket]
push 0
push 1
push 2
call dword [sym.imp.WS2_32.dll_socket]
mov dword [edi + 8], eax
cmp eax, 0xffffffff
jne 0x462d9b
mov ecx, 0xa
mov dword [ebp - 0x2ac], ecx
cmp ecx, 1
je 0x462d9b
push 0
push 1
push 2
call dword [sym.imp.WS2_32.dll_socket]
mov dword [edi + 8], eax
mov ecx, dword [ebp - 0x2ac]
dec ecx
mov dword [ebp - 0x2ac], ecx
cmp eax, 0xffffffff
je 0x462d75
mov ecx, dword [edi + 8]
cmp ecx, 0xffffffff
je 0x4630f2
lea eax, [edi + 0x20]
mov dword [eax], 0x1f4
push 4
push eax
push 0x1006
push 0xffff
push ecx
call dword [sym.imp.WS2_32.dll_setsockopt]
cmp eax, 0xffffffff
jne 0x462f37
push dword [edi + 8]
mov eax, dword [sym.imp.WS2_32.dll_closesocket]
call eax
mov dword [edi + 8], 0xffffffff
mov byte [ebp - 4], 0x41
lea ecx, [ebp - 0x2b8]
call fcn.004fbb10
mov byte [ebp - 4], 0x3d
mov edx, dword [ebp - 0x298]
add edx, 0xfffffff0
lea eax, [edx + 0xc]
mov ecx, esi
lock xadd dword [eax], ecx
dec ecx
test ecx, ecx
jg 0x462e10
mov ecx, dword [edx]
mov eax, dword [ecx]
push edx
call dword [eax + 4]
mov byte [ebp - 4], 0x3c
cmp dword [ebp - 0x260], 8
jb 0x462e2b
push dword [ebp - 0x274]
call fcn.005295dd
add esp, 4
mov dword [ebp - 0x260], 7
mov dword [ebp - 0x264], 0
xor eax, eax
mov word [ebp - 0x274], ax
mov byte [ebp - 4], 0x31
mov edx, dword [ebp - 0x2a0]
add edx, 0xfffffff0
lea eax, [edx + 0xc]
lock xadd dword [eax], esi
dec esi
test esi, esi
jg 0x462e69
mov ecx, dword [edx]
mov eax, dword [ecx]
push edx
call dword [eax + 4]
mov byte [ebp - 4], 6
cmp dword [ebp - 0x248], 8
jb 0x462e84
push dword [ebp - 0x25c]
call fcn.005295dd
add esp, 4
xor eax, eax
mov dword [ebp - 0x248], 7
mov dword [ebp - 0x24c], eax
mov word [ebp - 0x25c], ax
mov byte [ebp - 4], 5
lea ecx, [ebp - 0x2e0]
call fcn.004041f0
mov byte [ebp - 4], 2
cmp dword [ebp - 0x230], 8
jb 0x462ec7
push dword [ebp - 0x244]
call fcn.005295dd
add esp, 4
mov dword [ebp - 0x230], 7
mov dword [ebp - 0x234], 0
xor eax, eax
mov word [ebp - 0x244], ax
mov dword [ebp - 4], 0xffffffff
test ebx, ebx
je 0x462f0d
mov eax, dword [ebx + 4]
test eax, eax
je 0x462f04
push eax
call dword [sym.imp.ADVAPI32.dll_RegCloseKey]
mov dword [ebx + 4], 0
push ebx
call fcn.005295dd
add esp, 4
mov dword [ebp - 0x2a4], 0
xor eax, eax
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 0x18]
xor ecx, ebp
call fcn.005295e2
mov esp, ebp
pop ebp
ret 4
push 4
lea eax, [edi + 0x20]
push eax
push 0x1005
push 0xffff
push dword [edi + 8]
call dword [sym.imp.WS2_32.dll_setsockopt]
cmp eax, 0xffffffff
jne 0x462fd9
push dword [edi + 8]
mov eax, dword [sym.imp.WS2_32.dll_closesocket]
call eax
mov dword [edi + 8], 0xffffffff
mov byte [ebp - 4], 0x41
lea ecx, [ebp - 0x2b8]
call fcn.004fbb10
mov byte [ebp - 4], 0x3d
mov edx, dword [ebp - 0x298]
add edx, 0xfffffff0
lea eax, [edx + 0xc]
mov ecx, esi
lock xadd dword [eax], ecx
dec ecx
test ecx, ecx
jg 0x462f9c
mov ecx, dword [edx]
mov eax, dword [ecx]
push edx
call dword [eax + 4]
mov byte [ebp - 4], 0x3c
cmp dword [ebp - 0x260], 8
jb 0x462fb7
push dword [ebp - 0x274]
call fcn.005295dd
add esp, 4
mov dword [ebp - 0x260], 7
mov dword [ebp - 0x264], 0
xor eax, eax
mov word [ebp - 0x274], ax
jmp 0x462e48
mov dword [ebp - 0x29c], 1
push 4
lea eax, [ebp - 0x29c]
push eax
push 4
push 0xffff
push dword [edi + 8]
call dword [sym.imp.WS2_32.dll_setsockopt]
test eax, eax
je 0x463095
push dword [edi + 8]
mov eax, dword [sym.imp.WS2_32.dll_closesocket]
call eax
mov dword [edi + 8], 0xffffffff
mov byte [ebp - 4], 0x41
lea ecx, [ebp - 0x2b8]
call fcn.004fbb10
mov byte [ebp - 4], 0x3d
lea ecx, [ebp - 0x298]
call fcn.00402750
mov byte [ebp - 4], 0x3c
lea ecx, [ebp - 0x274]
call fcn.00413ce0
mov byte [ebp - 4], 0x31
lea ecx, [ebp - 0x2a0]
call fcn.00402750
mov byte [ebp - 4], 6
lea ecx, [ebp - 0x25c]
call fcn.00413ce0
mov byte [ebp - 4], 5
lea ecx, [ebp - 0x2e0]
call fcn.004041f0
mov byte [ebp - 4], 2
lea ecx, [ebp - 0x244]
call fcn.00413ce0
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x2a4]
call fcn.00414440
jmp 0x462f17
lea esi, [edi + 0xc]
mov eax, 2
mov word [esi], ax
mov eax, dword [edi + 0x1ac]
mov ecx, 0x443
test eax, eax
cmove eax, ecx
mov dword [edi + 0x1ac], eax
movzx eax, ax
push eax
call dword [sym.imp.WS2_32.dll_htons]
mov word [edi + 0xe], ax
mov dword [edi + 0x10], 0
push 0x10
push esi
push dword [edi + 8]
call dword [sym.imp.WS2_32.dll_bind]
test eax, eax
jne 0x463004
push 5
push dword [edi + 8]
call dword [sym.imp.WS2_32.dll_listen]
test eax, eax
jne 0x463004
push str.Global07863591_63B9_4289_8CFA_9E3717EF20CE
push 0
push 0x1f0003
call dword [sym.imp.KERNEL32.dll_OpenEventW]
mov dword [edi + 0xe4], eax
test eax, eax
jne 0x46319b
mov eax, dword [edi + 8]
cmp eax, 0xffffffff
je 0x463122
push eax
mov eax, dword [sym.imp.WS2_32.dll_closesocket]
call eax
mov dword [edi + 8], 0xffffffff
mov byte [ebp - 4], 0x41
lea ecx, [ebp - 0x2b8]
call fcn.004fbb10
mov byte [ebp - 4], 0x3d
mov edx, dword [ebp - 0x298]
add edx, 0xfffffff0
lea eax, [edx + 0xc]
or esi, 0xffffffff
mov ecx, esi
lock xadd dword [eax], ecx
dec ecx
test ecx, ecx
jg 0x46315e
mov ecx, dword [edx]
mov eax, dword [ecx]
push edx
call dword [eax + 4]
mov byte [ebp - 4], 0x3c
cmp dword [ebp - 0x260], 8
jb 0x463179
push dword [ebp - 0x274]
call fcn.005295dd
add esp, 4
mov dword [ebp - 0x260], 7
mov dword [ebp - 0x264], 0
xor eax, eax
mov word [ebp - 0x274], ax
jmp 0x462e48
cmp dword [0x5b9c74], 0
jne 0x4631d4
push 0x5c
call fcn.00529b2d
add esp, 4
mov dword [ebp - 0x29c], eax
mov byte [ebp - 4], 0x55
test eax, eax
je 0x4631c5
mov ecx, eax
call fcn.00430d00
jmp 0x4631c7
xor eax, eax
mov byte [ebp - 4], 0x45
mov dword [0x5b9c74], eax
test eax, eax
je 0x4631fc
mov eax, dword [0x5ba1b0]
mov dword [0x5b9c78], eax
push 0
push 0
push 0
push 0x431100
push 0
push 0
call fcn.0052cf98
add esp, 0x18
push eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
cmp dword [edi + 8], 0xffffffff
je 0x46325b
lea eax, [edi + 0xc0]
push eax
push 0
push 0
push 0x466e90
push 0
push 0
call fcn.0052cf98
add esp, 0x18
mov dword [edi + 0xa4], eax
test eax, eax
jne 0x46323a
mov eax, dword [edi + 8]
cmp eax, 0xffffffff
je 0x46300e
push eax
jmp 0x463007
push 0
push 0
push 0
push 0x4664c0
push 0
push 0
call fcn.0052cf98
add esp, 0x18
mov dword [edi + 0xac], eax
test eax, eax
je 0x463228
push 0
push 0
push 0
push 0x466660
push 0
push 0
call fcn.0052cf98
add esp, 0x18
mov dword [edi + 0xa8], eax
test eax, eax
jne 0x4633bb
mov eax, dword [edi + 8]
cmp eax, 0xffffffff
je 0x463290
push eax
mov eax, dword [sym.imp.WS2_32.dll_closesocket]
call eax
mov dword [edi + 8], 0xffffffff
mov byte [ebp - 4], 0x41
lea ecx, [ebp - 0x2b8]
call fcn.004fbb10
mov byte [ebp - 4], 0x3d
mov edx, dword [ebp - 0x298]
add edx, 0xfffffff0
lea eax, [edx + 0xc]
or esi, 0xffffffff
mov ecx, esi
lock xadd dword [eax], ecx
dec ecx
test ecx, ecx
jg 0x4632cc
mov ecx, dword [edx]
mov eax, dword [ecx]
push edx
call dword [eax + 4]
mov byte [ebp - 4], 0x3c
cmp dword [ebp - 0x260], 8
jb 0x4632e7
push dword [ebp - 0x274]
call fcn.005295dd
add esp, 4
mov dword [ebp - 0x260], 7
mov dword [ebp - 0x264], 0
xor eax, eax
mov word [ebp - 0x274], ax
mov byte [ebp - 4], 0x31
mov edx, dword [ebp - 0x2a0]
add edx, 0xfffffff0
lea eax, [edx + 0xc]
lock xadd dword [eax], esi
dec esi
test esi, esi
jg 0x463325
mov ecx, dword [edx]
mov eax, dword [ecx]
push edx
call dword [eax + 4]
mov byte [ebp - 4], 6
cmp dword [ebp - 0x248], 8
jb 0x463340
push dword [ebp - 0x25c]
call fcn.005295dd
add esp, 4
mov dword [ebp - 0x248], 7
mov dword [ebp - 0x24c], 0
xor eax, eax
mov word [ebp - 0x25c], ax
mov byte [ebp - 4], 5
lea ecx, [ebp - 0x2e0]
call fcn.004041f0
mov byte [ebp - 4], 2
cmp dword [ebp - 0x230], 8
jb 0x463387
push dword [ebp - 0x244]
call fcn.005295dd
add esp, 4
mov dword [ebp - 0x230], 7
mov dword [ebp - 0x234], 0
xor eax, eax
mov word [ebp - 0x244], ax
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x2a4]
call fcn.00414440
jmp 0x462f17
lea eax, [ebp - 0x2e4]
push eax
push 0
push 0
push 0x469680
push 0
push 0
call fcn.0052cf98
mov dword [edi + 0xb8], eax
lea eax, [edi + 0xc4]
push eax
push 0
push 0
push 0x467e90
push 0
push 0
call fcn.0052cf98
add esp, 0x30
mov dword [edi + 0xbc], eax
mov byte [ebp - 4], 0x41
lea ecx, [ebp - 0x2b8]
call fcn.004fbb10
mov byte [ebp - 4], 0x3d
mov edx, dword [ebp - 0x298]
add edx, 0xfffffff0
lea eax, [edx + 0xc]
or esi, 0xffffffff
mov ecx, esi
lock xadd dword [eax], ecx
dec ecx
test ecx, ecx
jg 0x463431
mov ecx, dword [edx]
mov eax, dword [ecx]
push edx
call dword [eax + 4]
mov byte [ebp - 4], 0x3c
cmp dword [ebp - 0x260], 8
jb 0x46344c
push dword [ebp - 0x274]
call fcn.005295dd
add esp, 4
mov dword [ebp - 0x260], 7
mov dword [ebp - 0x264], 0
xor eax, eax
mov word [ebp - 0x274], ax
mov byte [ebp - 4], 0x31
mov edx, dword [ebp - 0x2a0]
add edx, 0xfffffff0
lea eax, [edx + 0xc]
lock xadd dword [eax], esi
dec esi
test esi, esi
jg 0x46348a
mov ecx, dword [edx]
mov eax, dword [ecx]
push edx
call dword [eax + 4]
mov byte [ebp - 4], 6
cmp dword [ebp - 0x248], 8
jb 0x4634a5
push dword [ebp - 0x25c]
call fcn.005295dd
add esp, 4
mov dword [ebp - 0x248], 7
mov dword [ebp - 0x24c], 0
xor eax, eax
mov word [ebp - 0x25c], ax
mov byte [ebp - 4], 5
lea ecx, [ebp - 0x2e0]
call fcn.004041f0
mov byte [ebp - 4], 2
cmp dword [ebp - 0x230], 8
jb 0x4634ec
push dword [ebp - 0x244]
call fcn.005295dd
add esp, 4
mov dword [ebp - 0x230], 7
mov dword [ebp - 0x234], 0
xor eax, eax
mov word [ebp - 0x244], ax
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x2a4]
call fcn.00414440
mov eax, 1
jmp 0x462f19