Function at 0x18000fdc0
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 0x18000fe01
mov qword [rsp + 0xa8], r14
jmp 0x18000fe19
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 0x18000fe32
mov r15, r14
jmp 0x18000fe4a
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, [0x18002e4fb]
repne scasb al, byte [rdi]
not rcx
lea rdx, [rcx - 1]
lea rcx, [0x18002e4fb]
call fcn.1800012d0
mov rbx, qword [0x18003dff0]
lea r8, [0x180033528]
mov rcx, rbx
mov edx, 0x65
mov rbp, rax
call qword [sym.imp.KERNEL32.dll_FindResourceA]
mov rsi, rax
test rax, rax
jne 0x18000fea1
lea rcx, [0x1800329f8]
call fcn.180003df0
jmp 0x18000fee2
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 0x18000ff2d
mov rcx, qword [rbp + 8]
test rcx, rcx
je 0x18000ff03
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 0x180010054
cmp r14d, eax
jge 0x18001000b
test r12, r12
js 0x18001000b
mov rax, qword [r13 + 0x10]
mov rdx, qword [rax + r12*8]
test rdx, rdx
je 0x18001000b
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.180003e90
mov rdx, qword [rsp + 0xa8]
mov rcx, qword [rdi + 8]
call fcn.1800060b0
mov rcx, qword [rdi + 8]
cmp eax, 1
je 0x18001001e
test rcx, rcx
je 0x18000ffe1
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 0x18000ff48
jmp 0x180010054
test rcx, rcx
je 0x18001002a
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 0x1800100ef
mov rax, qword [0x18003de78]
test rax, rax
je 0x18001008f
mov rdi, qword [rax]
call fcn.180017d78
add rax, 0x30
cmp rdi, rax
je 0x180010083
mov rcx, rdi
call fcn.180018dc4
mov rcx, qword [0x18003de78]
call fcn.1800178cc
mov ecx, 0x1008
call fcn.18001790c
lea rdx, [0x18002e7bc]
lea rcx, str.c:_xscp.txt
mov qword [rax], r14
mov qword [0x18003de78], rax
call fcn.18001845c
mov rcx, qword [0x18003de78]
mov qword [rcx], rax
cmp rax, 0
jne 0x1800100d9
call fcn.180017d78
mov rcx, qword [0x18003de78]
add rax, 0x30
mov qword [rcx], rax
lea rcx, [0x180033578]
call fcn.180003e90
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 0x180010185
mov eax, dword [rsi + 4]
test eax, eax
jle 0x180010185
dec eax
test eax, eax
jle 0x180010185
mov rcx, qword [rsi + 8]
movzx edx, word [0x18002e56c]
movsxd rax, edi
cmp word [rax + rcx], dx
je 0x180010139
mov eax, dword [rsi + 4]
inc edi
dec eax
cmp edi, eax
jl 0x180010123
jmp 0x180010185
test edi, edi
js 0x180010185
nop dword [rax]
mov r8d, 2
mov edx, edi
mov rcx, rsi
call fcn.1800015f0
lea r8, [0x18002e504]
mov r9d, 1
mov edx, edi
mov rcx, rsi
call fcn.1800014e0
lea edx, [rdi + 1]
lea r8, [0x18002e56c]
mov r9d, 2
mov rcx, rsi
call fcn.180001350
mov edi, eax
test eax, eax
jns 0x180010140
mov ecx, dword [rsi + 4]
mov ebx, dword [rsi]
add ecx, 2
cmp ecx, ebx
jl 0x1800101ba
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.18001fb70
mov edx, ebx
mov rcx, rdi
call fcn.180001240
movsxd rcx, dword [rsi + 4]
movzx eax, byte [reloc.WS2_32.dll_ioctlsocket]
lea rdx, [0x18002e554]
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 0x1800102bd
cmp r14d, dword [rax + 0xc]
mov rbx, r14
jge 0x180010219
test edi, edi
js 0x180010219
mov rax, qword [r12 + 0x10]
mov rcx, qword [rbx + rax]
jmp 0x18001021c
mov rcx, r14
mov rcx, qword [rcx + 8]
lea rdx, [0x18002e54c]
call fcn.1800179c4
test rax, rax
jne 0x1800102ac
mov r8d, dword [r12 + 0xc]
cmp edi, r8d
jge 0x180010298
test edi, edi
js 0x180010298
mov rax, qword [r12 + 0x18]
test rax, rax
je 0x180010254
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 0x180010291
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 0x180010270
dec dword [r12 + 0xc]
jmp 0x1800102a6
lea rcx, str.xdarray_erase_error__d__d_
mov edx, edi
call fcn.180003e90
dec edi
sub rbx, 8
inc edi
add rbx, 8
cmp edi, dword [r12 + 0xc]
jl 0x18001020a
mov r8, qword [0x18003be40]
movsxd rbp, dword [r12 + 0xc]
lea rcx, [0x1800335a8]
mov r8, qword [r8 + 8]
mov edx, ebp
call fcn.180003e90
test ebp, ebp
jg 0x180010374
mov rax, qword [0x18003de78]
test rax, rax
je 0x180010314
mov rdi, qword [rax]
call fcn.180017d78
add rax, 0x30
cmp rdi, rax
je 0x180010308
mov rcx, rdi
call fcn.180018dc4
mov rcx, qword [0x18003de78]
call fcn.1800178cc
mov ecx, 0x1008
call fcn.18001790c
lea rdx, [0x18002e7bc]
lea rcx, str.c:_xscp.txt
mov qword [rax], r14
mov qword [0x18003de78], rax
call fcn.18001845c
mov rcx, qword [0x18003de78]
mov qword [rcx], rax
cmp rax, 0
jne 0x18001035e
call fcn.180017d78
mov rcx, qword [0x18003de78]
add rax, 0x30
mov qword [rcx], rax
lea rcx, [0x1800335c8]
call fcn.180003e90
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 0x180010397
mov rcx, rdi
call fcn.180001000
mov rax, qword [rdi + 8]
test rax, rax
je 0x1800103aa
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 0x1800103e4
lea r13, [rbx + 8]
mov qword [rsp + 0x88], r13
test r13, r13
je 0x1800103e4
mov rdx, r13
mov ecx, 0x28
mov dword [r13 + 4], r14d
call fcn.180001120
mov qword [r13 + 8], rax
mov byte [rax], 0
jmp 0x1800103ec
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 0x18001040f
mov rcx, rdi
call fcn.180001000
mov rax, qword [rdi + 8]
test rax, rax
je 0x180010422
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 0x180010459
lea r13, [rbx + 8]
mov qword [rsp + 0x70], r13
test r13, r13
je 0x180010459
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 0x18001045e
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 0x180010481
mov rcx, rdi
call fcn.180001000
mov rax, qword [rdi + 8]
test rax, rax
je 0x180010494
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 0x1800104ce
lea r13, [rbx + 8]
mov qword [rsp + 0xa0], r13
test r13, r13
je 0x1800104ce
mov rdx, r13
mov ecx, 0x64
mov dword [r13 + 4], r14d
call fcn.180001120
mov qword [r13 + 8], rax
mov byte [rax], 0
jmp 0x1800104d6
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 0x1800104f9
mov rcx, rdi
call fcn.180001000
mov rax, qword [rdi + 8]
test rax, rax
je 0x18001050c
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 0x180010546
lea r13, [rbx + 8]
mov qword [rsp + 0x80], r13
test r13, r13
je 0x180010546
mov rdx, r13
mov ecx, 0x64
mov dword [r13 + 4], r14d
call fcn.180001120
mov qword [r13 + 8], rax
mov byte [rax], 0
jmp 0x18001054e
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 0x180010571
mov rcx, rdi
call fcn.180001000
mov rax, qword [rdi + 8]
test rax, rax
je 0x180010584
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 0x1800105be
lea r13, [rbx + 8]
mov qword [rsp + 0x130], r13
test r13, r13
je 0x1800105be
mov rdx, r13
mov ecx, 0x64
mov dword [r13 + 4], r14d
call fcn.180001120
mov qword [r13 + 8], rax
mov byte [rax], 0
jmp 0x1800105c9
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 0x1800105ec
mov rcx, rdi
call fcn.180001000
mov rax, qword [rdi + 8]
test rax, rax
je 0x1800105ff
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 0x180010636
lea rdi, [rbx + 8]
mov qword [rsp + 0x68], rdi
test rdi, rdi
je 0x180010636
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 0x18001063b
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 0x18001065e
mov rcx, rdi
call fcn.180001000
mov rax, qword [rdi + 8]
test rax, rax
je 0x180010671
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 0x1800106a8
lea rdi, [rbx + 8]
mov qword [rsp + 0x60], rdi
test rdi, rdi
je 0x1800106a8
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 0x1800106ad
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 0x1800106d0
mov rcx, rdi
call fcn.180001000
mov rax, qword [rdi + 8]
test rax, rax
je 0x1800106e3
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 0x18001071a
lea rdi, [rbx + 8]
mov qword [rsp + 0x78], rdi
test rdi, rdi
je 0x18001071a
mov rdx, rdi
mov ecx, 0x64
mov dword [rdi + 4], r14d
call fcn.180001120
mov qword [rdi + 8], rax
mov byte [rax], 0
jmp 0x18001071f
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 0x180010742
mov rcx, rdi
call fcn.180001000
mov rax, qword [rdi + 8]
test rax, rax
je 0x180010755
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 0x18001078f
lea rdi, [rbx + 8]
mov qword [rsp + 0x90], rdi
test rdi, rdi
je 0x18001078f
mov rdx, rdi
mov ecx, gethostbyname
mov dword [rdi + 4], r14d
call fcn.180001120
mov qword [rdi + 8], rax
mov byte [rax], 0
jmp 0x180010797
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 0x1800107ba
mov rcx, rdi
call fcn.180001000
mov rax, qword [rdi + 8]
test rax, rax
je 0x1800107cd
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 0x180010804
add rbx, 8
mov qword [rsp + 0x98], rbx
je 0x180010804
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 0x18001080f
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 0x1800122b4
lea r8, [0x180000000]
nop dword [rax + rax]
cmp eax, dword [r12 + 0xc]
jge 0x180010857
test rcx, rcx
js 0x180010857
mov rax, qword [r12 + 0x10]
mov rdi, qword [rax + rcx*8]
jmp 0x18001085a
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 0x18001094e
cmp dword [rdi + 4], 0
jle 0x18001094e
lea r8, [0x18002e54c]
mov r9d, 1
xor edx, edx
mov rcx, rdi
call fcn.180001350
movsxd rbp, eax
test eax, eax
js 0x180010947
mov ecx, dword [r15]
mov r13, qword [rdi + 8]
lea r12d, [rbp + 1]
cmp ecx, r12d
jge 0x180010927
mov rdi, qword [r15 + 8]
test ecx, ecx
jle 0x180010918
mov edx, r14d
mov rsi, r14
lea rax, reloc.WS2_32.dll_recv
cmp ecx, dword [rax]
jle 0x1800108e3
inc edx
inc rsi
add rax, 0x10
cmp edx, 4
jb 0x1800108c7
mov rcx, rdi
call fcn.1800178cc
jmp 0x180010918
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 0x18001093a
mov rcx, qword [r15 + 8]
mov r8, rbp
mov rdx, r13
call fcn.18001fb70
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 0x1800109fd
mov r13, qword [r15 + 8]
lea r12d, [rbp + 1]
cmp ecx, r12d
jge 0x1800109dc
mov rdi, qword [rbx + 8]
test ecx, ecx
jle 0x1800109cd
mov edx, r14d
mov rsi, r14
lea rax, reloc.WS2_32.dll_recv
cmp ecx, dword [rax]
jle 0x18001099f
inc edx
inc rsi
add rax, 0x10
cmp edx, 4
jb 0x180010983
mov rcx, rdi
call fcn.1800178cc
jmp 0x1800109cd
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 0x1800109ef
mov rcx, qword [rbx + 8]
mov r8, rbp
mov rdx, r13
call fcn.18001fb70
mov rax, qword [rbx + 8]
mov dword [rbx + 4], ebp
mov byte [rbp + rax], 0
jmp 0x180010a71
mov rdi, qword [rbx + 8]
test ecx, ecx
jle 0x180010a5c
mov edx, r14d
mov rsi, r14
lea rax, reloc.WS2_32.dll_recv
cmp ecx, dword [rax]
jle 0x180010a2e
inc edx
inc rsi
add rax, 0x10
cmp edx, 4
jb 0x180010a12
mov rcx, rdi
call fcn.1800178cc
jmp 0x180010a5c
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 0x180010bc2
mov eax, dword [r10 + 4]
test eax, eax
jle 0x180010bc2
lea edx, [rax - 3]
test edx, edx
jle 0x180010bc2
mov rbx, qword [r10 + 8]
mov edi, dword [str.md5]
movsxd rax, ecx
add rax, rbx
cmp dword [rax], edi
je 0x180010aea
inc ecx
cmp ecx, edx
jl 0x180010ad5
jmp 0x180010bc2
test ecx, ecx
js 0x180010bc2
lea edi, [rcx + 4]
lea r8, [0x18002e504]
mov r9d, 1
mov edx, edi
mov rcx, r10
call fcn.180001350
mov ebp, eax
test eax, eax
js 0x180010bc2
mov ecx, dword [r15]
sub ebp, edi
movsxd r13, edi
lea r12d, [rbp + 1]
add r13, rbx
cmp ecx, r12d
jge 0x180010ba0
mov rdi, qword [r15 + 8]
test ecx, ecx
jle 0x180010b91
mov edx, r14d
mov rsi, r14
lea rax, reloc.WS2_32.dll_recv
nop
cmp ecx, dword [rax]
jle 0x180010b5c
inc edx
inc rsi
add rax, 0x10
cmp edx, 4
jb 0x180010b40
mov rcx, rdi
call fcn.1800178cc
jmp 0x180010b91
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 0x180010bb3
mov rcx, qword [r15 + 8]
movsxd r8, ebp
mov rdx, r13
call fcn.18001fb70
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 0x180010caa
movzx eax, byte [rcx]
cmp al, 0x41
jl 0x180010be3
cmp al, 0x5a
jg 0x180010be3
add al, 0x20
mov byte [rcx], al
inc edx
inc rcx
cmp edx, dword [r15 + 4]
jl 0x180010bd4
movsxd rbp, dword [r15 + 4]
test ebp, ebp
jle 0x180010caa
mov rbx, qword [rsp + 0x88]
mov r13, qword [r15 + 8]
lea r12d, [rbp + 1]
mov ecx, dword [rbx]
cmp ecx, r12d
jge 0x180010c86
mov rdi, qword [rbx + 8]
test ecx, ecx
jle 0x180010c77
mov edx, r14d
mov rsi, r14
lea rax, reloc.WS2_32.dll_recv
cmp ecx, dword [rax]
jle 0x180010c42
inc edx
inc rsi
add rax, 0x10
cmp edx, 4
jb 0x180010c26
mov rcx, rdi
call fcn.1800178cc
jmp 0x180010c77
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 0x180010c99
mov rcx, qword [rbx + 8]
mov r8, rbp
mov rdx, r13
call fcn.18001fb70
mov rax, qword [rbx + 8]
mov dword [rbx + 4], ebp
mov byte [rbp + rax], 0
jmp 0x180010d36
mov rbx, qword [rsp + 0x88]
mov ecx, dword [rbx]
mov rdi, qword [rbx + 8]
test ecx, ecx
jle 0x180010d21
mov edx, r14d
mov rsi, r14
lea rax, reloc.WS2_32.dll_recv
nop dword [rax]
cmp ecx, dword [rax]
jle 0x180010cec
inc edx
inc rsi
add rax, 0x10
cmp edx, 4
jb 0x180010cd0
mov rcx, rdi
call fcn.1800178cc
jmp 0x180010d21
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 0x180010e62
mov eax, dword [r10 + 4]
test eax, eax
jle 0x180010e62
lea edx, [rax - 3]
test edx, edx
jle 0x180010e62
mov rbx, qword [r10 + 8]
mov edi, dword [str.url]
movsxd rax, ecx
cmp dword [rax + rbx], edi
je 0x180010d8a
inc ecx
cmp ecx, edx
jl 0x180010d77
jmp 0x180010e62
test ecx, ecx
js 0x180010e62
lea edi, [rcx + 4]
lea r8, [0x18002e504]
mov r9d, 1
mov edx, edi
mov rcx, r10
call fcn.180001350
mov ebp, eax
test eax, eax
js 0x180010e62
mov ecx, dword [r15]
sub ebp, edi
movsxd r13, edi
lea r12d, [rbp + 1]
add r13, rbx
cmp ecx, r12d
jge 0x180010e40
mov rdi, qword [r15 + 8]
test ecx, ecx
jle 0x180010e31
mov edx, r14d
mov rsi, r14
lea rax, reloc.WS2_32.dll_recv
nop
cmp ecx, dword [rax]
jle 0x180010dfc
inc edx
inc rsi
add rax, 0x10
cmp edx, 4
jb 0x180010de0
mov rcx, rdi
call fcn.1800178cc
jmp 0x180010e31
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 0x180010e53
mov rcx, qword [r15 + 8]
movsxd r8, ebp
mov rdx, r13
call fcn.18001fb70
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 0x180010f21
mov r13, qword [r15 + 8]
lea r12d, [rbp + 1]
cmp ecx, r12d
jge 0x180010f00
mov rdi, qword [rbx + 8]
test ecx, ecx
jle 0x180010ef1
mov edx, r14d
mov rsi, r14
lea rax, reloc.WS2_32.dll_recv
nop word [rax + rax]
cmp ecx, dword [rax]
jle 0x180010ebc
inc edx
inc rsi
add rax, 0x10
cmp edx, 4
jb 0x180010ea0
mov rcx, rdi
call fcn.1800178cc
jmp 0x180010ef1
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 0x180010f13
mov rcx, qword [rbx + 8]
mov r8, rbp
mov rdx, r13
call fcn.18001fb70
mov rax, qword [rbx + 8]
mov dword [rbx + 4], ebp
mov byte [rbp + rax], 0
jmp 0x180010f9c
mov rdi, qword [rbx + 8]
test ecx, ecx
jle 0x180010f87
mov edx, r14d
mov rsi, r14
lea rax, reloc.WS2_32.dll_recv
cmp ecx, dword [rax]
jle 0x180010f52
inc edx
inc rsi
add rax, 0x10
cmp edx, 4
jb 0x180010f36
mov rcx, rdi
call fcn.1800178cc
jmp 0x180010f87
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 0x180011111
mov eax, dword [r13 + 4]
test eax, eax
jle 0x180011111
lea r8d, [rax - 4]
lea r9, [0x180000000]
test r8d, r8d
jle 0x180011118
mov rbx, qword [r13 + 8]
nop dword [rax]
movsxd rax, edi
mov edx, dword [rax + rbx]
cmp edx, dword [r9 + 0x33608]
jne 0x180011011
mov dl, byte [rax + rbx + 4]
cmp dl, byte [r9 + 0x3360c]
jne 0x180011011
mov eax, r14d
jmp 0x180011016
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
je 0x180011026
inc edi
cmp edi, r8d
jl 0x180010ff0
jmp 0x180011118
test edi, edi
js 0x180011118
add edi, 5
lea r8, [0x18002e504]
mov r9d, 1
mov edx, edi
mov rcx, r13
call fcn.180001350
mov ebp, eax
test eax, eax
js 0x180011111
mov ecx, dword [rsi]
sub ebp, edi
movsxd r13, edi
lea r12d, [rbp + 1]
add r13, rbx
cmp ecx, r12d
jge 0x1800110e8
mov rdi, qword [rsi + 8]
test ecx, ecx
jle 0x1800110d9
mov edx, r14d
mov rsi, r14
lea rax, reloc.WS2_32.dll_recv
nop
cmp ecx, dword [rax]
jle 0x18001109c
inc edx
inc rsi
add rax, 0x10
cmp edx, 4
jb 0x180011080
mov rcx, rdi
call fcn.1800178cc
jmp 0x1800110d1
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 0x1800110fb
mov rcx, qword [rsi + 8]
movsxd r8, ebp
mov rdx, r13
call fcn.18001fb70
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 0x180011285
mov rbx, qword [rsp + 0x120]
test rbx, rbx
jne 0x1800111bf
mov ecx, dword [rsi]
mov rdi, qword [rsi + 8]
test ecx, ecx
jle 0x1800111aa
mov edx, r14d
mov rsi, r14
lea rax, reloc.WS2_32.dll_recv
nop word [rax + rax]
cmp ecx, dword [rax]
jle 0x18001116c
inc edx
inc rsi
add rax, 0x10
cmp edx, 4
jb 0x180011150
mov rcx, rdi
call fcn.1800178cc
jmp 0x1800111a2
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 0x180011264
mov rdi, qword [rsi + 8]
test ecx, ecx
jle 0x180011255
mov edx, r14d
mov rsi, r14
lea rax, reloc.WS2_32.dll_recv
cmp ecx, dword [rax]
jle 0x180011210
inc edx
inc rsi
add rax, 0x10
cmp edx, 4
jb 0x1800111f4
mov rcx, rdi
call fcn.1800178cc
jmp 0x18001124d
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 0x180011277
mov rcx, qword [rsi + 8]
movsxd r8, ebp
mov rdx, rbx
call fcn.18001fb70
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 0x1800113f2
mov eax, dword [r13 + 4]
test eax, eax
jle 0x1800113f2
lea r8d, [rax - 4]
test r8d, r8d
jle 0x1800113f2
mov rbx, qword [r13 + 8]
lea r9, [0x180000000]
nop word [rax + rax]
movsxd rax, edi
mov edx, dword [rax + rbx]
cmp edx, dword [r9 + 0x33610]
jne 0x1800112f1
mov dl, byte [rax + rbx + 4]
cmp dl, byte [r9 + 0x33614]
jne 0x1800112f1
mov eax, r14d
jmp 0x1800112f6
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
je 0x180011306
inc edi
cmp edi, r8d
jl 0x1800112d0
jmp 0x1800113f2
test edi, edi
js 0x1800113f2
add edi, 5
lea r8, [0x18002e504]
mov r9d, 1
mov edx, edi
mov rcx, r13
call fcn.180001350
mov ebp, eax
test eax, eax
js 0x1800113f2
mov ecx, dword [r15]
sub ebp, edi
movsxd r13, edi
lea r12d, [rbp + 1]
add r13, rbx
cmp ecx, r12d
jge 0x1800113c8
mov rdi, qword [r15 + 8]
test ecx, ecx
jle 0x1800113b9
mov edx, r14d
mov rsi, r14
lea rax, reloc.WS2_32.dll_recv
nop
cmp ecx, dword [rax]
jle 0x18001137c
inc edx
inc rsi
add rax, 0x10
cmp edx, 4
jb 0x180011360
mov rcx, rdi
call fcn.1800178cc
jmp 0x1800113b1
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 0x1800113db
mov rcx, qword [r15 + 8]
movsxd r8, ebp
mov rdx, r13
call fcn.18001fb70
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 0x18001149e
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.18001fb70
test edi, edi
jle 0x18001149e
mov edx, r14d
mov rsi, r14
lea rax, reloc.WS2_32.dll_recv
cmp edi, dword [rax]
jle 0x180011461
inc edx
inc rsi
add rax, 0x10
cmp edx, 4
jb 0x180011445
mov rcx, rbx
call fcn.1800178cc
jmp 0x180011496
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.18001fb70
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 0x1800114e9
nop dword [rax]
movzx eax, byte [rcx]
cmp al, 0x41
jl 0x1800114df
cmp al, 0x5a
jg 0x1800114df
add al, 0x20
mov byte [rcx], al
inc edx
inc rcx
cmp edx, dword [rsi + 4]
jl 0x1800114d0
mov rax, qword [r15 + 8]
mov dword [r15 + 4], r14d
mov edi, r14d
mov byte [rax], 0
cmp dword [r13], 0
jle 0x180011642
mov eax, dword [r13 + 4]
test eax, eax
jle 0x180011642
lea r8d, [rax - 4]
lea r9, [0x180000000]
test r8d, r8d
jle 0x180011649
mov rbx, qword [r13 + 8]
nop word [rax + rax]
movsxd rax, edi
mov edx, dword [rax + rbx]
cmp edx, dword [r9 + 0x33618]
jne 0x180011551
mov dl, byte [rax + rbx + 4]
cmp dl, byte [r9 + 0x3361c]
jne 0x180011551
mov eax, r14d
jmp 0x180011556
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
je 0x180011566
inc edi
cmp edi, r8d
jl 0x180011530
jmp 0x180011649
test edi, edi
js 0x180011649
add edi, 5
lea r8, [0x18002e504]
mov r9d, 1
mov edx, edi
mov rcx, r13
call fcn.180001350
mov ebp, eax
test eax, eax
js 0x180011642
mov ecx, dword [r15]
sub ebp, edi
movsxd r13, edi
lea r12d, [rbp + 1]
add r13, rbx
cmp ecx, r12d
jge 0x180011620
mov rdi, qword [r15 + 8]
test ecx, ecx
jle 0x180011611
mov edx, r14d
mov rsi, r14
lea rax, reloc.WS2_32.dll_recv
nop dword [rax + rax]
cmp ecx, dword [rax]
jle 0x1800115dc
inc edx
inc rsi
add rax, 0x10
cmp edx, 4
jb 0x1800115c0
mov rcx, rdi
call fcn.1800178cc
jmp 0x180011611
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 0x180011633
mov rcx, qword [r15 + 8]
movsxd r8, ebp
mov rdx, r13
call fcn.18001fb70
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 0x1800116fa
mov r13, qword [r15 + 8]
lea r12d, [rbp + 1]
cmp ecx, r12d
jge 0x1800116d9
mov rdi, qword [rbx + 8]
test ecx, ecx
jle 0x1800116ca
mov edx, r14d
mov rsi, r14
lea rax, reloc.WS2_32.dll_recv
nop
cmp ecx, dword [rax]
jle 0x18001169c
inc edx
inc rsi
add rax, 0x10
cmp edx, 4
jb 0x180011680
mov rcx, rdi
call fcn.1800178cc
jmp 0x1800116ca
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 0x1800116ec
mov rcx, qword [rbx + 8]
mov r8, rbp
mov rdx, r13
call fcn.18001fb70
mov rax, qword [rbx + 8]
mov dword [rbx + 4], ebp
mov byte [rbp + rax], 0
jmp 0x18001176f
mov rdi, qword [rbx + 8]
test ecx, ecx
jle 0x18001175a
mov edx, r14d
mov rsi, r14
lea rax, reloc.WS2_32.dll_recv
nop
cmp ecx, dword [rax]
jle 0x18001172c
inc edx
inc rsi
add rax, 0x10
cmp edx, 4
jb 0x180011710
mov rcx, rdi
call fcn.1800178cc
jmp 0x18001175a
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 0x180011799
nop dword [rax]
movzx eax, byte [rcx]
cmp al, 0x41
jl 0x18001178f
cmp al, 0x5a
jg 0x18001178f
add al, 0x20
mov byte [rcx], al
inc edx
inc rcx
cmp edx, dword [rbx + 4]
jl 0x180011780
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 0x1800118f2
mov eax, dword [r10 + 4]
test eax, eax
jle 0x1800118f2
lea r8d, [rax - 4]
lea r9, [0x180000000]
test r8d, r8d
jle 0x1800118f9
mov rbx, qword [r10 + 8]
nop dword [rax]
movsxd rax, edi
mov edx, dword [rax + rbx]
cmp edx, dword [r9 + 0x33620]
jne 0x180011801
mov dl, byte [rax + rbx + 4]
cmp dl, byte [r9 + 0x33624]
jne 0x180011801
mov eax, r14d
jmp 0x180011806
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
je 0x180011816
inc edi
cmp edi, r8d
jl 0x1800117e0
jmp 0x1800118f9
test edi, edi
js 0x1800118f9
add edi, 5
lea r8, [0x18002e504]
mov r9d, 1
mov edx, edi
mov rcx, r10
call fcn.180001350
mov ebp, eax
test eax, eax
js 0x1800118f2
mov ecx, dword [r15]
sub ebp, edi
movsxd r13, edi
lea r12d, [rbp + 1]
add r13, rbx
cmp ecx, r12d
jge 0x1800118d0
mov rdi, qword [r15 + 8]
test ecx, ecx
jle 0x1800118c1
mov edx, r14d
mov rsi, r14
lea rax, reloc.WS2_32.dll_recv
nop dword [rax + rax]
cmp ecx, dword [rax]
jle 0x18001188c
inc edx
inc rsi
add rax, 0x10
cmp edx, 4
jb 0x180011870
mov rcx, rdi
call fcn.1800178cc
jmp 0x1800118c1
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 0x1800118e3
mov rcx, qword [r15 + 8]
movsxd r8, ebp
mov rdx, r13
call fcn.18001fb70
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 0x1800119aa
mov r13, qword [r15 + 8]
lea r12d, [rbp + 1]
cmp ecx, r12d
jge 0x180011989
mov rdi, qword [rbx + 8]
test ecx, ecx
jle 0x18001197a
mov edx, r14d
mov rsi, r14
lea rax, reloc.WS2_32.dll_recv
nop
cmp ecx, dword [rax]
jle 0x18001194c
inc edx
inc rsi
add rax, 0x10
cmp edx, 4
jb 0x180011930
mov rcx, rdi
call fcn.1800178cc
jmp 0x18001197a
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 0x18001199c
mov rcx, qword [rbx + 8]
mov r8, rbp
mov rdx, r13
call fcn.18001fb70
mov rax, qword [rbx + 8]
mov dword [rbx + 4], ebp
mov byte [rbp + rax], 0
jmp 0x180011a1f
mov rdi, qword [rbx + 8]
test ecx, ecx
jle 0x180011a0a
mov edx, r14d
mov rsi, r14
lea rax, reloc.WS2_32.dll_recv
nop
cmp ecx, dword [rax]
jle 0x1800119dc
inc edx
inc rsi
add rax, 0x10
cmp edx, 4
jb 0x1800119c0
mov rcx, rdi
call fcn.1800178cc
jmp 0x180011a0a
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 0x180011b82
mov eax, dword [r10 + 4]
test eax, eax
jle 0x180011b82
lea r8d, [rax - 5]
lea r9, [0x180000000]
test r8d, r8d
jle 0x180011b89
mov rbx, qword [r10 + 8]
nop word [rax + rax]
movsxd rax, edi
mov edx, dword [rax + rbx]
cmp edx, dword [r9 + 0x33628]
jne 0x180011a93
mov dx, word [rax + rbx + 4]
cmp dx, word [r9 + 0x3362c]
jne 0x180011a93
mov eax, r14d
jmp 0x180011a98
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
je 0x180011aa8
inc edi
cmp edi, r8d
jl 0x180011a70
jmp 0x180011b89
test edi, edi
js 0x180011b89
add edi, 6
lea r8, [0x18002e504]
mov r9d, 1
mov edx, edi
mov rcx, r10
call fcn.180001350
mov ebp, eax
test eax, eax
js 0x180011b82
mov ecx, dword [r15]
sub ebp, edi
movsxd r13, edi
lea r12d, [rbp + 1]
add r13, rbx
cmp ecx, r12d
jge 0x180011b60
mov rdi, qword [r15 + 8]
test ecx, ecx
jle 0x180011b51
mov edx, r14d
mov rsi, r14
lea rax, reloc.WS2_32.dll_recv
nop dword [rax]
cmp ecx, dword [rax]
jle 0x180011b1c
inc edx
inc rsi
add rax, 0x10
cmp edx, 4
jb 0x180011b00
mov rcx, rdi
call fcn.1800178cc
jmp 0x180011b51
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 0x180011b73
mov rcx, qword [r15 + 8]
movsxd r8, ebp
mov rdx, r13
call fcn.18001fb70
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 0x180011c3a
mov r13, qword [r15 + 8]
lea r12d, [rbp + 1]
cmp ecx, r12d
jge 0x180011c19
mov rdi, qword [rbx + 8]
test ecx, ecx
jle 0x180011c0a
mov edx, r14d
mov rsi, r14
lea rax, reloc.WS2_32.dll_recv
nop
cmp ecx, dword [rax]
jle 0x180011bdc
inc edx
inc rsi
add rax, 0x10
cmp edx, 4
jb 0x180011bc0
mov rcx, rdi
call fcn.1800178cc
jmp 0x180011c0a
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 0x180011c2c
mov rcx, qword [rbx + 8]
mov r8, rbp
mov rdx, r13
call fcn.18001fb70
mov rax, qword [rbx + 8]
mov dword [rbx + 4], ebp
mov byte [rbp + rax], 0
jmp 0x180011caf
mov rdi, qword [rbx + 8]
test ecx, ecx
jle 0x180011c9a
mov edx, r14d
mov rsi, r14
lea rax, reloc.WS2_32.dll_recv
nop
cmp ecx, dword [rax]
jle 0x180011c6c
inc edx
inc rsi
add rax, 0x10
cmp edx, 4
jb 0x180011c50
mov rcx, rdi
call fcn.1800178cc
jmp 0x180011c9a
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 0x180011e12
mov eax, dword [r10 + 4]
test eax, eax
jle 0x180011e12
lea r8d, [rax - 8]
lea r9, [0x180000000]
test r8d, r8d
jle 0x180011e19
mov rbx, qword [r10 + 8]
nop word [rax + rax]
movsxd rax, edi
mov rdx, qword [rax + rbx]
cmp rdx, qword [r9 + 0x33630]
jne 0x180011d22
mov dl, byte [rax + rbx + 8]
cmp dl, byte [r9 + 0x33638]
jne 0x180011d22
mov eax, r14d
jmp 0x180011d27
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
je 0x180011d37
inc edi
cmp edi, r8d
jl 0x180011d00
jmp 0x180011e19
test edi, edi
js 0x180011e19
add edi, 9
lea r8, [0x18002e504]
mov r9d, 1
mov edx, edi
mov rcx, r10
call fcn.180001350
mov ebp, eax
test eax, eax
js 0x180011e12
mov ecx, dword [r15]
sub ebp, edi
movsxd r13, edi
lea r12d, [rbp + 1]
add r13, rbx
cmp ecx, r12d
jge 0x180011df0
mov rdi, qword [r15 + 8]
test ecx, ecx
jle 0x180011de1
mov edx, r14d
mov rsi, r14
lea rax, reloc.WS2_32.dll_recv
nop dword [rax]
cmp ecx, dword [rax]
jle 0x180011dac
inc edx
inc rsi
add rax, 0x10
cmp edx, 4
jb 0x180011d90
mov rcx, rdi
call fcn.1800178cc
jmp 0x180011de1
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 0x180011e03
mov rcx, qword [r15 + 8]
movsxd r8, ebp
mov rdx, r13
call fcn.18001fb70
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 0x180011ecb
mov r13, qword [r15 + 8]
lea r12d, [rbp + 1]
cmp ecx, r12d
jge 0x180011eaa
mov rdi, qword [rbx + 8]
test ecx, ecx
jle 0x180011e9b
mov edx, r14d
mov rsi, r14
lea rax, reloc.WS2_32.dll_recv
cmp ecx, dword [rax]
jle 0x180011e6d
inc edx
inc rsi
add rax, 0x10
cmp edx, 4
jb 0x180011e51
mov rcx, rdi
call fcn.1800178cc
jmp 0x180011e9b
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 0x180011ebd
mov rcx, qword [rbx + 8]
mov r8, rbp
mov rdx, r13
call fcn.18001fb70
mov rax, qword [rbx + 8]
mov dword [rbx + 4], ebp
mov byte [rbp + rax], 0
jmp 0x180011f3f
mov rdi, qword [rbx + 8]
test ecx, ecx
jle 0x180011f2a
mov edx, r14d
mov rsi, r14
lea rax, reloc.WS2_32.dll_recv
cmp ecx, dword [rax]
jle 0x180011efc
inc edx
inc rsi
add rax, 0x10
cmp edx, 4
jb 0x180011ee0
mov rcx, rdi
call fcn.1800178cc
jmp 0x180011f2a
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 0x1800120b2
mov eax, dword [r10 + 4]
test eax, eax
jle 0x1800120b2
lea r8d, [rax - 0xa]
lea r9, [0x180000000]
test r8d, r8d
jle 0x1800120b9
mov rbx, qword [r10 + 8]
nop word [rax + rax]
movsxd rax, edi
mov rdx, qword [rax + rbx]
cmp rdx, qword [r9 + 0x33640]
jne 0x180011fc1
mov dx, word [rax + rbx + 8]
cmp dx, word [r9 + 0x33648]
jne 0x180011fc1
mov dl, byte [rax + rbx + 0xa]
cmp dl, byte [r9 + 0x3364a]
jne 0x180011fc1
mov eax, r14d
jmp 0x180011fc6
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
je 0x180011fd6
inc edi
cmp edi, r8d
jl 0x180011f90
jmp 0x1800120b9
test edi, edi
js 0x1800120b9
add edi, 0xb
lea r8, [0x18002e504]
mov r9d, 1
mov edx, edi
mov rcx, r10
call fcn.180001350
mov ebp, eax
test eax, eax
js 0x1800120b2
mov ecx, dword [r15]
sub ebp, edi
movsxd r13, edi
lea r12d, [rbp + 1]
add r13, rbx
cmp ecx, r12d
jge 0x180012090
mov rdi, qword [r15 + 8]
test ecx, ecx
jle 0x180012081
mov edx, r14d
mov rsi, r14
lea rax, reloc.WS2_32.dll_recv
nop dword [rax + rax]
cmp ecx, dword [rax]
jle 0x18001204c
inc edx
inc rsi
add rax, 0x10
cmp edx, 4
jb 0x180012030
mov rcx, rdi
call fcn.1800178cc
jmp 0x180012081
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 0x1800120a3
mov rcx, qword [r15 + 8]
movsxd r8, ebp
mov rdx, r13
call fcn.18001fb70
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 0x18001216b
mov r13, qword [r15 + 8]
lea r12d, [rbp + 1]
cmp ecx, r12d
jge 0x18001214a
mov rdi, qword [rbx + 8]
test ecx, ecx
jle 0x18001213b
mov edx, r14d
mov rsi, r14
lea rax, reloc.WS2_32.dll_recv
cmp ecx, dword [rax]
jle 0x18001210d
inc edx
inc rsi
add rax, 0x10
cmp edx, 4
jb 0x1800120f1
mov rcx, rdi
call fcn.1800178cc
jmp 0x18001213b
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 0x18001215d
mov rcx, qword [rbx + 8]
mov r8, rbp
mov rdx, r13
call fcn.18001fb70
mov rax, qword [rbx + 8]
mov dword [rbx + 4], ebp
mov byte [rbp + rax], 0
jmp 0x1800121df
mov rdi, qword [rbx + 8]
test ecx, ecx
jle 0x1800121ca
mov edx, r14d
mov rsi, r14
lea rax, reloc.WS2_32.dll_recv
cmp ecx, dword [rax]
jle 0x18001219c
inc edx
inc rsi
add rax, 0x10
cmp edx, 4
jb 0x180012180
mov rcx, rdi
call fcn.1800178cc
jmp 0x1800121ca
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.18000dd30
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 0x180010840
jmp 0x1800122c6
mov rdi, qword [rsp + 0x68]
mov rsi, qword [rsp + 0x90]
mov rbp, qword [rsp + 0x78]
mov rcx, qword [rsp + 0x88]
call fcn.180001800
mov rcx, qword [rsp + 0x70]
call fcn.180001800
mov rcx, qword [rsp + 0xa0]
call fcn.180001800
mov rcx, qword [rsp + 0x80]
call fcn.180001800
mov rcx, r13
call fcn.180001800
mov rcx, rdi
call fcn.180001800
mov rcx, qword [rsp + 0x60]
call fcn.180001800
mov rcx, rbp
call fcn.180001800
mov rcx, rsi
call fcn.180001800
mov rcx, rbx
call fcn.180001800
mov dl, 1
mov rcx, r12
call fcn.1800016d0
mov rcx, r15
call fcn.180001800
mov rcx, qword [rsp + 0xa8]
call fcn.180001800
xor eax, eax
add rsp, 0xd8
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
pop rbx
ret