Function at 0x18000fc50
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, 0xb8
mov rcx, qword [0x18003be50]
call fcn.1800010a0
xor r14d, r14d
mov rdi, rax
mov qword [rsp + 0x90], rax
test rax, rax
jne 0x18000fc91
mov qword [rsp + 0x90], r14
jmp 0x18000fca9
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 0x18000fcc2
mov r15, r14
jmp 0x18000fcda
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 [0x18003dff8]
lea r8, [0x180033408]
mov rcx, rbx
mov edx, 0x65
mov rbp, rax
call qword [sym.imp.KERNEL32.dll_FindResourceA]
mov rsi, rax
test rax, rax
jne 0x18000fd31
lea rcx, [0x1800329f8]
call fcn.180003ac0
jmp 0x18000fd72
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.180001980
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_FreeResource]
mov rcx, rbp
call fcn.180002580
mov r13, rax
test rbp, rbp
je 0x18000fdbd
mov rcx, qword [rbp + 8]
test rcx, rcx
je 0x18000fd93
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 0x18000fee4
cmp r14d, eax
jge 0x18000fe9b
test r12, r12
js 0x18000fe9b
mov rax, qword [r13 + 0x10]
mov rdx, qword [rax + r12*8]
test rdx, rdx
je 0x18000fe9b
mov rax, qword [0x18003dfd8]
mov r9, qword [0x18003dfd0]
mov r8, qword [0x18003dfe0]
mov rcx, qword [rax + 8]
mov rax, qword [0x18003dfe8]
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.1800018a0
lea rcx, str.Start_DownLoad_Config_File__s
mov rdx, qword [rax + 8]
mov rdi, rax
call fcn.180003b60
mov rdx, qword [rsp + 0x90]
mov rcx, qword [rdi + 8]
call fcn.180005df0
mov rcx, qword [rdi + 8]
cmp eax, 1
je 0x18000feae
test rcx, rcx
je 0x18000fe71
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 0x18000fdd8
jmp 0x18000fee4
test rcx, rcx
je 0x18000feba
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 0x18000ff7f
mov rax, qword [0x18003de78]
test rax, rax
je 0x18000ff1f
mov rdi, qword [rax]
call fcn.180017e08
add rax, 0x30
cmp rdi, rax
je 0x18000ff13
mov rcx, rdi
call fcn.180018e54
mov rcx, qword [0x18003de78]
call fcn.18001795c
mov ecx, 0x1008
call fcn.18001799c
lea rdx, [0x18002e7bc]
lea rcx, str.c:_xscp.txt
mov qword [rax], r14
mov qword [0x18003de78], rax
call fcn.1800184ec
mov rcx, qword [0x18003de78]
mov qword [rcx], rax
cmp rax, 0
jne 0x18000ff69
call fcn.180017e08
mov rcx, qword [0x18003de78]
add rax, 0x30
mov qword [rcx], rax
lea rcx, [0x180033458]
call fcn.180003b60
or ecx, 0xffffffff
call qword [sym.imp.KERNEL32.dll_ExitProcess]
mov rsi, qword [rsp + 0x90]
mov rcx, rsi
call fcn.180001d90
cmp dword [rsi], 0
mov edi, r14d
jle 0x180010015
mov eax, dword [rsi + 4]
test eax, eax
jle 0x180010015
dec eax
test eax, eax
jle 0x180010015
mov rcx, qword [rsi + 8]
movzx edx, word [0x18002e56c]
movsxd rax, edi
cmp word [rax + rcx], dx
je 0x18000ffc9
mov eax, dword [rsi + 4]
inc edi
dec eax
cmp edi, eax
jl 0x18000ffb3
jmp 0x180010015
test edi, edi
js 0x180010015
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 0x18000ffd0
mov ecx, dword [rsi + 4]
mov ebx, dword [rsi]
add ecx, 2
cmp ecx, ebx
jl 0x18001004a
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.18001fc00
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.180002280
mov edi, r14d
cmp dword [rax + 0xc], 0
mov r12, rax
mov qword [rsp + 0xa0], rax
jle 0x18001014d
cmp r14d, dword [rax + 0xc]
mov rbx, r14
jge 0x1800100a9
test edi, edi
js 0x1800100a9
mov rax, qword [r12 + 0x10]
mov rcx, qword [rbx + rax]
jmp 0x1800100ac
mov rcx, r14
mov rcx, qword [rcx + 8]
lea rdx, [0x18002e54c]
call fcn.180017a54
test rax, rax
jne 0x18001013c
mov r8d, dword [r12 + 0xc]
cmp edi, r8d
jge 0x180010128
test edi, edi
js 0x180010128
mov rax, qword [r12 + 0x18]
test rax, rax
je 0x1800100e4
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 0x180010121
mov rdx, rbx
nop word [rax + rax]
mov rcx, qword [r12 + 0x10]
inc r8d
add rdx, 8
mov rax, qword [rdx + rcx]
mov qword [rdx + rcx - 8], rax
mov eax, dword [r12 + 0xc]
dec eax
cmp r8d, eax
jl 0x180010100
dec dword [r12 + 0xc]
jmp 0x180010136
lea rcx, str.xdarray_erase_error__d__d_
mov edx, edi
call fcn.180003b60
dec edi
sub rbx, 8
inc edi
add rbx, 8
cmp edi, dword [r12 + 0xc]
jl 0x18001009a
mov r8, qword [0x18003be40]
movsxd rbp, dword [r12 + 0xc]
lea rcx, [0x180033488]
mov r8, qword [r8 + 8]
mov edx, ebp
call fcn.180003b60
mov rdi, qword [0x18003be50]
mov rbx, r14
lea rcx, [rdi + 0x20]
call qword [sym.imp.KERNEL32.dll_EnterCriticalSection]
cmp qword [rdi + 8], 0
jne 0x18001018e
mov rcx, rdi
call fcn.180001000
mov rax, qword [rdi + 8]
test rax, rax
je 0x1800101a1
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 0x1800101d8
lea r13, [rbx + 8]
mov qword [rsp + 0x58], r13
test r13, r13
je 0x1800101d8
mov rdx, r13
mov ecx, 0x28
mov dword [r13 + 4], r14d
call fcn.180001120
mov qword [r13 + 8], rax
mov byte [rax], 0
jmp 0x1800101dd
mov qword [rsp + 0x58], 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 0x180010200
mov rcx, rdi
call fcn.180001000
mov rax, qword [rdi + 8]
test rax, rax
je 0x180010213
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 0x18001024a
lea r13, [rbx + 8]
mov qword [rsp + 0x50], r13
test r13, r13
je 0x18001024a
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 0x18001024f
mov qword [rsp + 0x50], 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 0x180010272
mov rcx, rdi
call fcn.180001000
mov rax, qword [rdi + 8]
test rax, rax
je 0x180010285
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 0x1800102bf
lea r13, [rbx + 8]
mov qword [rsp + 0x88], r13
test r13, r13
je 0x1800102bf
mov rdx, r13
mov ecx, 0x64
mov dword [r13 + 4], r14d
call fcn.180001120
mov qword [r13 + 8], rax
mov byte [rax], 0
jmp 0x1800102c7
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 0x1800102ea
mov rcx, rdi
call fcn.180001000
mov rax, qword [rdi + 8]
test rax, rax
je 0x1800102fd
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 0x180010334
lea r13, [rbx + 8]
mov qword [rsp + 0x60], r13
test r13, r13
je 0x180010334
mov rdx, r13
mov ecx, 0x64
mov dword [r13 + 4], r14d
call fcn.180001120
mov qword [r13 + 8], rax
mov byte [rax], 0
jmp 0x180010339
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 0x18001035c
mov rcx, rdi
call fcn.180001000
mov rax, qword [rdi + 8]
test rax, rax
je 0x18001036f
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 0x1800103a9
lea r13, [rbx + 8]
mov qword [rsp + 0x110], r13
test r13, r13
je 0x1800103a9
mov rdx, r13
mov ecx, 0x64
mov dword [r13 + 4], r14d
call fcn.180001120
mov qword [r13 + 8], rax
mov byte [rax], 0
jmp 0x1800103b4
mov r13, r14
mov qword [rsp + 0x110], 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 0x1800103d7
mov rcx, rdi
call fcn.180001000
mov rax, qword [rdi + 8]
test rax, rax
je 0x1800103ea
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 0x180010421
lea rdi, [rbx + 8]
mov qword [rsp + 0x70], rdi
test rdi, rdi
je 0x180010421
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 0x180010426
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 0x180010449
mov rcx, rdi
call fcn.180001000
mov rax, qword [rdi + 8]
test rax, rax
je 0x18001045c
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 0x180010493
lea rdi, [rbx + 8]
mov qword [rsp + 0x78], rdi
test rdi, rdi
je 0x180010493
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 0x180010498
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 0x1800104bb
mov rcx, rdi
call fcn.180001000
mov rax, qword [rdi + 8]
test rax, rax
je 0x1800104ce
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 0x180010505
lea rdi, [rbx + 8]
mov qword [rsp + 0x68], rdi
test rdi, rdi
je 0x180010505
mov rdx, rdi
mov ecx, 0x64
mov dword [rdi + 4], r14d
call fcn.180001120
mov qword [rdi + 8], rax
mov byte [rax], 0
jmp 0x18001050a
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 0x18001052d
mov rcx, rdi
call fcn.180001000
mov rax, qword [rdi + 8]
test rax, rax
je 0x180010540
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 0x18001057a
lea rdi, [rbx + 8]
mov qword [rsp + 0x80], rdi
test rdi, rdi
je 0x18001057a
mov rdx, rdi
mov ecx, gethostbyname
mov dword [rdi + 4], r14d
call fcn.180001120
mov qword [rdi + 8], rax
mov byte [rax], 0
jmp 0x180010582
mov qword [rsp + 0x80], r14
mov rdx, rbp
mov eax, r14d
mov rcx, r14
lea rbp, reloc.WS2_32.dll_recv
lea r8, [0x180000000]
mov dword [rsp + 0x108], eax
mov qword [rsp + 0x98], rcx
mov qword [rsp + 0xa8], rdx
test rdx, rdx
jle 0x180011da8
nop dword [rax]
cmp eax, dword [r12 + 0xc]
jge 0x1800105d7
test rcx, rcx
js 0x1800105d7
mov rax, qword [r12 + 0x10]
mov rdi, qword [rax + rcx*8]
jmp 0x1800105da
mov rdi, r14
mov rax, qword [r15 + 8]
mov dword [r15 + 4], r14d
mov qword [rsp + 0x118], rdi
mov byte [rax], 0
cmp dword [rdi], 0
jle 0x1800106ce
cmp dword [rdi + 4], 0
jle 0x1800106ce
lea r8, [0x18002e54c]
mov r9d, 1
xor edx, edx
mov rcx, rdi
call fcn.180001350
movsxd rbp, eax
test eax, eax
js 0x1800106c7
mov ecx, dword [r15]
mov r13, qword [rdi + 8]
lea r12d, [rbp + 1]
cmp ecx, r12d
jge 0x1800106a7
mov rdi, qword [r15 + 8]
test ecx, ecx
jle 0x180010698
mov edx, r14d
mov rsi, r14
lea rax, reloc.WS2_32.dll_recv
cmp ecx, dword [rax]
jle 0x180010663
inc edx
inc rsi
add rax, 0x10
cmp edx, 4
jb 0x180010647
mov rcx, rdi
call fcn.18001795c
jmp 0x180010698
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 0x1800106ba
mov rcx, qword [r15 + 8]
mov r8, rbp
mov rdx, r13
call fcn.18001fc00
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 + 0x50]
mov ecx, dword [rbx]
test ebp, ebp
jle 0x18001077d
mov r13, qword [r15 + 8]
lea r12d, [rbp + 1]
cmp ecx, r12d
jge 0x18001075c
mov rdi, qword [rbx + 8]
test ecx, ecx
jle 0x18001074d
mov edx, r14d
mov rsi, r14
lea rax, reloc.WS2_32.dll_recv
cmp ecx, dword [rax]
jle 0x18001071f
inc edx
inc rsi
add rax, 0x10
cmp edx, 4
jb 0x180010703
mov rcx, rdi
call fcn.18001795c
jmp 0x18001074d
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 0x18001076f
mov rcx, qword [rbx + 8]
mov r8, rbp
mov rdx, r13
call fcn.18001fc00
mov rax, qword [rbx + 8]
mov dword [rbx + 4], ebp
mov byte [rbp + rax], 0
jmp 0x1800107f1
mov rdi, qword [rbx + 8]
test ecx, ecx
jle 0x1800107dc
mov edx, r14d
mov rsi, r14
lea rax, reloc.WS2_32.dll_recv
cmp ecx, dword [rax]
jle 0x1800107ae
inc edx
inc rsi
add rax, 0x10
cmp edx, 4
jb 0x180010792
mov rcx, rdi
call fcn.18001795c
jmp 0x1800107dc
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 + 0x88]
mov r8, qword [r8 + 8]
lea rdx, str._s_s
call fcn.180001ad0
mov rax, qword [r15 + 8]
mov r10, qword [rsp + 0x118]
mov dword [r15 + 4], r14d
mov byte [rax], 0
cmp dword [r10], 0
mov ecx, r14d
jle 0x180010942
mov eax, dword [r10 + 4]
test eax, eax
jle 0x180010942
lea edx, [rax - 3]
test edx, edx
jle 0x180010942
mov rbx, qword [r10 + 8]
mov edi, dword [str.md5]
movsxd rax, ecx
add rax, rbx
cmp dword [rax], edi
je 0x18001086a
inc ecx
cmp ecx, edx
jl 0x180010855
jmp 0x180010942
test ecx, ecx
js 0x180010942
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 0x180010942
mov ecx, dword [r15]
sub ebp, edi
movsxd r13, edi
lea r12d, [rbp + 1]
add r13, rbx
cmp ecx, r12d
jge 0x180010920
mov rdi, qword [r15 + 8]
test ecx, ecx
jle 0x180010911
mov edx, r14d
mov rsi, r14
lea rax, reloc.WS2_32.dll_recv
nop
cmp ecx, dword [rax]
jle 0x1800108dc
inc edx
inc rsi
add rax, 0x10
cmp edx, 4
jb 0x1800108c0
mov rcx, rdi
call fcn.18001795c
jmp 0x180010911
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 0x180010933
mov rcx, qword [r15 + 8]
movsxd r8, ebp
mov rdx, r13
call fcn.18001fc00
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 0x180010a27
movzx eax, byte [rcx]
cmp al, 0x41
jl 0x180010963
cmp al, 0x5a
jg 0x180010963
add al, 0x20
mov byte [rcx], al
inc edx
inc rcx
cmp edx, dword [r15 + 4]
jl 0x180010954
movsxd rbp, dword [r15 + 4]
test ebp, ebp
jle 0x180010a27
mov rbx, qword [rsp + 0x58]
mov r13, qword [r15 + 8]
lea r12d, [rbp + 1]
mov ecx, dword [rbx]
cmp ecx, r12d
jge 0x180010a03
mov rdi, qword [rbx + 8]
test ecx, ecx
jle 0x1800109f4
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.18001795c
jmp 0x1800109f4
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 0x180010a16
mov rcx, qword [rbx + 8]
mov r8, rbp
mov rdx, r13
call fcn.18001fc00
mov rax, qword [rbx + 8]
mov dword [rbx + 4], ebp
mov byte [rbp + rax], 0
jmp 0x180010aa9
mov rbx, qword [rsp + 0x58]
mov ecx, dword [rbx]
mov rdi, qword [rbx + 8]
test ecx, ecx
jle 0x180010a94
mov edx, r14d
mov rsi, r14
lea rax, reloc.WS2_32.dll_recv
cmp ecx, dword [rax]
jle 0x180010a5f
inc edx
inc rsi
add rax, 0x10
cmp edx, 4
jb 0x180010a43
mov rcx, rdi
call fcn.18001795c
jmp 0x180010a94
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 + 0x118]
mov dword [r15 + 4], r14d
mov byte [rax], 0
cmp dword [r10], 0
mov ecx, r14d
jle 0x180010bda
mov eax, dword [r10 + 4]
test eax, eax
jle 0x180010bda
lea edx, [rax - 3]
test edx, edx
jle 0x180010bda
mov rbx, qword [r10 + 8]
mov edi, dword [str.url]
nop word [rax + rax]
movsxd rax, ecx
cmp dword [rax + rbx], edi
je 0x180010b03
inc ecx
cmp ecx, edx
jl 0x180010af0
jmp 0x180010bda
test ecx, ecx
js 0x180010bda
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 0x180010bda
mov ecx, dword [r15]
sub ebp, edi
movsxd r13, edi
lea r12d, [rbp + 1]
add r13, rbx
cmp ecx, r12d
jge 0x180010bb8
mov rdi, qword [r15 + 8]
test ecx, ecx
jle 0x180010ba9
mov edx, r14d
mov rsi, r14
lea rax, reloc.WS2_32.dll_recv
cmp ecx, dword [rax]
jle 0x180010b74
inc edx
inc rsi
add rax, 0x10
cmp edx, 4
jb 0x180010b58
mov rcx, rdi
call fcn.18001795c
jmp 0x180010ba9
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 0x180010bcb
mov rcx, qword [r15 + 8]
movsxd r8, ebp
mov rdx, r13
call fcn.18001fc00
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 + 0x60]
mov ecx, dword [rbx]
test ebp, ebp
jle 0x180010c94
mov r13, qword [r15 + 8]
lea r12d, [rbp + 1]
cmp ecx, r12d
jge 0x180010c70
mov rdi, qword [rbx + 8]
test ecx, ecx
jle 0x180010c61
mov edx, r14d
mov rsi, r14
lea rax, reloc.WS2_32.dll_recv
nop
cmp ecx, dword [rax]
jle 0x180010c2c
inc edx
inc rsi
add rax, 0x10
cmp edx, 4
jb 0x180010c10
mov rcx, rdi
call fcn.18001795c
jmp 0x180010c61
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 0x180010c83
mov rcx, qword [rbx + 8]
mov r8, rbp
mov rdx, r13
call fcn.18001fc00
mov rax, qword [rbx + 8]
mov dword [rbx + 4], ebp
mov byte [rbp + rax], 0
jmp 0x180010d16
mov rdi, qword [rbx + 8]
test ecx, ecx
jle 0x180010d01
mov edx, r14d
mov rsi, r14
lea rax, reloc.WS2_32.dll_recv
nop dword [rax]
cmp ecx, dword [rax]
jle 0x180010ccc
inc edx
inc rsi
add rax, 0x10
cmp edx, 4
jb 0x180010cb0
mov rcx, rdi
call fcn.18001795c
jmp 0x180010d01
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 + 0x110]
mov r13, qword [rsp + 0x118]
mov edi, r14d
mov rax, qword [rsi + 8]
mov dword [rsi + 4], r14d
mov byte [rax], 0
cmp dword [r13], 0
jle 0x180010e91
mov eax, dword [r13 + 4]
test eax, eax
jle 0x180010e91
lea r8d, [rax - 4]
lea r9, [0x180000000]
test r8d, r8d
jle 0x180010e98
mov rbx, qword [r13 + 8]
nop word [rax + rax]
movsxd rax, edi
mov edx, dword [rax + rbx]
cmp edx, dword [r9 + 0x334b4]
jne 0x180010d91
mov dl, byte [rax + rbx + 4]
cmp dl, byte [r9 + 0x334b8]
jne 0x180010d91
mov eax, r14d
jmp 0x180010d96
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
je 0x180010da6
inc edi
cmp edi, r8d
jl 0x180010d70
jmp 0x180010e98
test edi, edi
js 0x180010e98
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 0x180010e91
mov ecx, dword [rsi]
sub ebp, edi
movsxd r13, edi
lea r12d, [rbp + 1]
add r13, rbx
cmp ecx, r12d
jge 0x180010e68
mov rdi, qword [rsi + 8]
test ecx, ecx
jle 0x180010e59
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.18001795c
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 rsi, qword [rsp + 0x110]
mov rdx, rsi
mov ecx, r12d
call fcn.180001120
mov qword [rsi + 8], rax
test ebp, ebp
jle 0x180010e7b
mov rcx, qword [rsi + 8]
movsxd r8, ebp
mov rdx, r13
call fcn.18001fc00
mov rax, qword [rsi + 8]
mov r13, qword [rsp + 0x118]
movsxd rcx, ebp
mov dword [rsi + 4], ebp
mov byte [rcx + rax], 0
lea r9, [0x180000000]
cmp dword [rsi + 4], 1
jge 0x180011005
mov rbx, qword [rsp + 0x100]
test rbx, rbx
jne 0x180010f3f
mov ecx, dword [rsi]
mov rdi, qword [rsi + 8]
test ecx, ecx
jle 0x180010f2a
mov edx, r14d
mov rsi, r14
lea rax, reloc.WS2_32.dll_recv
nop word [rax + rax]
cmp ecx, dword [rax]
jle 0x180010eec
inc edx
inc rsi
add rax, 0x10
cmp edx, 4
jb 0x180010ed0
mov rcx, rdi
call fcn.18001795c
jmp 0x180010f22
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 + 0x100]
mov rsi, qword [rsp + 0x110]
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 0x180010fe4
mov rdi, qword [rsi + 8]
test ecx, ecx
jle 0x180010fd5
mov edx, r14d
mov rsi, r14
lea rax, reloc.WS2_32.dll_recv
cmp ecx, dword [rax]
jle 0x180010f90
inc edx
inc rsi
add rax, 0x10
cmp edx, 4
jb 0x180010f74
mov rcx, rdi
call fcn.18001795c
jmp 0x180010fcd
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 + 0x100]
mov rsi, qword [rsp + 0x110]
mov rdx, rsi
mov ecx, r12d
call fcn.180001120
mov qword [rsi + 8], rax
test ebp, ebp
jle 0x180010ff7
mov rcx, qword [rsi + 8]
movsxd r8, ebp
mov rdx, rbx
call fcn.18001fc00
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 0x180011172
mov eax, dword [r13 + 4]
test eax, eax
jle 0x180011172
lea r8d, [rax - 4]
test r8d, r8d
jle 0x180011172
mov rbx, qword [r13 + 8]
lea r9, [0x180000000]
nop word [rax + rax]
movsxd rax, edi
mov edx, dword [rax + rbx]
cmp edx, dword [r9 + 0x334bc]
jne 0x180011071
mov dl, byte [rax + rbx + 4]
cmp dl, byte [r9 + 0x334c0]
jne 0x180011071
mov eax, r14d
jmp 0x180011076
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
je 0x180011086
inc edi
cmp edi, r8d
jl 0x180011050
jmp 0x180011172
test edi, edi
js 0x180011172
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 0x180011172
mov ecx, dword [r15]
sub ebp, edi
movsxd r13, edi
lea r12d, [rbp + 1]
add r13, rbx
cmp ecx, r12d
jge 0x180011148
mov rdi, qword [r15 + 8]
test ecx, ecx
jle 0x180011139
mov edx, r14d
mov rsi, r14
lea rax, reloc.WS2_32.dll_recv
nop
cmp ecx, dword [rax]
jle 0x1800110fc
inc edx
inc rsi
add rax, 0x10
cmp edx, 4
jb 0x1800110e0
mov rcx, rdi
call fcn.18001795c
jmp 0x180011131
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 + 0x110]
mov rdx, r15
mov ecx, r12d
call fcn.180001120
mov qword [r15 + 8], rax
test ebp, ebp
jle 0x18001115b
mov rcx, qword [r15 + 8]
movsxd r8, ebp
mov rdx, r13
call fcn.18001fc00
mov rax, qword [r15 + 8]
mov r13, qword [rsp + 0x118]
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 0x18001121e
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.18001fc00
test edi, edi
jle 0x18001121e
mov edx, r14d
mov rsi, r14
lea rax, reloc.WS2_32.dll_recv
cmp edi, dword [rax]
jle 0x1800111e1
inc edx
inc rsi
add rax, 0x10
cmp edx, 4
jb 0x1800111c5
mov rcx, rbx
call fcn.18001795c
jmp 0x180011216
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 + 0x110]
movsxd rcx, dword [rsi + 4]
movsxd r8, ebp
mov rdx, r12
add rcx, qword [rsi + 8]
call fcn.18001fc00
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 0x180011269
nop dword [rax]
movzx eax, byte [rcx]
cmp al, 0x41
jl 0x18001125f
cmp al, 0x5a
jg 0x18001125f
add al, 0x20
mov byte [rcx], al
inc edx
inc rcx
cmp edx, dword [rsi + 4]
jl 0x180011250
mov rax, qword [r15 + 8]
mov dword [r15 + 4], r14d
mov edi, r14d
mov byte [rax], 0
cmp dword [r13], 0
jle 0x1800113c2
mov eax, dword [r13 + 4]
test eax, eax
jle 0x1800113c2
lea r8d, [rax - 4]
lea r9, [0x180000000]
test r8d, r8d
jle 0x1800113c9
mov rbx, qword [r13 + 8]
nop word [rax + rax]
movsxd rax, edi
mov edx, dword [rax + rbx]
cmp edx, dword [r9 + 0x334c4]
jne 0x1800112d1
mov dl, byte [rax + rbx + 4]
cmp dl, byte [r9 + 0x334c8]
jne 0x1800112d1
mov eax, r14d
jmp 0x1800112d6
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
je 0x1800112e6
inc edi
cmp edi, r8d
jl 0x1800112b0
jmp 0x1800113c9
test edi, edi
js 0x1800113c9
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 0x1800113c2
mov ecx, dword [r15]
sub ebp, edi
movsxd r13, edi
lea r12d, [rbp + 1]
add r13, rbx
cmp ecx, r12d
jge 0x1800113a0
mov rdi, qword [r15 + 8]
test ecx, ecx
jle 0x180011391
mov edx, r14d
mov rsi, r14
lea rax, reloc.WS2_32.dll_recv
nop dword [rax + rax]
cmp ecx, dword [rax]
jle 0x18001135c
inc edx
inc rsi
add rax, 0x10
cmp edx, 4
jb 0x180011340
mov rcx, rdi
call fcn.18001795c
jmp 0x180011391
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 0x1800113b3
mov rcx, qword [r15 + 8]
movsxd r8, ebp
mov rdx, r13
call fcn.18001fc00
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 + 0x70]
mov ecx, dword [rbx]
test ebp, ebp
jle 0x18001147a
mov r13, qword [r15 + 8]
lea r12d, [rbp + 1]
cmp ecx, r12d
jge 0x180011459
mov rdi, qword [rbx + 8]
test ecx, ecx
jle 0x18001144a
mov edx, r14d
mov rsi, r14
lea rax, reloc.WS2_32.dll_recv
nop
cmp ecx, dword [rax]
jle 0x18001141c
inc edx
inc rsi
add rax, 0x10
cmp edx, 4
jb 0x180011400
mov rcx, rdi
call fcn.18001795c
jmp 0x18001144a
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 0x18001146c
mov rcx, qword [rbx + 8]
mov r8, rbp
mov rdx, r13
call fcn.18001fc00
mov rax, qword [rbx + 8]
mov dword [rbx + 4], ebp
mov byte [rbp + rax], 0
jmp 0x1800114ef
mov rdi, qword [rbx + 8]
test ecx, ecx
jle 0x1800114da
mov edx, r14d
mov rsi, r14
lea rax, reloc.WS2_32.dll_recv
nop
cmp ecx, dword [rax]
jle 0x1800114ac
inc edx
inc rsi
add rax, 0x10
cmp edx, 4
jb 0x180011490
mov rcx, rdi
call fcn.18001795c
jmp 0x1800114da
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 0x180011519
nop dword [rax]
movzx eax, byte [rcx]
cmp al, 0x41
jl 0x18001150f
cmp al, 0x5a
jg 0x18001150f
add al, 0x20
mov byte [rcx], al
inc edx
inc rcx
cmp edx, dword [rbx + 4]
jl 0x180011500
mov rax, qword [r15 + 8]
mov r10, qword [rsp + 0x118]
mov dword [r15 + 4], r14d
mov byte [rax], 0
cmp dword [r10], 0
mov edi, r14d
jle 0x180011672
mov eax, dword [r10 + 4]
test eax, eax
jle 0x180011672
lea r8d, [rax - 4]
lea r9, [0x180000000]
test r8d, r8d
jle 0x180011679
mov rbx, qword [r10 + 8]
nop dword [rax]
movsxd rax, edi
mov edx, dword [rax + rbx]
cmp edx, dword [r9 + 0x334cc]
jne 0x180011581
mov dl, byte [rax + rbx + 4]
cmp dl, byte [r9 + 0x334d0]
jne 0x180011581
mov eax, r14d
jmp 0x180011586
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
je 0x180011596
inc edi
cmp edi, r8d
jl 0x180011560
jmp 0x180011679
test edi, edi
js 0x180011679
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 0x180011672
mov ecx, dword [r15]
sub ebp, edi
movsxd r13, edi
lea r12d, [rbp + 1]
add r13, rbx
cmp ecx, r12d
jge 0x180011650
mov rdi, qword [r15 + 8]
test ecx, ecx
jle 0x180011641
mov edx, r14d
mov rsi, r14
lea rax, reloc.WS2_32.dll_recv
nop dword [rax + rax]
cmp ecx, dword [rax]
jle 0x18001160c
inc edx
inc rsi
add rax, 0x10
cmp edx, 4
jb 0x1800115f0
mov rcx, rdi
call fcn.18001795c
jmp 0x180011641
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 0x180011663
mov rcx, qword [r15 + 8]
movsxd r8, ebp
mov rdx, r13
call fcn.18001fc00
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 0x18001172a
mov r13, qword [r15 + 8]
lea r12d, [rbp + 1]
cmp ecx, r12d
jge 0x180011709
mov rdi, qword [rbx + 8]
test ecx, ecx
jle 0x1800116fa
mov edx, r14d
mov rsi, r14
lea rax, reloc.WS2_32.dll_recv
nop
cmp ecx, dword [rax]
jle 0x1800116cc
inc edx
inc rsi
add rax, 0x10
cmp edx, 4
jb 0x1800116b0
mov rcx, rdi
call fcn.18001795c
jmp 0x1800116fa
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 0x18001171c
mov rcx, qword [rbx + 8]
mov r8, rbp
mov rdx, r13
call fcn.18001fc00
mov rax, qword [rbx + 8]
mov dword [rbx + 4], ebp
mov byte [rbp + rax], 0
jmp 0x18001179f
mov rdi, qword [rbx + 8]
test ecx, ecx
jle 0x18001178a
mov edx, r14d
mov rsi, r14
lea rax, reloc.WS2_32.dll_recv
nop
cmp ecx, dword [rax]
jle 0x18001175c
inc edx
inc rsi
add rax, 0x10
cmp edx, 4
jb 0x180011740
mov rcx, rdi
call fcn.18001795c
jmp 0x18001178a
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 + 0x118]
mov dword [r15 + 4], r14d
mov byte [rax], 0
cmp dword [r10], 0
mov edi, r14d
jle 0x180011902
mov eax, dword [r10 + 4]
test eax, eax
jle 0x180011902
lea r8d, [rax - 5]
lea r9, [0x180000000]
test r8d, r8d
jle 0x180011909
mov rbx, qword [r10 + 8]
nop word [rax + rax]
movsxd rax, edi
mov edx, dword [rax + rbx]
cmp edx, dword [r9 + 0x334d4]
jne 0x180011813
mov dx, word [rax + rbx + 4]
cmp dx, word [r9 + 0x334d8]
jne 0x180011813
mov eax, r14d
jmp 0x180011818
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
je 0x180011828
inc edi
cmp edi, r8d
jl 0x1800117f0
jmp 0x180011909
test edi, edi
js 0x180011909
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 0x180011902
mov ecx, dword [r15]
sub ebp, edi
movsxd r13, edi
lea r12d, [rbp + 1]
add r13, rbx
cmp ecx, r12d
jge 0x1800118e0
mov rdi, qword [r15 + 8]
test ecx, ecx
jle 0x1800118d1
mov edx, r14d
mov rsi, r14
lea rax, reloc.WS2_32.dll_recv
nop dword [rax]
cmp ecx, dword [rax]
jle 0x18001189c
inc edx
inc rsi
add rax, 0x10
cmp edx, 4
jb 0x180011880
mov rcx, rdi
call fcn.18001795c
jmp 0x1800118d1
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 0x1800118f3
mov rcx, qword [r15 + 8]
movsxd r8, ebp
mov rdx, r13
call fcn.18001fc00
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 0x1800119ba
mov r13, qword [r15 + 8]
lea r12d, [rbp + 1]
cmp ecx, r12d
jge 0x180011999
mov rdi, qword [rbx + 8]
test ecx, ecx
jle 0x18001198a
mov edx, r14d
mov rsi, r14
lea rax, reloc.WS2_32.dll_recv
nop
cmp ecx, dword [rax]
jle 0x18001195c
inc edx
inc rsi
add rax, 0x10
cmp edx, 4
jb 0x180011940
mov rcx, rdi
call fcn.18001795c
jmp 0x18001198a
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 0x1800119ac
mov rcx, qword [rbx + 8]
mov r8, rbp
mov rdx, r13
call fcn.18001fc00
mov rax, qword [rbx + 8]
mov dword [rbx + 4], ebp
mov byte [rbp + rax], 0
jmp 0x180011a2f
mov rdi, qword [rbx + 8]
test ecx, ecx
jle 0x180011a1a
mov edx, r14d
mov rsi, r14
lea rax, reloc.WS2_32.dll_recv
nop
cmp ecx, dword [rax]
jle 0x1800119ec
inc edx
inc rsi
add rax, 0x10
cmp edx, 4
jb 0x1800119d0
mov rcx, rdi
call fcn.18001795c
jmp 0x180011a1a
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 + 0x118]
mov dword [r15 + 4], r14d
mov byte [rax], 0
cmp dword [r10], 0
mov edi, r14d
jle 0x180011b92
mov eax, dword [r10 + 4]
test eax, eax
jle 0x180011b92
lea r8d, [rax - 8]
lea r9, [0x180000000]
test r8d, r8d
jle 0x180011b99
mov rbx, qword [r10 + 8]
nop word [rax + rax]
movsxd rax, edi
mov rdx, qword [rax + rbx]
cmp rdx, qword [r9 + 0x334e0]
jne 0x180011aa2
mov dl, byte [rax + rbx + 8]
cmp dl, byte [r9 + 0x334e8]
jne 0x180011aa2
mov eax, r14d
jmp 0x180011aa7
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
je 0x180011ab7
inc edi
cmp edi, r8d
jl 0x180011a80
jmp 0x180011b99
test edi, edi
js 0x180011b99
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 0x180011b92
mov ecx, dword [r15]
sub ebp, edi
movsxd r13, edi
lea r12d, [rbp + 1]
add r13, rbx
cmp ecx, r12d
jge 0x180011b70
mov rdi, qword [r15 + 8]
test ecx, ecx
jle 0x180011b61
mov edx, r14d
mov rsi, r14
lea rax, reloc.WS2_32.dll_recv
nop dword [rax]
cmp ecx, dword [rax]
jle 0x180011b2c
inc edx
inc rsi
add rax, 0x10
cmp edx, 4
jb 0x180011b10
mov rcx, rdi
call fcn.18001795c
jmp 0x180011b61
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 0x180011b83
mov rcx, qword [r15 + 8]
movsxd r8, ebp
mov rdx, r13
call fcn.18001fc00
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]
test ebp, ebp
jle 0x180011c56
mov rdi, qword [rsp + 0x80]
mov r13, qword [r15 + 8]
lea r12d, [rbp + 1]
mov ecx, dword [rdi]
cmp ecx, r12d
jge 0x180011c32
mov rdi, qword [rdi + 8]
test ecx, ecx
jle 0x180011c1b
mov edx, r14d
mov rsi, r14
lea rax, reloc.WS2_32.dll_recv
cmp ecx, dword [rax]
jle 0x180011bed
inc edx
inc rsi
add rax, 0x10
cmp edx, 4
jb 0x180011bd1
mov rcx, rdi
call fcn.18001795c
jmp 0x180011c1b
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 rdi, qword [rsp + 0x80]
mov ecx, r12d
mov rdx, rdi
call fcn.180001120
mov qword [rdi + 8], rax
test ebp, ebp
jle 0x180011c45
mov rcx, qword [rdi + 8]
mov r8, rbp
mov rdx, r13
call fcn.18001fc00
mov rax, qword [rdi + 8]
mov dword [rdi + 4], ebp
mov byte [rbp + rax], 0
jmp 0x180011cdc
mov rax, qword [rsp + 0x80]
mov ecx, dword [rax]
mov rdi, qword [rax + 8]
test ecx, ecx
jle 0x180011cbf
mov edx, r14d
mov rsi, r14
lea rax, reloc.WS2_32.dll_recv
cmp ecx, dword [rax]
jle 0x180011c91
inc edx
inc rsi
add rax, 0x10
cmp edx, 4
jb 0x180011c75
mov rcx, rdi
call fcn.18001795c
jmp 0x180011cbf
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 rdi, qword [rsp + 0x80]
xor ecx, ecx
mov rdx, rdi
call fcn.180001120
mov qword [rdi + 8], rax
mov byte [rax], 0
mov dword [rdi + 4], r14d
mov rax, qword [rdi + 8]
mov r13, qword [rsp + 0x110]
mov r8, qword [rsp + 0x50]
mov rbx, qword [rsp + 0x58]
mov r8, qword [r8 + 8]
mov rcx, qword [0x18003be48]
mov rdx, qword [rbx + 8]
mov qword [rsp + 0x48], rax
mov rax, qword [rsp + 0x68]
mov rax, qword [rax + 8]
mov qword [rsp + 0x40], rax
mov rax, qword [rsp + 0x78]
mov rax, qword [rax + 8]
mov qword [rsp + 0x38], rax
mov rax, qword [r13 + 8]
mov qword [rsp + 0x30], rax
mov rax, qword [rsp + 0x70]
mov rax, qword [rax + 8]
mov qword [rsp + 0x28], rax
mov rax, qword [rsp + 0x60]
mov rax, qword [rax + 8]
mov qword [rsp + 0x20], rax
mov rax, qword [rsp + 0x88]
mov r9, qword [rax + 8]
call fcn.18000dbd0
mov rcx, qword [rsp + 0x98]
mov eax, dword [rsp + 0x108]
mov r12, qword [rsp + 0xa0]
inc rcx
inc eax
cmp rcx, qword [rsp + 0xa8]
mov dword [rsp + 0x108], eax
mov qword [rsp + 0x98], rcx
lea r8, [0x180000000]
jl 0x1800105c0
lea rbp, reloc.WS2_32.dll_recv
lea r8, [0x180000000]
jmp 0x180011dad
mov rbx, qword [rsp + 0x58]
test rbx, rbx
je 0x180011e48
mov rdi, qword [rbx + 8]
test rdi, rdi
je 0x180011e1e
mov ecx, dword [rbx]
test ecx, ecx
jle 0x180011e1e
mov eax, r14d
mov rdx, rbp
nop dword [rax + rax]
cmp ecx, dword [rdx]
jle 0x180011de9
inc eax
add rdx, 0x10
cmp eax, 4
jb 0x180011dd0
mov rcx, rdi
call fcn.18001795c
jmp 0x180011e1e
cdqe
add rdi, 0xfffffffffffffff8
add rax, rax
mov rsi, qword [r8 + rax*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 + 0x58]
mov rsi, qword [0x18003be50]
lea rdi, [rbx - 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 rbx, qword [rsp + 0x50]
test rbx, rbx
je 0x180011eea
mov rdi, qword [rbx + 8]
test rdi, rdi
je 0x180011ec0
mov ecx, dword [rbx]
test ecx, ecx
jle 0x180011ec0
mov eax, r14d
mov rdx, rbp
nop dword [rax + rax]
cmp ecx, dword [rdx]
jle 0x180011e89
inc eax
add rdx, 0x10
cmp eax, 4
jb 0x180011e70
mov rcx, rdi
call fcn.18001795c
jmp 0x180011ec0
cdqe
lea r9, [0x180000000]
add rdi, 0xfffffffffffffff8
add rax, rax
mov rsi, qword [r9 + rax*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 [0x18003be50]
lea rdi, [rbx - 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 rbx, qword [rsp + 0x88]
test rbx, rbx
je 0x180011f8a
mov rdi, qword [rbx + 8]
test rdi, rdi
je 0x180011f60
mov ecx, dword [rbx]
test ecx, ecx
jle 0x180011f60
mov eax, r14d
mov rdx, rbp
cmp ecx, dword [rdx]
jle 0x180011f29
inc eax
add rdx, 0x10
cmp eax, 4
jb 0x180011f10
mov rcx, rdi
call fcn.18001795c
jmp 0x180011f60
cdqe
lea rcx, [0x180000000]
add rdi, 0xfffffffffffffff8
add rax, rax
mov rsi, qword [rcx + rax*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 [0x18003be50]
lea rdi, [rbx - 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 rbx, qword [rsp + 0x60]
test rbx, rbx
je 0x180012025
mov rdi, qword [rbx + 8]
test rdi, rdi
je 0x180011ffb
mov eax, dword [rbx]
test eax, eax
jle 0x180011ffb
cmp eax, dword [rbp]
jle 0x180011fc3
inc r14d
add rbp, 0x10
cmp r14d, 4
jb 0x180011fa7
mov rcx, rdi
call fcn.18001795c
jmp 0x180011ffb
lea rcx, [0x180000000]
movsxd rax, r14d
add rdi, 0xfffffffffffffff8
add rax, rax
mov rsi, qword [rcx + rax*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 [0x18003be50]
lea rdi, [rbx - 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]
test r13, r13
je 0x180012066
mov rcx, qword [r13 + 8]
test rcx, rcx
je 0x18001203c
mov edx, dword [r13]
call fcn.180001240
mov rsi, qword [0x18003be50]
lea rdi, [r13 - 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 rdi, qword [rsp + 0x70]
test rdi, rdi
je 0x1800120aa
mov rcx, qword [rdi + 8]
test rcx, rcx
je 0x180012080
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 rdi, qword [rsp + 0x78]
test rdi, rdi
je 0x1800120ee
mov rcx, qword [rdi + 8]
test rcx, rcx
je 0x1800120c4
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 rdi, qword [rsp + 0x68]
test rdi, rdi
je 0x180012132
mov rcx, qword [rdi + 8]
test rcx, rcx
je 0x180012108
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 rcx, qword [rsp + 0x80]
call fcn.180001770
mov dl, 1
mov rcx, r12
call fcn.1800016d0
mov rcx, r15
call fcn.180001770
mov rcx, qword [rsp + 0x90]
call fcn.180001770
xor eax, eax
add rsp, 0xb8
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
pop rbx
ret