Function at 0x18000fde0
Capabilities:
Extract resource via kernel32 functions
Terminate process

Disassembly:
mov qword [rsp + 8], rcx
push rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0xd8
mov rcx, qword [0x18003be50]
call fcn.1800010a0
xor r14d, r14d
mov rdi, rax
mov qword [rsp + 0xa8], rax
test rax, rax
jne 0x18000fe21
mov qword [rsp + 0xa8], r14
jmp 0x18000fe39
mov rdx, rax
mov ecx, 0x5000
mov dword [rax + 4], r14d
call fcn.180001120
mov qword [rdi + 8], rax
mov byte [rax], r14b
mov rcx, qword [0x18003be50]
call fcn.1800010a0
mov r15, rax
test rax, rax
jne 0x18000fe52
mov r15, r14
jmp 0x18000fe6a
mov rdx, rax
mov ecx, 0x100
mov dword [rax + 4], r14d
call fcn.180001120
mov qword [r15 + 8], rax
mov byte [rax], 0
or rcx, 0xffffffffffffffff
xor eax, eax
lea rdi, [0x18002e55b]
repne scasb al, byte [rdi]
not rcx
lea rdx, [rcx - 1]
lea rcx, [0x18002e55b]
call fcn.180001340
mov rbx, qword [0x18003dff0]
lea r8, [0x180033588]
mov rcx, rbx
mov edx, 0x65
mov rbp, rax
call qword [sym.imp.KERNEL32.dll_FindResourceA]
mov rsi, rax
test rax, rax
jne 0x18000fec1
lea rcx, [0x180032a58]
call fcn.180003e10
jmp 0x18000ff02
mov rdx, rax
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_SizeofResource]
mov rdx, rsi
mov rcx, rbx
mov edi, eax
call qword [sym.imp.KERNEL32.dll_LoadResource]
mov rcx, rax
mov rbx, rax
call qword [sym.imp.KERNEL32.dll_LockResource]
mov r8d, edi
mov rcx, rbp
mov rdx, rax
mov dword [rbp + 4], r14d
call fcn.180001a10
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_FreeResource]
mov rcx, rbp
call fcn.180002660
mov r13, rax
test rbp, rbp
je 0x18000ff4d
mov rcx, qword [rbp + 8]
test rcx, rcx
je 0x18000ff23
mov edx, dword [rbp]
call fcn.180001240
mov rsi, qword [0x18003be50]
lea rdi, [rbp - 8]
lea rcx, [rsi + 0x20]
call qword [sym.imp.KERNEL32.dll_EnterCriticalSection]
mov rax, qword [rsi + 8]
lea rcx, [rsi + 0x20]
mov qword [rdi], rax
mov qword [rsi + 8], rdi
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
mov eax, dword [r13 + 0xc]
mov ebp, r14d
mov r12, r14
test eax, eax
jle 0x180010074
cmp r14d, eax
jge 0x18001002b
test r12, r12
js 0x18001002b
mov rax, qword [r13 + 0x10]
mov rdx, qword [rax + r12*8]
test rdx, rdx
je 0x18001002b
mov rax, qword [0x18003dfd0]
mov r9, qword [0x18003dfc8]
mov r8, qword [0x18003dfd8]
mov rcx, qword [rax + 8]
mov rax, qword [0x18003dfe0]
mov r9, qword [r9 + 8]
mov r8, qword [r8 + 8]
mov rdx, qword [rdx + 8]
mov qword [rsp + 0x28], rcx
mov rcx, qword [rax + 8]
mov qword [rsp + 0x20], rcx
lea rcx, str.http:___s__s__usr_smac_sver_s
call fcn.180001930
lea rcx, str.Start_DownLoad_Config_File__s
mov rdx, qword [rax + 8]
mov rdi, rax
call fcn.180003eb0
mov rdx, qword [rsp + 0xa8]
mov rcx, qword [rdi + 8]
call fcn.1800060d0
mov rcx, qword [rdi + 8]
cmp eax, 1
je 0x18001003e
test rcx, rcx
je 0x180010001
mov edx, dword [rdi]
call fcn.180001240
mov rsi, qword [0x18003be50]
add rdi, 0xfffffffffffffff8
lea rcx, [rsi + 0x20]
call qword [sym.imp.KERNEL32.dll_EnterCriticalSection]
mov rax, qword [rsi + 8]
lea rcx, [rsi + 0x20]
mov qword [rdi], rax
mov qword [rsi + 8], rdi
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
mov eax, dword [r13 + 0xc]
inc ebp
inc r12
cmp ebp, eax
jl 0x18000ff68
jmp 0x180010074
test rcx, rcx
je 0x18001004a
mov edx, dword [rdi]
call fcn.180001240
mov rsi, qword [0x18003be50]
add rdi, 0xfffffffffffffff8
lea rcx, [rsi + 0x20]
call qword [sym.imp.KERNEL32.dll_EnterCriticalSection]
mov rax, qword [rsi + 8]
lea rcx, [rsi + 0x20]
mov qword [rdi], rax
mov qword [rsi + 8], rdi
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
cmp dword [r13 + 0xc], ebp
jne 0x18001010f
mov rax, qword [0x18003de78]
test rax, rax
je 0x1800100af
mov rdi, qword [rax]
call fcn.180018898
add rax, 0x30
cmp rdi, rax
je 0x1800100a3
mov rcx, rdi
call fcn.1800198e4
mov rcx, qword [0x18003de78]
call fcn.1800183ec
mov ecx, 0x1008
call fcn.18001842c
lea rdx, [0x18002e81c]
lea rcx, str.c:_xscp.txt
mov qword [rax], r14
mov qword [0x18003de78], rax
call fcn.180018f7c
mov rcx, qword [0x18003de78]
mov qword [rcx], rax
cmp rax, 0
jne 0x1800100f9
call fcn.180018898
mov rcx, qword [0x18003de78]
add rax, 0x30
mov qword [rcx], rax
lea rcx, [0x1800335d8]
call fcn.180003eb0
or ecx, 0xffffffff
call qword [sym.imp.KERNEL32.dll_ExitProcess]
mov rsi, qword [rsp + 0xa8]
mov rcx, rsi
call fcn.180001e20
cmp dword [rsi], 0
mov edi, r14d
jle 0x1800101a5
mov eax, dword [rsi + 4]
test eax, eax
jle 0x1800101a5
dec eax
test eax, eax
jle 0x1800101a5
mov rcx, qword [rsi + 8]
movzx edx, word [0x18002e5cc]
movsxd rax, edi
cmp word [rax + rcx], dx
je 0x180010159
mov eax, dword [rsi + 4]
inc edi
dec eax
cmp edi, eax
jl 0x180010143
jmp 0x1800101a5
test edi, edi
js 0x1800101a5
nop dword [rax]
mov r8d, 2
mov edx, edi
mov rcx, rsi
call fcn.180001660
lea r8, [0x18002e564]
mov r9d, 1
mov edx, edi
mov rcx, rsi
call fcn.180001550
lea edx, [rdi + 1]
lea r8, [0x18002e5cc]
mov r9d, 2
mov rcx, rsi
call fcn.1800013c0
mov edi, eax
test eax, eax
jns 0x180010160
mov ecx, dword [rsi + 4]
mov ebx, dword [rsi]
add ecx, 2
cmp ecx, ebx
jl 0x1800101da
mov rdi, qword [rsi + 8]
mov rdx, rsi
call fcn.180001120
movsxd r8, dword [rsi + 4]
mov rdx, rdi
mov rcx, rax
mov qword [rsi + 8], rax
call fcn.180020690
mov edx, ebx
mov rcx, rdi
call fcn.180001240
movsxd rcx, dword [rsi + 4]
movzx eax, byte [reloc.WS2_32.dll_ioctlsocket]
lea rdx, [0x18002e5b4]
add rcx, qword [rsi + 8]
mov byte [rcx], al
inc dword [rsi + 4]
movsxd rcx, dword [rsi + 4]
mov rax, qword [rsi + 8]
mov byte [rcx + rax], 0
mov rcx, rsi
call fcn.180002360
mov edi, r14d
cmp dword [rax + 0xc], 0
mov r12, rax
mov qword [rsp + 0xb8], rax
jle 0x1800102dd
cmp r14d, dword [rax + 0xc]
mov rbx, r14
jge 0x180010239
test edi, edi
js 0x180010239
mov rax, qword [r12 + 0x10]
mov rcx, qword [rbx + rax]
jmp 0x18001023c
mov rcx, r14
mov rcx, qword [rcx + 8]
lea rdx, [0x18002e5ac]
call fcn.1800184e4
test rax, rax
jne 0x1800102cc
mov r8d, dword [r12 + 0xc]
cmp edi, r8d
jge 0x1800102b8
test edi, edi
js 0x1800102b8
mov rax, qword [r12 + 0x18]
test rax, rax
je 0x180010274
mov rcx, qword [r12 + 0x10]
mov rcx, qword [rcx + rbx]
call rax
mov eax, dword [r12 + 0xc]
mov r8d, edi
dec eax
cmp edi, eax
jge 0x1800102b1
mov rdx, rbx
nop word [rax + rax]
mov rcx, qword [r12 + 0x10]
inc r8d
add rdx, 8
mov rax, qword [rcx + rdx]
mov qword [rcx + rdx - 8], rax
mov eax, dword [r12 + 0xc]
dec eax
cmp r8d, eax
jl 0x180010290
dec dword [r12 + 0xc]
jmp 0x1800102c6
lea rcx, str.xdarray_erase_error__d__d_
mov edx, edi
call fcn.180003eb0
dec edi
sub rbx, 8
inc edi
add rbx, 8
cmp edi, dword [r12 + 0xc]
jl 0x18001022a
mov r8, qword [0x18003be40]
movsxd rbp, dword [r12 + 0xc]
lea rcx, [0x180033608]
mov r8, qword [r8 + 8]
mov edx, ebp
call fcn.180003eb0
test ebp, ebp
jg 0x180010394
mov rax, qword [0x18003de78]
test rax, rax
je 0x180010334
mov rdi, qword [rax]
call fcn.180018898
add rax, 0x30
cmp rdi, rax
je 0x180010328
mov rcx, rdi
call fcn.1800198e4
mov rcx, qword [0x18003de78]
call fcn.1800183ec
mov ecx, 0x1008
call fcn.18001842c
lea rdx, [0x18002e81c]
lea rcx, str.c:_xscp.txt
mov qword [rax], r14
mov qword [0x18003de78], rax
call fcn.180018f7c
mov rcx, qword [0x18003de78]
mov qword [rcx], rax
cmp rax, 0
jne 0x18001037e
call fcn.180018898
mov rcx, qword [0x18003de78]
add rax, 0x30
mov qword [rcx], rax
lea rcx, [0x180033628]
call fcn.180003eb0
or ecx, 0xffffffff
call qword [sym.imp.KERNEL32.dll_ExitProcess]
mov rdi, qword [0x18003be50]
mov rbx, r14
lea rcx, [rdi + 0x20]
call qword [sym.imp.KERNEL32.dll_EnterCriticalSection]
cmp qword [rdi + 8], 0
jne 0x1800103b7
mov rcx, rdi
call fcn.180001000
mov rax, qword [rdi + 8]
test rax, rax
je 0x1800103ca
mov rbx, rax
mov rax, qword [rax]
mov qword [rdi + 8], rax
lea rcx, [rdi + 0x20]
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
test rbx, rbx
je 0x180010404
lea r13, [rbx + 8]
mov qword [rsp + 0x88], r13
test r13, r13
je 0x180010404
mov rdx, r13
mov ecx, 0x28
mov dword [r13 + 4], r14d
call fcn.180001120
mov qword [r13 + 8], rax
mov byte [rax], 0
jmp 0x18001040c
mov qword [rsp + 0x88], r14
mov rdi, qword [0x18003be50]
mov rbx, r14
lea rcx, [rdi + 0x20]
call qword [sym.imp.KERNEL32.dll_EnterCriticalSection]
cmp qword [rdi + 8], 0
jne 0x18001042f
mov rcx, rdi
call fcn.180001000
mov rax, qword [rdi + 8]
test rax, rax
je 0x180010442
mov rbx, rax
mov rax, qword [rax]
mov qword [rdi + 8], rax
lea rcx, [rdi + 0x20]
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
test rbx, rbx
je 0x180010479
lea r13, [rbx + 8]
mov qword [rsp + 0x70], r13
test r13, r13
je 0x180010479
mov rdx, r13
mov ecx, reloc.WS2_32.dll_sendto
mov dword [r13 + 4], r14d
call fcn.180001120
mov qword [r13 + 8], rax
mov byte [rax], 0
jmp 0x18001047e
mov qword [rsp + 0x70], r14
mov rdi, qword [0x18003be50]
mov rbx, r14
lea rcx, [rdi + 0x20]
call qword [sym.imp.KERNEL32.dll_EnterCriticalSection]
cmp qword [rdi + 8], 0
jne 0x1800104a1
mov rcx, rdi
call fcn.180001000
mov rax, qword [rdi + 8]
test rax, rax
je 0x1800104b4
mov rbx, rax
mov rax, qword [rax]
mov qword [rdi + 8], rax
lea rcx, [rdi + 0x20]
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
test rbx, rbx
je 0x1800104ee
lea r13, [rbx + 8]
mov qword [rsp + 0xa0], r13
test r13, r13
je 0x1800104ee
mov rdx, r13
mov ecx, 0x64
mov dword [r13 + 4], r14d
call fcn.180001120
mov qword [r13 + 8], rax
mov byte [rax], 0
jmp 0x1800104f6
mov qword [rsp + 0xa0], r14
mov rdi, qword [0x18003be50]
mov rbx, r14
lea rcx, [rdi + 0x20]
call qword [sym.imp.KERNEL32.dll_EnterCriticalSection]
cmp qword [rdi + 8], 0
jne 0x180010519
mov rcx, rdi
call fcn.180001000
mov rax, qword [rdi + 8]
test rax, rax
je 0x18001052c
mov rbx, rax
mov rax, qword [rax]
mov qword [rdi + 8], rax
lea rcx, [rdi + 0x20]
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
test rbx, rbx
je 0x180010566
lea r13, [rbx + 8]
mov qword [rsp + 0x80], r13
test r13, r13
je 0x180010566
mov rdx, r13
mov ecx, 0x64
mov dword [r13 + 4], r14d
call fcn.180001120
mov qword [r13 + 8], rax
mov byte [rax], 0
jmp 0x18001056e
mov qword [rsp + 0x80], r14
mov rdi, qword [0x18003be50]
mov rbx, r14
lea rcx, [rdi + 0x20]
call qword [sym.imp.KERNEL32.dll_EnterCriticalSection]
cmp qword [rdi + 8], 0
jne 0x180010591
mov rcx, rdi
call fcn.180001000
mov rax, qword [rdi + 8]
test rax, rax
je 0x1800105a4
mov rbx, rax
mov rax, qword [rax]
mov qword [rdi + 8], rax
lea rcx, [rdi + 0x20]
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
test rbx, rbx
je 0x1800105de
lea r13, [rbx + 8]
mov qword [rsp + 0x130], r13
test r13, r13
je 0x1800105de
mov rdx, r13
mov ecx, 0x64
mov dword [r13 + 4], r14d
call fcn.180001120
mov qword [r13 + 8], rax
mov byte [rax], 0
jmp 0x1800105e9
mov r13, r14
mov qword [rsp + 0x130], r14
mov rdi, qword [0x18003be50]
mov rbx, r14
lea rcx, [rdi + 0x20]
call qword [sym.imp.KERNEL32.dll_EnterCriticalSection]
cmp qword [rdi + 8], 0
jne 0x18001060c
mov rcx, rdi
call fcn.180001000
mov rax, qword [rdi + 8]
test rax, rax
je 0x18001061f
mov rbx, rax
mov rax, qword [rax]
mov qword [rdi + 8], rax
lea rcx, [rdi + 0x20]
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
test rbx, rbx
je 0x180010656
lea rdi, [rbx + 8]
mov qword [rsp + 0x68], rdi
test rdi, rdi
je 0x180010656
mov rdx, rdi
mov ecx, reloc.WS2_32.dll_sendto
mov dword [rdi + 4], r14d
call fcn.180001120
mov qword [rdi + 8], rax
mov byte [rax], 0
jmp 0x18001065b
mov qword [rsp + 0x68], r14
mov rdi, qword [0x18003be50]
mov rbx, r14
lea rcx, [rdi + 0x20]
call qword [sym.imp.KERNEL32.dll_EnterCriticalSection]
cmp qword [rdi + 8], 0
jne 0x18001067e
mov rcx, rdi
call fcn.180001000
mov rax, qword [rdi + 8]
test rax, rax
je 0x180010691
mov rbx, rax
mov rax, qword [rax]
mov qword [rdi + 8], rax
lea rcx, [rdi + 0x20]
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
test rbx, rbx
je 0x1800106c8
lea rdi, [rbx + 8]
mov qword [rsp + 0x60], rdi
test rdi, rdi
je 0x1800106c8
mov rdx, rdi
mov ecx, reloc.WS2_32.dll_sendto
mov dword [rdi + 4], r14d
call fcn.180001120
mov qword [rdi + 8], rax
mov byte [rax], 0
jmp 0x1800106cd
mov qword [rsp + 0x60], r14
mov rdi, qword [0x18003be50]
mov rbx, r14
lea rcx, [rdi + 0x20]
call qword [sym.imp.KERNEL32.dll_EnterCriticalSection]
cmp qword [rdi + 8], 0
jne 0x1800106f0
mov rcx, rdi
call fcn.180001000
mov rax, qword [rdi + 8]
test rax, rax
je 0x180010703
mov rbx, rax
mov rax, qword [rax]
mov qword [rdi + 8], rax
lea rcx, [rdi + 0x20]
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
test rbx, rbx
je 0x18001073a
lea rdi, [rbx + 8]
mov qword [rsp + 0x78], rdi
test rdi, rdi
je 0x18001073a
mov rdx, rdi
mov ecx, 0x64
mov dword [rdi + 4], r14d
call fcn.180001120
mov qword [rdi + 8], rax
mov byte [rax], 0
jmp 0x18001073f
mov qword [rsp + 0x78], r14
mov rdi, qword [0x18003be50]
mov rbx, r14
lea rcx, [rdi + 0x20]
call qword [sym.imp.KERNEL32.dll_EnterCriticalSection]
cmp qword [rdi + 8], 0
jne 0x180010762
mov rcx, rdi
call fcn.180001000
mov rax, qword [rdi + 8]
test rax, rax
je 0x180010775
mov rbx, rax
mov rax, qword [rax]
mov qword [rdi + 8], rax
lea rcx, [rdi + 0x20]
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
test rbx, rbx
je 0x1800107af
lea rdi, [rbx + 8]
mov qword [rsp + 0x90], rdi
test rdi, rdi
je 0x1800107af
mov rdx, rdi
mov ecx, gethostbyname
mov dword [rdi + 4], r14d
call fcn.180001120
mov qword [rdi + 8], rax
mov byte [rax], 0
jmp 0x1800107b7
mov qword [rsp + 0x90], r14
mov rdi, qword [0x18003be50]
mov rbx, r14
lea rcx, [rdi + 0x20]
call qword [sym.imp.KERNEL32.dll_EnterCriticalSection]
cmp qword [rdi + 8], 0
jne 0x1800107da
mov rcx, rdi
call fcn.180001000
mov rax, qword [rdi + 8]
test rax, rax
je 0x1800107ed
mov rbx, rax
mov rax, qword [rax]
mov qword [rdi + 8], rax
lea rcx, [rdi + 0x20]
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
test rbx, rbx
je 0x180010824
add rbx, 8
mov qword [rsp + 0x98], rbx
je 0x180010824
mov rdx, rbx
mov ecx, reloc.WS2_32.dll_sendto
mov dword [rbx + 4], r14d
call fcn.180001120
mov qword [rbx + 8], rax
mov byte [rax], 0
jmp 0x18001082f
mov rbx, r14
mov qword [rsp + 0x98], rbx
mov eax, r14d
mov rcx, r14
mov qword [rsp + 0xc0], rbp
mov dword [rsp + 0x128], eax
mov qword [rsp + 0xb0], rcx
test ebp, ebp
jle 0x1800122d4
lea r8, [0x180000000]
nop dword [rax + rax]
cmp eax, dword [r12 + 0xc]
jge 0x180010877
test rcx, rcx
js 0x180010877
mov rax, qword [r12 + 0x10]
mov rdi, qword [rax + rcx*8]
jmp 0x18001087a
mov rdi, r14
mov rax, qword [r15 + 8]
mov dword [r15 + 4], r14d
mov qword [rsp + 0x138], rdi
mov byte [rax], 0
cmp dword [rdi], 0
jle 0x18001096e
cmp dword [rdi + 4], 0
jle 0x18001096e
lea r8, [0x18002e5ac]
mov r9d, 1
xor edx, edx
mov rcx, rdi
call fcn.1800013c0
movsxd rbp, eax
test eax, eax
js 0x180010967
mov ecx, dword [r15]
mov r13, qword [rdi + 8]
lea r12d, [rbp + 1]
cmp ecx, r12d
jge 0x180010947
mov rdi, qword [r15 + 8]
test ecx, ecx
jle 0x180010938
mov edx, r14d
mov rsi, r14
lea rax, reloc.WS2_32.dll_recv
cmp ecx, dword [rax]
jle 0x180010903
inc edx
inc rsi
add rax, 0x10
cmp edx, 4
jb 0x1800108e7
mov rcx, rdi
call fcn.1800183ec
jmp 0x180010938
lea r9, [0x180000000]
add rsi, rsi
add rdi, 0xfffffffffffffff8
mov rsi, qword [r9 + rsi*8 + 0x3a9d0]
lea rcx, [rsi + 0x20]
call qword [sym.imp.KERNEL32.dll_EnterCriticalSection]
mov rax, qword [rsi + 8]
lea rcx, [rsi + 0x20]
mov qword [rdi], rax
mov qword [rsi + 8], rdi
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
mov rdx, r15
mov ecx, r12d
call fcn.180001120
mov qword [r15 + 8], rax
test ebp, ebp
jle 0x18001095a
mov rcx, qword [r15 + 8]
mov r8, rbp
mov rdx, r13
call fcn.180020690
mov rax, qword [r15 + 8]
mov dword [r15 + 4], ebp
mov byte [rbp + rax], 0
lea r8, [0x180000000]
movsxd rbp, dword [r15 + 4]
mov rbx, qword [rsp + 0x70]
mov ecx, dword [rbx]
test ebp, ebp
jle 0x180010a1d
mov r13, qword [r15 + 8]
lea r12d, [rbp + 1]
cmp ecx, r12d
jge 0x1800109fc
mov rdi, qword [rbx + 8]
test ecx, ecx
jle 0x1800109ed
mov edx, r14d
mov rsi, r14
lea rax, reloc.WS2_32.dll_recv
cmp ecx, dword [rax]
jle 0x1800109bf
inc edx
inc rsi
add rax, 0x10
cmp edx, 4
jb 0x1800109a3
mov rcx, rdi
call fcn.1800183ec
jmp 0x1800109ed
add rsi, rsi
add rdi, 0xfffffffffffffff8
mov rsi, qword [r8 + rsi*8 + 0x3a9d0]
lea rcx, [rsi + 0x20]
call qword [sym.imp.KERNEL32.dll_EnterCriticalSection]
mov rax, qword [rsi + 8]
lea rcx, [rsi + 0x20]
mov qword [rdi], rax
mov qword [rsi + 8], rdi
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
mov rdx, rbx
mov ecx, r12d
call fcn.180001120
mov qword [rbx + 8], rax
test ebp, ebp
jle 0x180010a0f
mov rcx, qword [rbx + 8]
mov r8, rbp
mov rdx, r13
call fcn.180020690
mov rax, qword [rbx + 8]
mov dword [rbx + 4], ebp
mov byte [rbp + rax], 0
jmp 0x180010a91
mov rdi, qword [rbx + 8]
test ecx, ecx
jle 0x180010a7c
mov edx, r14d
mov rsi, r14
lea rax, reloc.WS2_32.dll_recv
cmp ecx, dword [rax]
jle 0x180010a4e
inc edx
inc rsi
add rax, 0x10
cmp edx, 4
jb 0x180010a32
mov rcx, rdi
call fcn.1800183ec
jmp 0x180010a7c
add rsi, rsi
add rdi, 0xfffffffffffffff8
mov rsi, qword [r8 + rsi*8 + 0x3a9d0]
lea rcx, [rsi + 0x20]
call qword [sym.imp.KERNEL32.dll_EnterCriticalSection]
mov rax, qword [rsi + 8]
lea rcx, [rsi + 0x20]
mov qword [rdi], rax
mov qword [rsi + 8], rdi
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
mov rdx, rbx
xor ecx, ecx
call fcn.180001120
mov qword [rbx + 8], rax
mov byte [rax], 0
mov dword [rbx + 4], r14d
mov r8, qword [0x18003be40]
mov r9, qword [r15 + 8]
mov rcx, qword [rsp + 0xa0]
mov r8, qword [r8 + 8]
lea rdx, str._s_s
call fcn.180001b60
mov rax, qword [r15 + 8]
mov r10, qword [rsp + 0x138]
mov dword [r15 + 4], r14d
mov byte [rax], 0
cmp dword [r10], 0
mov ecx, r14d
jle 0x180010be2
mov eax, dword [r10 + 4]
test eax, eax
jle 0x180010be2
lea edx, [rax - 3]
test edx, edx
jle 0x180010be2
mov rbx, qword [r10 + 8]
mov edi, dword [str.md5]
movsxd rax, ecx
add rax, rbx
cmp dword [rax], edi
je 0x180010b0a
inc ecx
cmp ecx, edx
jl 0x180010af5
jmp 0x180010be2
test ecx, ecx
js 0x180010be2
lea edi, [rcx + 4]
lea r8, [0x18002e564]
mov r9d, 1
mov edx, edi
mov rcx, r10
call fcn.1800013c0
mov ebp, eax
test eax, eax
js 0x180010be2
mov ecx, dword [r15]
sub ebp, edi
movsxd r13, edi
lea r12d, [rbp + 1]
add r13, rbx
cmp ecx, r12d
jge 0x180010bc0
mov rdi, qword [r15 + 8]
test ecx, ecx
jle 0x180010bb1
mov edx, r14d
mov rsi, r14
lea rax, reloc.WS2_32.dll_recv
nop
cmp ecx, dword [rax]
jle 0x180010b7c
inc edx
inc rsi
add rax, 0x10
cmp edx, 4
jb 0x180010b60
mov rcx, rdi
call fcn.1800183ec
jmp 0x180010bb1
lea r9, [0x180000000]
add rsi, rsi
add rdi, 0xfffffffffffffff8
mov rsi, qword [r9 + rsi*8 + 0x3a9d0]
lea rcx, [rsi + 0x20]
call qword [sym.imp.KERNEL32.dll_EnterCriticalSection]
mov rax, qword [rsi + 8]
lea rcx, [rsi + 0x20]
mov qword [rdi], rax
mov qword [rsi + 8], rdi
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
mov rdx, r15
mov ecx, r12d
call fcn.180001120
mov qword [r15 + 8], rax
test ebp, ebp
jle 0x180010bd3
mov rcx, qword [r15 + 8]
movsxd r8, ebp
mov rdx, r13
call fcn.180020690
mov rax, qword [r15 + 8]
movsxd rcx, ebp
mov dword [r15 + 4], ebp
mov byte [rcx + rax], 0
cmp dword [r15 + 4], 0
mov rcx, qword [r15 + 8]
mov edx, r14d
jle 0x180010cca
movzx eax, byte [rcx]
cmp al, 0x41
jl 0x180010c03
cmp al, 0x5a
jg 0x180010c03
add al, 0x20
mov byte [rcx], al
inc edx
inc rcx
cmp edx, dword [r15 + 4]
jl 0x180010bf4
movsxd rbp, dword [r15 + 4]
test ebp, ebp
jle 0x180010cca
mov rbx, qword [rsp + 0x88]
mov r13, qword [r15 + 8]
lea r12d, [rbp + 1]
mov ecx, dword [rbx]
cmp ecx, r12d
jge 0x180010ca6
mov rdi, qword [rbx + 8]
test ecx, ecx
jle 0x180010c97
mov edx, r14d
mov rsi, r14
lea rax, reloc.WS2_32.dll_recv
cmp ecx, dword [rax]
jle 0x180010c62
inc edx
inc rsi
add rax, 0x10
cmp edx, 4
jb 0x180010c46
mov rcx, rdi
call fcn.1800183ec
jmp 0x180010c97
lea rax, [0x180000000]
add rsi, rsi
add rdi, 0xfffffffffffffff8
mov rsi, qword [rax + rsi*8 + 0x3a9d0]
lea rcx, [rsi + 0x20]
call qword [sym.imp.KERNEL32.dll_EnterCriticalSection]
mov rax, qword [rsi + 8]
lea rcx, [rsi + 0x20]
mov qword [rdi], rax
mov qword [rsi + 8], rdi
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
mov rdx, rbx
mov ecx, r12d
call fcn.180001120
mov qword [rbx + 8], rax
test ebp, ebp
jle 0x180010cb9
mov rcx, qword [rbx + 8]
mov r8, rbp
mov rdx, r13
call fcn.180020690
mov rax, qword [rbx + 8]
mov dword [rbx + 4], ebp
mov byte [rbp + rax], 0
jmp 0x180010d56
mov rbx, qword [rsp + 0x88]
mov ecx, dword [rbx]
mov rdi, qword [rbx + 8]
test ecx, ecx
jle 0x180010d41
mov edx, r14d
mov rsi, r14
lea rax, reloc.WS2_32.dll_recv
nop dword [rax]
cmp ecx, dword [rax]
jle 0x180010d0c
inc edx
inc rsi
add rax, 0x10
cmp edx, 4
jb 0x180010cf0
mov rcx, rdi
call fcn.1800183ec
jmp 0x180010d41
lea rax, [0x180000000]
add rsi, rsi
add rdi, 0xfffffffffffffff8
mov rsi, qword [rax + rsi*8 + 0x3a9d0]
lea rcx, [rsi + 0x20]
call qword [sym.imp.KERNEL32.dll_EnterCriticalSection]
mov rax, qword [rsi + 8]
lea rcx, [rsi + 0x20]
mov qword [rdi], rax
mov qword [rsi + 8], rdi
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
mov rdx, rbx
xor ecx, ecx
call fcn.180001120
mov qword [rbx + 8], rax
mov byte [rax], 0
mov dword [rbx + 4], r14d
mov rax, qword [r15 + 8]
mov r10, qword [rsp + 0x138]
mov dword [r15 + 4], r14d
mov byte [rax], 0
cmp dword [r10], 0
mov ecx, r14d
jle 0x180010e82
mov eax, dword [r10 + 4]
test eax, eax
jle 0x180010e82
lea edx, [rax - 3]
test edx, edx
jle 0x180010e82
mov rbx, qword [r10 + 8]
mov edi, dword [str.url]
movsxd rax, ecx
cmp dword [rax + rbx], edi
je 0x180010daa
inc ecx
cmp ecx, edx
jl 0x180010d97
jmp 0x180010e82
test ecx, ecx
js 0x180010e82
lea edi, [rcx + 4]
lea r8, [0x18002e564]
mov r9d, 1
mov edx, edi
mov rcx, r10
call fcn.1800013c0
mov ebp, eax
test eax, eax
js 0x180010e82
mov ecx, dword [r15]
sub ebp, edi
movsxd r13, edi
lea r12d, [rbp + 1]
add r13, rbx
cmp ecx, r12d
jge 0x180010e60
mov rdi, qword [r15 + 8]
test ecx, ecx
jle 0x180010e51
mov edx, r14d
mov rsi, r14
lea rax, reloc.WS2_32.dll_recv
nop
cmp ecx, dword [rax]
jle 0x180010e1c
inc edx
inc rsi
add rax, 0x10
cmp edx, 4
jb 0x180010e00
mov rcx, rdi
call fcn.1800183ec
jmp 0x180010e51
lea rax, [0x180000000]
add rsi, rsi
add rdi, 0xfffffffffffffff8
mov rsi, qword [rax + rsi*8 + 0x3a9d0]
lea rcx, [rsi + 0x20]
call qword [sym.imp.KERNEL32.dll_EnterCriticalSection]
mov rax, qword [rsi + 8]
lea rcx, [rsi + 0x20]
mov qword [rdi], rax
mov qword [rsi + 8], rdi
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
mov rdx, r15
mov ecx, r12d
call fcn.180001120
mov qword [r15 + 8], rax
test ebp, ebp
jle 0x180010e73
mov rcx, qword [r15 + 8]
movsxd r8, ebp
mov rdx, r13
call fcn.180020690
mov rax, qword [r15 + 8]
movsxd rcx, ebp
mov dword [r15 + 4], ebp
mov byte [rcx + rax], 0
movsxd rbp, dword [r15 + 4]
mov rbx, qword [rsp + 0x80]
mov ecx, dword [rbx]
test ebp, ebp
jle 0x180010f41
mov r13, qword [r15 + 8]
lea r12d, [rbp + 1]
cmp ecx, r12d
jge 0x180010f20
mov rdi, qword [rbx + 8]
test ecx, ecx
jle 0x180010f11
mov edx, r14d
mov rsi, r14
lea rax, reloc.WS2_32.dll_recv
nop word [rax + rax]
cmp ecx, dword [rax]
jle 0x180010edc
inc edx
inc rsi
add rax, 0x10
cmp edx, 4
jb 0x180010ec0
mov rcx, rdi
call fcn.1800183ec
jmp 0x180010f11
lea rax, [0x180000000]
add rsi, rsi
add rdi, 0xfffffffffffffff8
mov rsi, qword [rax + rsi*8 + 0x3a9d0]
lea rcx, [rsi + 0x20]
call qword [sym.imp.KERNEL32.dll_EnterCriticalSection]
mov rax, qword [rsi + 8]
lea rcx, [rsi + 0x20]
mov qword [rdi], rax
mov qword [rsi + 8], rdi
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
mov rdx, rbx
mov ecx, r12d
call fcn.180001120
mov qword [rbx + 8], rax
test ebp, ebp
jle 0x180010f33
mov rcx, qword [rbx + 8]
mov r8, rbp
mov rdx, r13
call fcn.180020690
mov rax, qword [rbx + 8]
mov dword [rbx + 4], ebp
mov byte [rbp + rax], 0
jmp 0x180010fbc
mov rdi, qword [rbx + 8]
test ecx, ecx
jle 0x180010fa7
mov edx, r14d
mov rsi, r14
lea rax, reloc.WS2_32.dll_recv
cmp ecx, dword [rax]
jle 0x180010f72
inc edx
inc rsi
add rax, 0x10
cmp edx, 4
jb 0x180010f56
mov rcx, rdi
call fcn.1800183ec
jmp 0x180010fa7
lea rax, [0x180000000]
add rsi, rsi
add rdi, 0xfffffffffffffff8
mov rsi, qword [rax + rsi*8 + 0x3a9d0]
lea rcx, [rsi + 0x20]
call qword [sym.imp.KERNEL32.dll_EnterCriticalSection]
mov rax, qword [rsi + 8]
lea rcx, [rsi + 0x20]
mov qword [rdi], rax
mov qword [rsi + 8], rdi
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
mov rdx, rbx
xor ecx, ecx
call fcn.180001120
mov qword [rbx + 8], rax
mov byte [rax], 0
mov dword [rbx + 4], r14d
mov rsi, qword [rsp + 0x130]
mov r13, qword [rsp + 0x138]
mov edi, r14d
mov rax, qword [rsi + 8]
mov dword [rsi + 4], r14d
mov byte [rax], 0
cmp dword [r13], 0
jle 0x180011131
mov eax, dword [r13 + 4]
test eax, eax
jle 0x180011131
lea r8d, [rax - 4]
lea r9, [0x180000000]
test r8d, r8d
jle 0x180011138
mov rbx, qword [r13 + 8]
nop dword [rax]
movsxd rax, edi
mov edx, dword [rax + rbx]
cmp edx, dword [r9 + 0x33668]
jne 0x180011031
mov dl, byte [rax + rbx + 4]
cmp dl, byte [r9 + 0x3366c]
jne 0x180011031
mov eax, r14d
jmp 0x180011036
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
je 0x180011046
inc edi
cmp edi, r8d
jl 0x180011010
jmp 0x180011138
test edi, edi
js 0x180011138
add edi, 5
lea r8, [0x18002e564]
mov r9d, 1
mov edx, edi
mov rcx, r13
call fcn.1800013c0
mov ebp, eax
test eax, eax
js 0x180011131
mov ecx, dword [rsi]
sub ebp, edi
movsxd r13, edi
lea r12d, [rbp + 1]
add r13, rbx
cmp ecx, r12d
jge 0x180011108
mov rdi, qword [rsi + 8]
test ecx, ecx
jle 0x1800110f9
mov edx, r14d
mov rsi, r14
lea rax, reloc.WS2_32.dll_recv
nop
cmp ecx, dword [rax]
jle 0x1800110bc
inc edx
inc rsi
add rax, 0x10
cmp edx, 4
jb 0x1800110a0
mov rcx, rdi
call fcn.1800183ec
jmp 0x1800110f1
lea rax, [0x180000000]
add rsi, rsi
add rdi, 0xfffffffffffffff8
mov rsi, qword [rax + rsi*8 + 0x3a9d0]
lea rcx, [rsi + 0x20]
call qword [sym.imp.KERNEL32.dll_EnterCriticalSection]
mov rax, qword [rsi + 8]
lea rcx, [rsi + 0x20]
mov qword [rdi], rax
mov qword [rsi + 8], rdi
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
mov rsi, qword [rsp + 0x130]
mov rdx, rsi
mov ecx, r12d
call fcn.180001120
mov qword [rsi + 8], rax
test ebp, ebp
jle 0x18001111b
mov rcx, qword [rsi + 8]
movsxd r8, ebp
mov rdx, r13
call fcn.180020690
mov rax, qword [rsi + 8]
mov r13, qword [rsp + 0x138]
movsxd rcx, ebp
mov dword [rsi + 4], ebp
mov byte [rcx + rax], 0
lea r9, [0x180000000]
cmp dword [rsi + 4], 1
jge 0x1800112a5
mov rbx, qword [rsp + 0x120]
test rbx, rbx
jne 0x1800111df
mov ecx, dword [rsi]
mov rdi, qword [rsi + 8]
test ecx, ecx
jle 0x1800111ca
mov edx, r14d
mov rsi, r14
lea rax, reloc.WS2_32.dll_recv
nop word [rax + rax]
cmp ecx, dword [rax]
jle 0x18001118c
inc edx
inc rsi
add rax, 0x10
cmp edx, 4
jb 0x180011170
mov rcx, rdi
call fcn.1800183ec
jmp 0x1800111c2
add rsi, rsi
add rdi, 0xfffffffffffffff8
mov rsi, qword [r9 + rsi*8 + 0x3a9d0]
lea rcx, [rsi + 0x20]
call qword [sym.imp.KERNEL32.dll_EnterCriticalSection]
mov rax, qword [rsi + 8]
lea rcx, [rsi + 0x20]
mov qword [rdi], rax
mov qword [rsi + 8], rdi
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
mov rbx, qword [rsp + 0x120]
mov rsi, qword [rsp + 0x130]
mov rdx, rsi
xor ecx, ecx
call fcn.180001120
mov qword [rsi + 8], rax
mov byte [rax], 0
mov dword [rsi + 4], r14d
or rcx, 0xffffffffffffffff
xor eax, eax
mov rdi, rbx
repne scasb al, byte [rdi]
not rcx
mov r12d, ecx
lea rbp, [rcx - 1]
mov ecx, dword [rsi]
cmp ecx, r12d
jge 0x180011284
mov rdi, qword [rsi + 8]
test ecx, ecx
jle 0x180011275
mov edx, r14d
mov rsi, r14
lea rax, reloc.WS2_32.dll_recv
cmp ecx, dword [rax]
jle 0x180011230
inc edx
inc rsi
add rax, 0x10
cmp edx, 4
jb 0x180011214
mov rcx, rdi
call fcn.1800183ec
jmp 0x18001126d
lea rax, [0x180000000]
add rsi, rsi
add rdi, 0xfffffffffffffff8
mov rsi, qword [rax + rsi*8 + 0x3a9d0]
lea rcx, [rsi + 0x20]
call qword [sym.imp.KERNEL32.dll_EnterCriticalSection]
mov rax, qword [rsi + 8]
lea rcx, [rsi + 0x20]
mov qword [rdi], rax
mov qword [rsi + 8], rdi
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
mov rbx, qword [rsp + 0x120]
mov rsi, qword [rsp + 0x130]
mov rdx, rsi
mov ecx, r12d
call fcn.180001120
mov qword [rsi + 8], rax
test ebp, ebp
jle 0x180011297
mov rcx, qword [rsi + 8]
movsxd r8, ebp
mov rdx, rbx
call fcn.180020690
mov rax, qword [rsi + 8]
movsxd rcx, ebp
mov dword [rsi + 4], ebp
mov byte [rcx + rax], 0
mov rax, qword [r15 + 8]
mov dword [r15 + 4], r14d
mov edi, r14d
mov byte [rax], 0
cmp dword [r13], 0
jle 0x180011412
mov eax, dword [r13 + 4]
test eax, eax
jle 0x180011412
lea r8d, [rax - 4]
test r8d, r8d
jle 0x180011412
mov rbx, qword [r13 + 8]
lea r9, [0x180000000]
nop word [rax + rax]
movsxd rax, edi
mov edx, dword [rax + rbx]
cmp edx, dword [r9 + 0x33670]
jne 0x180011311
mov dl, byte [rax + rbx + 4]
cmp dl, byte [r9 + 0x33674]
jne 0x180011311
mov eax, r14d
jmp 0x180011316
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
je 0x180011326
inc edi
cmp edi, r8d
jl 0x1800112f0
jmp 0x180011412
test edi, edi
js 0x180011412
add edi, 5
lea r8, [0x18002e564]
mov r9d, 1
mov edx, edi
mov rcx, r13
call fcn.1800013c0
mov ebp, eax
test eax, eax
js 0x180011412
mov ecx, dword [r15]
sub ebp, edi
movsxd r13, edi
lea r12d, [rbp + 1]
add r13, rbx
cmp ecx, r12d
jge 0x1800113e8
mov rdi, qword [r15 + 8]
test ecx, ecx
jle 0x1800113d9
mov edx, r14d
mov rsi, r14
lea rax, reloc.WS2_32.dll_recv
nop
cmp ecx, dword [rax]
jle 0x18001139c
inc edx
inc rsi
add rax, 0x10
cmp edx, 4
jb 0x180011380
mov rcx, rdi
call fcn.1800183ec
jmp 0x1800113d1
lea rax, [0x180000000]
add rsi, rsi
add rdi, 0xfffffffffffffff8
mov rsi, qword [rax + rsi*8 + 0x3a9d0]
lea rcx, [rsi + 0x20]
call qword [sym.imp.KERNEL32.dll_EnterCriticalSection]
mov rax, qword [rsi + 8]
lea rcx, [rsi + 0x20]
mov qword [rdi], rax
mov qword [rsi + 8], rdi
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
mov rsi, qword [rsp + 0x130]
mov rdx, r15
mov ecx, r12d
call fcn.180001120
mov qword [r15 + 8], rax
test ebp, ebp
jle 0x1800113fb
mov rcx, qword [r15 + 8]
movsxd r8, ebp
mov rdx, r13
call fcn.180020690
mov rax, qword [r15 + 8]
mov r13, qword [rsp + 0x138]
movsxd rcx, ebp
mov dword [r15 + 4], ebp
mov byte [rcx + rax], 0
mov r12, qword [r15 + 8]
or rcx, 0xffffffffffffffff
xor eax, eax
mov rdi, r12
repne scasb al, byte [rdi]
mov edi, dword [rsi]
not rcx
lea rbp, [rcx - 1]
add ecx, dword [rsi + 4]
cmp ecx, edi
jl 0x1800114be
mov rbx, qword [rsi + 8]
mov rdx, rsi
call fcn.180001120
movsxd r8, dword [rsi + 4]
mov rdx, rbx
mov rcx, rax
mov qword [rsi + 8], rax
call fcn.180020690
test edi, edi
jle 0x1800114be
mov edx, r14d
mov rsi, r14
lea rax, reloc.WS2_32.dll_recv
cmp edi, dword [rax]
jle 0x180011481
inc edx
inc rsi
add rax, 0x10
cmp edx, 4
jb 0x180011465
mov rcx, rbx
call fcn.1800183ec
jmp 0x1800114b6
lea rax, [0x180000000]
add rsi, rsi
lea rdi, [rbx - 8]
mov rsi, qword [rax + rsi*8 + 0x3a9d0]
lea rcx, [rsi + 0x20]
call qword [sym.imp.KERNEL32.dll_EnterCriticalSection]
mov rax, qword [rsi + 8]
lea rcx, [rsi + 0x20]
mov qword [rdi], rax
mov qword [rsi + 8], rdi
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
mov rsi, qword [rsp + 0x130]
movsxd rcx, dword [rsi + 4]
movsxd r8, ebp
mov rdx, r12
add rcx, qword [rsi + 8]
call fcn.180020690
add dword [rsi + 4], ebp
movsxd rcx, dword [rsi + 4]
mov rax, qword [rsi + 8]
mov edx, r14d
mov byte [rcx + rax], 0
cmp dword [rsi + 4], 0
mov rcx, qword [rsi + 8]
jle 0x180011509
nop dword [rax]
movzx eax, byte [rcx]
cmp al, 0x41
jl 0x1800114ff
cmp al, 0x5a
jg 0x1800114ff
add al, 0x20
mov byte [rcx], al
inc edx
inc rcx
cmp edx, dword [rsi + 4]
jl 0x1800114f0
mov rax, qword [r15 + 8]
mov dword [r15 + 4], r14d
mov edi, r14d
mov byte [rax], 0
cmp dword [r13], 0
jle 0x180011662
mov eax, dword [r13 + 4]
test eax, eax
jle 0x180011662
lea r8d, [rax - 4]
lea r9, [0x180000000]
test r8d, r8d
jle 0x180011669
mov rbx, qword [r13 + 8]
nop word [rax + rax]
movsxd rax, edi
mov edx, dword [rax + rbx]
cmp edx, dword [r9 + 0x33678]
jne 0x180011571
mov dl, byte [rax + rbx + 4]
cmp dl, byte [r9 + 0x3367c]
jne 0x180011571
mov eax, r14d
jmp 0x180011576
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
je 0x180011586
inc edi
cmp edi, r8d
jl 0x180011550
jmp 0x180011669
test edi, edi
js 0x180011669
add edi, 5
lea r8, [0x18002e564]
mov r9d, 1
mov edx, edi
mov rcx, r13
call fcn.1800013c0
mov ebp, eax
test eax, eax
js 0x180011662
mov ecx, dword [r15]
sub ebp, edi
movsxd r13, edi
lea r12d, [rbp + 1]
add r13, rbx
cmp ecx, r12d
jge 0x180011640
mov rdi, qword [r15 + 8]
test ecx, ecx
jle 0x180011631
mov edx, r14d
mov rsi, r14
lea rax, reloc.WS2_32.dll_recv
nop dword [rax + rax]
cmp ecx, dword [rax]
jle 0x1800115fc
inc edx
inc rsi
add rax, 0x10
cmp edx, 4
jb 0x1800115e0
mov rcx, rdi
call fcn.1800183ec
jmp 0x180011631
lea rax, [0x180000000]
add rsi, rsi
add rdi, 0xfffffffffffffff8
mov rsi, qword [rax + rsi*8 + 0x3a9d0]
lea rcx, [rsi + 0x20]
call qword [sym.imp.KERNEL32.dll_EnterCriticalSection]
mov rax, qword [rsi + 8]
lea rcx, [rsi + 0x20]
mov qword [rdi], rax
mov qword [rsi + 8], rdi
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
mov rdx, r15
mov ecx, r12d
call fcn.180001120
mov qword [r15 + 8], rax
test ebp, ebp
jle 0x180011653
mov rcx, qword [r15 + 8]
movsxd r8, ebp
mov rdx, r13
call fcn.180020690
mov rax, qword [r15 + 8]
movsxd rcx, ebp
mov dword [r15 + 4], ebp
mov byte [rcx + rax], 0
lea r9, [0x180000000]
movsxd rbp, dword [r15 + 4]
mov rbx, qword [rsp + 0x68]
mov ecx, dword [rbx]
test ebp, ebp
jle 0x18001171a
mov r13, qword [r15 + 8]
lea r12d, [rbp + 1]
cmp ecx, r12d
jge 0x1800116f9
mov rdi, qword [rbx + 8]
test ecx, ecx
jle 0x1800116ea
mov edx, r14d
mov rsi, r14
lea rax, reloc.WS2_32.dll_recv
nop
cmp ecx, dword [rax]
jle 0x1800116bc
inc edx
inc rsi
add rax, 0x10
cmp edx, 4
jb 0x1800116a0
mov rcx, rdi
call fcn.1800183ec
jmp 0x1800116ea
add rsi, rsi
add rdi, 0xfffffffffffffff8
mov rsi, qword [r9 + rsi*8 + 0x3a9d0]
lea rcx, [rsi + 0x20]
call qword [sym.imp.KERNEL32.dll_EnterCriticalSection]
mov rax, qword [rsi + 8]
lea rcx, [rsi + 0x20]
mov qword [rdi], rax
mov qword [rsi + 8], rdi
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
mov rdx, rbx
mov ecx, r12d
call fcn.180001120
mov qword [rbx + 8], rax
test ebp, ebp
jle 0x18001170c
mov rcx, qword [rbx + 8]
mov r8, rbp
mov rdx, r13
call fcn.180020690
mov rax, qword [rbx + 8]
mov dword [rbx + 4], ebp
mov byte [rbp + rax], 0
jmp 0x18001178f
mov rdi, qword [rbx + 8]
test ecx, ecx
jle 0x18001177a
mov edx, r14d
mov rsi, r14
lea rax, reloc.WS2_32.dll_recv
nop
cmp ecx, dword [rax]
jle 0x18001174c
inc edx
inc rsi
add rax, 0x10
cmp edx, 4
jb 0x180011730
mov rcx, rdi
call fcn.1800183ec
jmp 0x18001177a
add rsi, rsi
add rdi, 0xfffffffffffffff8
mov rsi, qword [r9 + rsi*8 + 0x3a9d0]
lea rcx, [rsi + 0x20]
call qword [sym.imp.KERNEL32.dll_EnterCriticalSection]
mov rax, qword [rsi + 8]
lea rcx, [rsi + 0x20]
mov qword [rdi], rax
mov qword [rsi + 8], rdi
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
mov rdx, rbx
xor ecx, ecx
call fcn.180001120
mov qword [rbx + 8], rax
mov byte [rax], 0
mov dword [rbx + 4], r14d
cmp dword [rbx + 4], 0
mov rcx, qword [rbx + 8]
mov edx, r14d
jle 0x1800117b9
nop dword [rax]
movzx eax, byte [rcx]
cmp al, 0x41
jl 0x1800117af
cmp al, 0x5a
jg 0x1800117af
add al, 0x20
mov byte [rcx], al
inc edx
inc rcx
cmp edx, dword [rbx + 4]
jl 0x1800117a0
mov rax, qword [r15 + 8]
mov r10, qword [rsp + 0x138]
mov dword [r15 + 4], r14d
mov byte [rax], 0
cmp dword [r10], 0
mov edi, r14d
jle 0x180011912
mov eax, dword [r10 + 4]
test eax, eax
jle 0x180011912
lea r8d, [rax - 4]
lea r9, [0x180000000]
test r8d, r8d
jle 0x180011919
mov rbx, qword [r10 + 8]
nop dword [rax]
movsxd rax, edi
mov edx, dword [rax + rbx]
cmp edx, dword [r9 + 0x33680]
jne 0x180011821
mov dl, byte [rax + rbx + 4]
cmp dl, byte [r9 + 0x33684]
jne 0x180011821
mov eax, r14d
jmp 0x180011826
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
je 0x180011836
inc edi
cmp edi, r8d
jl 0x180011800
jmp 0x180011919
test edi, edi
js 0x180011919
add edi, 5
lea r8, [0x18002e564]
mov r9d, 1
mov edx, edi
mov rcx, r10
call fcn.1800013c0
mov ebp, eax
test eax, eax
js 0x180011912
mov ecx, dword [r15]
sub ebp, edi
movsxd r13, edi
lea r12d, [rbp + 1]
add r13, rbx
cmp ecx, r12d
jge 0x1800118f0
mov rdi, qword [r15 + 8]
test ecx, ecx
jle 0x1800118e1
mov edx, r14d
mov rsi, r14
lea rax, reloc.WS2_32.dll_recv
nop dword [rax + rax]
cmp ecx, dword [rax]
jle 0x1800118ac
inc edx
inc rsi
add rax, 0x10
cmp edx, 4
jb 0x180011890
mov rcx, rdi
call fcn.1800183ec
jmp 0x1800118e1
lea rax, [0x180000000]
add rsi, rsi
add rdi, 0xfffffffffffffff8
mov rsi, qword [rax + rsi*8 + 0x3a9d0]
lea rcx, [rsi + 0x20]
call qword [sym.imp.KERNEL32.dll_EnterCriticalSection]
mov rax, qword [rsi + 8]
lea rcx, [rsi + 0x20]
mov qword [rdi], rax
mov qword [rsi + 8], rdi
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
mov rdx, r15
mov ecx, r12d
call fcn.180001120
mov qword [r15 + 8], rax
test ebp, ebp
jle 0x180011903
mov rcx, qword [r15 + 8]
movsxd r8, ebp
mov rdx, r13
call fcn.180020690
mov rax, qword [r15 + 8]
movsxd rcx, ebp
mov dword [r15 + 4], ebp
mov byte [rcx + rax], 0
lea r9, [0x180000000]
movsxd rbp, dword [r15 + 4]
mov rbx, qword [rsp + 0x60]
mov ecx, dword [rbx]
test ebp, ebp
jle 0x1800119ca
mov r13, qword [r15 + 8]
lea r12d, [rbp + 1]
cmp ecx, r12d
jge 0x1800119a9
mov rdi, qword [rbx + 8]
test ecx, ecx
jle 0x18001199a
mov edx, r14d
mov rsi, r14
lea rax, reloc.WS2_32.dll_recv
nop
cmp ecx, dword [rax]
jle 0x18001196c
inc edx
inc rsi
add rax, 0x10
cmp edx, 4
jb 0x180011950
mov rcx, rdi
call fcn.1800183ec
jmp 0x18001199a
add rsi, rsi
add rdi, 0xfffffffffffffff8
mov rsi, qword [r9 + rsi*8 + 0x3a9d0]
lea rcx, [rsi + 0x20]
call qword [sym.imp.KERNEL32.dll_EnterCriticalSection]
mov rax, qword [rsi + 8]
lea rcx, [rsi + 0x20]
mov qword [rdi], rax
mov qword [rsi + 8], rdi
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
mov rdx, rbx
mov ecx, r12d
call fcn.180001120
mov qword [rbx + 8], rax
test ebp, ebp
jle 0x1800119bc
mov rcx, qword [rbx + 8]
mov r8, rbp
mov rdx, r13
call fcn.180020690
mov rax, qword [rbx + 8]
mov dword [rbx + 4], ebp
mov byte [rbp + rax], 0
jmp 0x180011a3f
mov rdi, qword [rbx + 8]
test ecx, ecx
jle 0x180011a2a
mov edx, r14d
mov rsi, r14
lea rax, reloc.WS2_32.dll_recv
nop
cmp ecx, dword [rax]
jle 0x1800119fc
inc edx
inc rsi
add rax, 0x10
cmp edx, 4
jb 0x1800119e0
mov rcx, rdi
call fcn.1800183ec
jmp 0x180011a2a
add rsi, rsi
add rdi, 0xfffffffffffffff8
mov rsi, qword [r9 + rsi*8 + 0x3a9d0]
lea rcx, [rsi + 0x20]
call qword [sym.imp.KERNEL32.dll_EnterCriticalSection]
mov rax, qword [rsi + 8]
lea rcx, [rsi + 0x20]
mov qword [rdi], rax
mov qword [rsi + 8], rdi
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
mov rdx, rbx
xor ecx, ecx
call fcn.180001120
mov qword [rbx + 8], rax
mov byte [rax], 0
mov dword [rbx + 4], r14d
mov rax, qword [r15 + 8]
mov r10, qword [rsp + 0x138]
mov dword [r15 + 4], r14d
mov byte [rax], 0
cmp dword [r10], 0
mov edi, r14d
jle 0x180011ba2
mov eax, dword [r10 + 4]
test eax, eax
jle 0x180011ba2
lea r8d, [rax - 5]
lea r9, [0x180000000]
test r8d, r8d
jle 0x180011ba9
mov rbx, qword [r10 + 8]
nop word [rax + rax]
movsxd rax, edi
mov edx, dword [rax + rbx]
cmp edx, dword [r9 + 0x33688]
jne 0x180011ab3
mov dx, word [rax + rbx + 4]
cmp dx, word [r9 + 0x3368c]
jne 0x180011ab3
mov eax, r14d
jmp 0x180011ab8
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
je 0x180011ac8
inc edi
cmp edi, r8d
jl 0x180011a90
jmp 0x180011ba9
test edi, edi
js 0x180011ba9
add edi, 6
lea r8, [0x18002e564]
mov r9d, 1
mov edx, edi
mov rcx, r10
call fcn.1800013c0
mov ebp, eax
test eax, eax
js 0x180011ba2
mov ecx, dword [r15]
sub ebp, edi
movsxd r13, edi
lea r12d, [rbp + 1]
add r13, rbx
cmp ecx, r12d
jge 0x180011b80
mov rdi, qword [r15 + 8]
test ecx, ecx
jle 0x180011b71
mov edx, r14d
mov rsi, r14
lea rax, reloc.WS2_32.dll_recv
nop dword [rax]
cmp ecx, dword [rax]
jle 0x180011b3c
inc edx
inc rsi
add rax, 0x10
cmp edx, 4
jb 0x180011b20
mov rcx, rdi
call fcn.1800183ec
jmp 0x180011b71
lea rax, [0x180000000]
add rsi, rsi
add rdi, 0xfffffffffffffff8
mov rsi, qword [rax + rsi*8 + 0x3a9d0]
lea rcx, [rsi + 0x20]
call qword [sym.imp.KERNEL32.dll_EnterCriticalSection]
mov rax, qword [rsi + 8]
lea rcx, [rsi + 0x20]
mov qword [rdi], rax
mov qword [rsi + 8], rdi
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
mov rdx, r15
mov ecx, r12d
call fcn.180001120
mov qword [r15 + 8], rax
test ebp, ebp
jle 0x180011b93
mov rcx, qword [r15 + 8]
movsxd r8, ebp
mov rdx, r13
call fcn.180020690
mov rax, qword [r15 + 8]
movsxd rcx, ebp
mov dword [r15 + 4], ebp
mov byte [rcx + rax], 0
lea r9, [0x180000000]
movsxd rbp, dword [r15 + 4]
mov rbx, qword [rsp + 0x78]
mov ecx, dword [rbx]
test ebp, ebp
jle 0x180011c5a
mov r13, qword [r15 + 8]
lea r12d, [rbp + 1]
cmp ecx, r12d
jge 0x180011c39
mov rdi, qword [rbx + 8]
test ecx, ecx
jle 0x180011c2a
mov edx, r14d
mov rsi, r14
lea rax, reloc.WS2_32.dll_recv
nop
cmp ecx, dword [rax]
jle 0x180011bfc
inc edx
inc rsi
add rax, 0x10
cmp edx, 4
jb 0x180011be0
mov rcx, rdi
call fcn.1800183ec
jmp 0x180011c2a
add rsi, rsi
add rdi, 0xfffffffffffffff8
mov rsi, qword [r9 + rsi*8 + 0x3a9d0]
lea rcx, [rsi + 0x20]
call qword [sym.imp.KERNEL32.dll_EnterCriticalSection]
mov rax, qword [rsi + 8]
lea rcx, [rsi + 0x20]
mov qword [rdi], rax
mov qword [rsi + 8], rdi
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
mov rdx, rbx
mov ecx, r12d
call fcn.180001120
mov qword [rbx + 8], rax
test ebp, ebp
jle 0x180011c4c
mov rcx, qword [rbx + 8]
mov r8, rbp
mov rdx, r13
call fcn.180020690
mov rax, qword [rbx + 8]
mov dword [rbx + 4], ebp
mov byte [rbp + rax], 0
jmp 0x180011ccf
mov rdi, qword [rbx + 8]
test ecx, ecx
jle 0x180011cba
mov edx, r14d
mov rsi, r14
lea rax, reloc.WS2_32.dll_recv
nop
cmp ecx, dword [rax]
jle 0x180011c8c
inc edx
inc rsi
add rax, 0x10
cmp edx, 4
jb 0x180011c70
mov rcx, rdi
call fcn.1800183ec
jmp 0x180011cba
add rsi, rsi
add rdi, 0xfffffffffffffff8
mov rsi, qword [r9 + rsi*8 + 0x3a9d0]
lea rcx, [rsi + 0x20]
call qword [sym.imp.KERNEL32.dll_EnterCriticalSection]
mov rax, qword [rsi + 8]
lea rcx, [rsi + 0x20]
mov qword [rdi], rax
mov qword [rsi + 8], rdi
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
mov rdx, rbx
xor ecx, ecx
call fcn.180001120
mov qword [rbx + 8], rax
mov byte [rax], 0
mov dword [rbx + 4], r14d
mov rax, qword [r15 + 8]
mov r10, qword [rsp + 0x138]
mov dword [r15 + 4], r14d
mov byte [rax], 0
cmp dword [r10], 0
mov edi, r14d
jle 0x180011e32
mov eax, dword [r10 + 4]
test eax, eax
jle 0x180011e32
lea r8d, [rax - 8]
lea r9, [0x180000000]
test r8d, r8d
jle 0x180011e39
mov rbx, qword [r10 + 8]
nop word [rax + rax]
movsxd rax, edi
mov rdx, qword [rax + rbx]
cmp rdx, qword [r9 + 0x33690]
jne 0x180011d42
mov dl, byte [rax + rbx + 8]
cmp dl, byte [r9 + 0x33698]
jne 0x180011d42
mov eax, r14d
jmp 0x180011d47
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
je 0x180011d57
inc edi
cmp edi, r8d
jl 0x180011d20
jmp 0x180011e39
test edi, edi
js 0x180011e39
add edi, 9
lea r8, [0x18002e564]
mov r9d, 1
mov edx, edi
mov rcx, r10
call fcn.1800013c0
mov ebp, eax
test eax, eax
js 0x180011e32
mov ecx, dword [r15]
sub ebp, edi
movsxd r13, edi
lea r12d, [rbp + 1]
add r13, rbx
cmp ecx, r12d
jge 0x180011e10
mov rdi, qword [r15 + 8]
test ecx, ecx
jle 0x180011e01
mov edx, r14d
mov rsi, r14
lea rax, reloc.WS2_32.dll_recv
nop dword [rax]
cmp ecx, dword [rax]
jle 0x180011dcc
inc edx
inc rsi
add rax, 0x10
cmp edx, 4
jb 0x180011db0
mov rcx, rdi
call fcn.1800183ec
jmp 0x180011e01
lea rax, [0x180000000]
add rsi, rsi
add rdi, 0xfffffffffffffff8
mov rsi, qword [rax + rsi*8 + 0x3a9d0]
lea rcx, [rsi + 0x20]
call qword [sym.imp.KERNEL32.dll_EnterCriticalSection]
mov rax, qword [rsi + 8]
lea rcx, [rsi + 0x20]
mov qword [rdi], rax
mov qword [rsi + 8], rdi
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
mov rdx, r15
mov ecx, r12d
call fcn.180001120
mov qword [r15 + 8], rax
test ebp, ebp
jle 0x180011e23
mov rcx, qword [r15 + 8]
movsxd r8, ebp
mov rdx, r13
call fcn.180020690
mov rax, qword [r15 + 8]
movsxd rcx, ebp
mov dword [r15 + 4], ebp
mov byte [rcx + rax], 0
lea r9, [0x180000000]
movsxd rbp, dword [r15 + 4]
mov rbx, qword [rsp + 0x90]
mov ecx, dword [rbx]
test ebp, ebp
jle 0x180011eeb
mov r13, qword [r15 + 8]
lea r12d, [rbp + 1]
cmp ecx, r12d
jge 0x180011eca
mov rdi, qword [rbx + 8]
test ecx, ecx
jle 0x180011ebb
mov edx, r14d
mov rsi, r14
lea rax, reloc.WS2_32.dll_recv
cmp ecx, dword [rax]
jle 0x180011e8d
inc edx
inc rsi
add rax, 0x10
cmp edx, 4
jb 0x180011e71
mov rcx, rdi
call fcn.1800183ec
jmp 0x180011ebb
add rsi, rsi
add rdi, 0xfffffffffffffff8
mov rsi, qword [r9 + rsi*8 + 0x3a9d0]
lea rcx, [rsi + 0x20]
call qword [sym.imp.KERNEL32.dll_EnterCriticalSection]
mov rax, qword [rsi + 8]
lea rcx, [rsi + 0x20]
mov qword [rdi], rax
mov qword [rsi + 8], rdi
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
mov rdx, rbx
mov ecx, r12d
call fcn.180001120
mov qword [rbx + 8], rax
test ebp, ebp
jle 0x180011edd
mov rcx, qword [rbx + 8]
mov r8, rbp
mov rdx, r13
call fcn.180020690
mov rax, qword [rbx + 8]
mov dword [rbx + 4], ebp
mov byte [rbp + rax], 0
jmp 0x180011f5f
mov rdi, qword [rbx + 8]
test ecx, ecx
jle 0x180011f4a
mov edx, r14d
mov rsi, r14
lea rax, reloc.WS2_32.dll_recv
cmp ecx, dword [rax]
jle 0x180011f1c
inc edx
inc rsi
add rax, 0x10
cmp edx, 4
jb 0x180011f00
mov rcx, rdi
call fcn.1800183ec
jmp 0x180011f4a
add rsi, rsi
add rdi, 0xfffffffffffffff8
mov rsi, qword [r9 + rsi*8 + 0x3a9d0]
lea rcx, [rsi + 0x20]
call qword [sym.imp.KERNEL32.dll_EnterCriticalSection]
mov rax, qword [rsi + 8]
lea rcx, [rsi + 0x20]
mov qword [rdi], rax
mov qword [rsi + 8], rdi
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
mov rdx, rbx
xor ecx, ecx
call fcn.180001120
mov qword [rbx + 8], rax
mov byte [rax], 0
mov dword [rbx + 4], r14d
mov rax, qword [r15 + 8]
mov r10, qword [rsp + 0x138]
mov dword [r15 + 4], r14d
mov byte [rax], 0
cmp dword [r10], 0
mov edi, r14d
jle 0x1800120d2
mov eax, dword [r10 + 4]
test eax, eax
jle 0x1800120d2
lea r8d, [rax - 0xa]
lea r9, [0x180000000]
test r8d, r8d
jle 0x1800120d9
mov rbx, qword [r10 + 8]
nop word [rax + rax]
movsxd rax, edi
mov rdx, qword [rax + rbx]
cmp rdx, qword [r9 + 0x336a0]
jne 0x180011fe1
mov dx, word [rax + rbx + 8]
cmp dx, word [r9 + 0x336a8]
jne 0x180011fe1
mov dl, byte [rax + rbx + 0xa]
cmp dl, byte [r9 + 0x336aa]
jne 0x180011fe1
mov eax, r14d
jmp 0x180011fe6
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
je 0x180011ff6
inc edi
cmp edi, r8d
jl 0x180011fb0
jmp 0x1800120d9
test edi, edi
js 0x1800120d9
add edi, 0xb
lea r8, [0x18002e564]
mov r9d, 1
mov edx, edi
mov rcx, r10
call fcn.1800013c0
mov ebp, eax
test eax, eax
js 0x1800120d2
mov ecx, dword [r15]
sub ebp, edi
movsxd r13, edi
lea r12d, [rbp + 1]
add r13, rbx
cmp ecx, r12d
jge 0x1800120b0
mov rdi, qword [r15 + 8]
test ecx, ecx
jle 0x1800120a1
mov edx, r14d
mov rsi, r14
lea rax, reloc.WS2_32.dll_recv
nop dword [rax + rax]
cmp ecx, dword [rax]
jle 0x18001206c
inc edx
inc rsi
add rax, 0x10
cmp edx, 4
jb 0x180012050
mov rcx, rdi
call fcn.1800183ec
jmp 0x1800120a1
lea rax, [0x180000000]
add rsi, rsi
add rdi, 0xfffffffffffffff8
mov rsi, qword [rax + rsi*8 + 0x3a9d0]
lea rcx, [rsi + 0x20]
call qword [sym.imp.KERNEL32.dll_EnterCriticalSection]
mov rax, qword [rsi + 8]
lea rcx, [rsi + 0x20]
mov qword [rdi], rax
mov qword [rsi + 8], rdi
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
mov rdx, r15
mov ecx, r12d
call fcn.180001120
mov qword [r15 + 8], rax
test ebp, ebp
jle 0x1800120c3
mov rcx, qword [r15 + 8]
movsxd r8, ebp
mov rdx, r13
call fcn.180020690
mov rax, qword [r15 + 8]
movsxd rcx, ebp
mov dword [r15 + 4], ebp
mov byte [rcx + rax], 0
lea r9, [0x180000000]
movsxd rbp, dword [r15 + 4]
mov rbx, qword [rsp + 0x98]
mov ecx, dword [rbx]
test ebp, ebp
jle 0x18001218b
mov r13, qword [r15 + 8]
lea r12d, [rbp + 1]
cmp ecx, r12d
jge 0x18001216a
mov rdi, qword [rbx + 8]
test ecx, ecx
jle 0x18001215b
mov edx, r14d
mov rsi, r14
lea rax, reloc.WS2_32.dll_recv
cmp ecx, dword [rax]
jle 0x18001212d
inc edx
inc rsi
add rax, 0x10
cmp edx, 4
jb 0x180012111
mov rcx, rdi
call fcn.1800183ec
jmp 0x18001215b
add rsi, rsi
add rdi, 0xfffffffffffffff8
mov rsi, qword [r9 + rsi*8 + 0x3a9d0]
lea rcx, [rsi + 0x20]
call qword [sym.imp.KERNEL32.dll_EnterCriticalSection]
mov rax, qword [rsi + 8]
lea rcx, [rsi + 0x20]
mov qword [rdi], rax
mov qword [rsi + 8], rdi
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
mov rdx, rbx
mov ecx, r12d
call fcn.180001120
mov qword [rbx + 8], rax
test ebp, ebp
jle 0x18001217d
mov rcx, qword [rbx + 8]
mov r8, rbp
mov rdx, r13
call fcn.180020690
mov rax, qword [rbx + 8]
mov dword [rbx + 4], ebp
mov byte [rbp + rax], 0
jmp 0x1800121ff
mov rdi, qword [rbx + 8]
test ecx, ecx
jle 0x1800121ea
mov edx, r14d
mov rsi, r14
lea rax, reloc.WS2_32.dll_recv
cmp ecx, dword [rax]
jle 0x1800121bc
inc edx
inc rsi
add rax, 0x10
cmp edx, 4
jb 0x1800121a0
mov rcx, rdi
call fcn.1800183ec
jmp 0x1800121ea
add rsi, rsi
add rdi, 0xfffffffffffffff8
mov rsi, qword [r9 + rsi*8 + 0x3a9d0]
lea rcx, [rsi + 0x20]
call qword [sym.imp.KERNEL32.dll_EnterCriticalSection]
mov rax, qword [rsi + 8]
lea rcx, [rsi + 0x20]
mov qword [rdi], rax
mov qword [rsi + 8], rdi
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
mov rdx, rbx
xor ecx, ecx
call fcn.180001120
mov qword [rbx + 8], rax
mov byte [rax], 0
mov dword [rbx + 4], r14d
mov rax, qword [rbx + 8]
mov rsi, qword [rsp + 0x90]
mov rbp, qword [rsp + 0x78]
mov r13, qword [rsp + 0x130]
mov rdi, qword [rsp + 0x68]
mov r8, qword [rsp + 0x70]
mov rdx, qword [rsp + 0x88]
mov r8, qword [r8 + 8]
mov rcx, qword [0x18003be48]
mov rdx, qword [rdx + 8]
mov qword [rsp + 0x50], rax
mov rax, qword [rsi + 8]
mov qword [rsp + 0x48], rax
mov rax, qword [rbp + 8]
mov qword [rsp + 0x40], rax
mov rax, qword [rsp + 0x60]
mov rax, qword [rax + 8]
mov qword [rsp + 0x38], rax
mov rax, qword [r13 + 8]
mov qword [rsp + 0x30], rax
mov rax, qword [rdi + 8]
mov qword [rsp + 0x28], rax
mov rax, qword [rsp + 0x80]
mov rax, qword [rax + 8]
mov qword [rsp + 0x20], rax
mov rax, qword [rsp + 0xa0]
mov r9, qword [rax + 8]
call fcn.18000dd50
mov rcx, qword [rsp + 0xb0]
mov eax, dword [rsp + 0x128]
mov r12, qword [rsp + 0xb8]
inc rcx
inc eax
cmp rcx, qword [rsp + 0xc0]
mov dword [rsp + 0x128], eax
mov qword [rsp + 0xb0], rcx
lea r8, [0x180000000]
jl 0x180010860
jmp 0x1800122e6
mov rdi, qword [rsp + 0x68]
mov rsi, qword [rsp + 0x90]
mov rbp, qword [rsp + 0x78]
mov rcx, qword [rsp + 0x88]
call fcn.1800012d0
mov rcx, qword [rsp + 0x70]
call fcn.1800012d0
mov rcx, qword [rsp + 0xa0]
call fcn.1800012d0
mov rcx, qword [rsp + 0x80]
call fcn.1800012d0
mov rcx, r13
call fcn.1800012d0
mov rcx, rdi
call fcn.1800012d0
mov rcx, qword [rsp + 0x60]
call fcn.1800012d0
mov rcx, rbp
call fcn.1800012d0
mov rcx, rsi
call fcn.1800012d0
mov rcx, rbx
call fcn.1800012d0
mov dl, 1
mov rcx, r12
call fcn.180001740
mov rcx, r15
call fcn.1800012d0
mov rcx, qword [rsp + 0xa8]
call fcn.1800012d0
xor eax, eax
add rsp, 0xd8
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
pop rbx
ret