Function at 0x1801449e0
Capabilities:
Resolve function by parsing pe exports

Disassembly:
mov qword [rsp + 0x20], r9
push rbx
push rbp
push rsi
push r15
sub rsp, 0x58
mov dword [r9], 0
mov esi, r8d
cmp qword [rcx + 0x1b8], 0
mov r15, rdx
mov ebp, dword [rcx + 0x2c]
mov rbx, rcx
mov dword [rsp + 0x90], ebp
mov qword [rsp + 0x88], rdx
mov dword [rsp + 0x80], r8d
jne 0x180144a3f
mov ecx, ebp
call fcn.1800da980
mov qword [rbx + 0x1b8], rax
test rax, rax
jne 0x180144a3f
add rsp, 0x58
pop r15
pop rsi
pop rbp
pop rbx
ret
mov qword [rsp + 0x50], rdi
mov qword [rsp + 0x48], r12
mov r12, qword [rsp + 0xb0]
mov qword [rsp + 0x40], r13
mov r13d, 1
mov qword [rsp + 0x38], r14
mov r14, qword [rsp + 0xa0]
mov r11, qword [rsp + 0xa8]
mov r10d, reloc.WS2_32.dll_inet_addr
lea rdx, sym.LoaderKernel.dll_1_bID_MjfIzcypTm24yu_z_nD4S
nop
mov r8d, 3
test esi, esi
jg 0x180144a97
cmp dword [rbx + 0x1b4], 0
jle 0x1801453b7
lea rdi, [rbx + 0x1b4]
mov r9d, dword [rdi]
cmp r9d, 0x18
jge 0x180144acb
test esi, esi
jle 0x180144acb
movzx eax, byte [r15]
dec esi
mov ecx, dword [rdi]
inc r15
shl eax, cl
or dword [rbx + 0x1b0], eax
lea r9d, [rcx + 8]
mov dword [rdi], r9d
cmp r9d, 0x18
jl 0x180144aa7
movsxd rax, dword [rbx + 0x30]
cmp eax, 0xd
ja case.default.0x180144ade
mov ecx, dword [rdx + rax*4 + 0x14545c]
add rcx, rdx
jmp rcx
mov byte [rbx + 0x20], r13b
cmp r9d, 0x10
jl 0x1801453b7
mov ecx, dword [rbx + 0x1b0]
mov eax, ecx
shr eax, 8
movzx r8d, al
movzx eax, cl
shl eax, 8
or r8d, eax
shr ecx, 0x10
lea eax, [r9 - 0x10]
mov dword [rbx + 0x1b0], ecx
mov dword [rdi], eax
mov eax, r8d
and eax, 0xf00
cmp eax, 0x800
jne 0x180144b5a
mov eax, r8d
and eax, 0xf000
cmp eax, 0x7000
ja 0x180144b5a
test r8b, 0x20
jne 0x180144b5a
mov eax, 0x84210843
imul r8d
add edx, r8d
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
imul ecx, edx, 0x1f
cmp r8d, ecx
je 0x1801452bb
lea rdx, str.zlib_header
mov rcx, r12
call fcn.180106930
jmp 0x1801452f2
cmp byte [rbx + 0x28], 0
je 0x180144b8a
cmp byte [rbx + 0x20], 0
je 0x1801453a1
mov dword [rbx + 0x30], reloc.WS2_32.dll_listen
jmp case.default.0x180144ade
cmp r9d, 3
jl 0x1801453b7
movzx eax, byte [rbx + 0x1b0]
add r9d, 0xfffffffd
and al, r13b
mov dword [rdi], r9d
mov byte [rbx + 0x28], al
mov eax, dword [rbx + 0x1b0]
shr eax, 1
mov ecx, eax
shr eax, 2
mov dword [rbx + 0x1b0], eax
and ecx, 3
jne 0x180144be0
mov ecx, r9d
mov dword [rbx + 0x30], 0xa
and ecx, 7
sub r9d, ecx
shr eax, cl
mov dword [rbx + 0x1b0], eax
mov dword [rdi], r9d
jmp case.default.0x180144ade
cmp ecx, r13d
jne 0x180144c07
mov rax, qword [0x180388b68]
mov qword [rbx + 8], rax
mov rax, qword [0x180388b70]
mov qword [rbx + 0x10], rax
mov dword [rbx + 0x30], 6
jmp case.default.0x180144ade
cmp ecx, 2
jne case.default.0x180144ade
mov dword [rbx + 0x30], ecx
jmp case.default.0x180144ade
cmp r9d, 0xe
jl 0x1801453b7
mov ecx, dword [rbx + 0x1b0]
xorps xmm0, xmm0
mov eax, ecx
mov dword [rbx + 0x44], 0
and eax, 0x1f
shr ecx, 5
add eax, 0x101
mov dword [rbx + 0x30], r8d
mov dword [rbx + 0x38], eax
mov eax, ecx
and eax, 0x1f
shr ecx, 5
inc eax
mov dword [rbx + 0x3c], eax
mov eax, ecx
and eax, 0xf
shr ecx, 4
add eax, 4
mov dword [rbx + 0x1b0], ecx
mov dword [rbx + 0x40], eax
lea eax, [r9 - 0xe]
mov dword [rdi], eax
xor eax, eax
movups xmmword [rbx + 0x5c], xmm0
mov word [rbx + 0x6c], ax
mov byte [rbx + 0x6e], al
jmp case.default.0x180144ade
cmp r9d, 3
jl 0x1801453b7
mov eax, dword [rbx + 0x44]
mov ecx, dword [rbx + 0x40]
cmp eax, ecx
jge 0x180144cd1
cmp r9d, 3
jl 0x180144ccf
movzx ecx, byte [rbx + 0x1b0]
movsxd rax, dword [rbx + 0x44]
and cl, 7
movzx eax, byte [rax + rdx + 0x2a9e48]
mov byte [rax + rbx + 0x5c], cl
add dword [rdi], 0xfffffffd
mov eax, dword [rbx + 0x44]
shr dword [rbx + 0x1b0], 3
inc eax
mov r9d, dword [rdi]
mov dword [rbx + 0x44], eax
mov ecx, dword [rbx + 0x40]
cmp eax, ecx
jl 0x180144c93
cmp eax, ecx
jne case.default.0x180144ade
lea rcx, [rbx + 0x5c]
mov edx, reloc.WS2_32.dll_send
call fcn.180144440
mov qword [rbx + 0x18], rax
mov dword [rbx + 0x30], 4
mov dword [rbx + 0x44], 0
jmp 0x180144a69
mov ecx, dword [rbx + 0x3c]
mov edx, dword [rbx + 0x38]
add ecx, edx
cmp dword [rbx + 0x44], ecx
jl 0x180144d4a
lea rcx, [rbx + 0x6f]
call fcn.180144440
mov edx, dword [rbx + 0x3c]
lea rcx, [rbx + 0x6f]
mov qword [rbx + 8], rax
movsxd rax, dword [rbx + 0x38]
add rcx, rax
call fcn.180144440
lea rcx, [rbx + 0x18]
mov qword [rbx + 0x10], rax
call fcn.1801448a0
mov qword [rbx + 0x18], 0
mov dword [rbx + 0x30], 6
jmp 0x180144a69
mov r8, qword [rbx + 0x18]
lea rcx, [rbx + 0x1b0]
mov rdx, rdi
call fcn.180144940
mov edx, eax
cmp eax, 0xffffffff
je 0x1801453af
cmp eax, 0xfffffffe
je 0x1801452c4
cmp eax, 0x10
jge 0x180144d86
movsxd rcx, dword [rbx + 0x44]
mov byte [rcx + rbx + 0x6f], dl
inc dword [rbx + 0x44]
jmp 0x180144a69
mov r8d, 3
jne 0x180144d94
lea eax, [r8 - 1]
jmp 0x180144da0
cmp edx, 0x11
mov eax, 7
cmove eax, r8d
mov dword [rbx + 0x48], eax
cmp edx, 0x12
mov eax, r8d
mov r10d, reloc.WS2_32.dll_inet_addr
cmove eax, r10d
mov dword [rbx + 0x4c], eax
cmp edx, 0x10
jne 0x180144dca
movsxd rax, dword [rbx + 0x44]
test eax, eax
jle 0x180144dca
movzx ecx, byte [rax + rbx + 0x6e]
jmp 0x180144dcc
xor ecx, ecx
mov r11, qword [rsp + 0xa8]
lea rdx, sym.LoaderKernel.dll_1_bID_MjfIzcypTm24yu_z_nD4S
mov dword [rbx + 0x54], ecx
mov dword [rbx + 0x30], 5
jmp case.default.0x180144ade
mov ecx, dword [rbx + 0x48]
cmp r9d, ecx
jl 0x1801453b7
mov eax, dword [rbx + 0x1b0]
sub r9d, ecx
mov edx, r13d
mov dword [rdi], r9d
shl edx, cl
dec edx
and edx, eax
shr eax, cl
add edx, dword [rbx + 0x4c]
mov dword [rbx + 0x1b0], eax
test edx, edx
jle 0x180144e41
mov ecx, dword [rbx + 0x44]
nop dword [rax]
mov eax, dword [rbx + 0x3c]
add eax, dword [rbx + 0x38]
cmp ecx, eax
jge 0x180144e41
movzx eax, byte [rbx + 0x54]
dec edx
movsxd rcx, ecx
mov byte [rcx + rbx + 0x6f], al
inc dword [rbx + 0x44]
mov ecx, dword [rbx + 0x44]
test edx, edx
jg 0x180144e20
mov dword [rbx + 0x30], 4
lea rdx, sym.LoaderKernel.dll_1_bID_MjfIzcypTm24yu_z_nD4S
jmp case.default.0x180144ade
mov r8, qword [rbx + 8]
lea rcx, [rbx + 0x1b0]
mov rdx, rdi
call fcn.180144940
cmp eax, 0xffffffff
je 0x1801453a7
cmp eax, 0xfffffffe
je 0x1801452cc
cmp eax, 0x100
jge 0x180144f0b
movsxd rdx, dword [rbx + 0x1c0]
mov r10d, reloc.WS2_32.dll_inet_addr
mov rcx, qword [rbx + 0x1b8]
mov r11, qword [rsp + 0xa8]
mov r14, qword [rsp + 0xa0]
mov byte [rdx + rcx], al
lea rdx, sym.LoaderKernel.dll_1_bID_MjfIzcypTm24yu_z_nD4S
inc dword [rbx + 0x1c0]
mov r8d, dword [rbx + 0x1c0]
cmp r8d, dword [rbx + 0x2c]
jne 0x180144a80
movsxd rax, dword [rbx + 0x1c4]
mov r9, r11
mov rdx, rax
mov qword [rsp + 0x20], r12
add rdx, qword [rbx + 0x1b8]
sub r8d, eax
mov rcx, r14
call fcn.180187fc0
mov qword [rbx + 0x1c0], 0
test al, al
jne 0x180144a69
mov r13d, 4
jmp 0x1801452f2
jne 0x180144f77
mov dword [rbx + 0x30], r13d
mov rax, qword [0x180388b68]
cmp qword [rbx + 8], rax
je 0x180144f2f
lea rcx, [rbx + 8]
call fcn.1801448a0
mov qword [rbx + 8], 0
mov rax, qword [0x180388b70]
lea rdx, sym.LoaderKernel.dll_1_bID_MjfIzcypTm24yu_z_nD4S
mov r8d, 3
mov r11, qword [rsp + 0xa8]
mov r14, qword [rsp + 0xa0]
lea r10d, [r8 + 8]
cmp qword [rbx + 0x10], rax
je case.default.0x180144ade
lea rcx, [rbx + 0x10]
call fcn.1801448a0
mov qword [rbx + 0x10], 0
jmp 0x180144a69
mov r11, qword [rsp + 0xa8]
mov r8d, 3
mov r14, qword [rsp + 0xa0]
lea rdx, sym.LoaderKernel.dll_1_bID_MjfIzcypTm24yu_z_nD4S
lea r10d, [r8 + 8]
cmp eax, 0x11e
jge case.default.0x180144ade
mov dword [rbx + 0x30], 7
lea rdx, sym.LoaderKernel.dll_1_bID_MjfIzcypTm24yu_z_nD4S
mov dword [rbx + 0x34], eax
jmp case.default.0x180144ade
movsxd rax, dword [rbx + 0x34]
lea rcx, [0x1802a97a2]
sub rax, 0x101
lea r10, [0x1802a9902]
cmp ebp, 0x10000
cmovne r10, rcx
lea rax, [rax + rax*2]
lea r11, [rax*4]
movsx ecx, word [r10 + r11]
cmp r9d, ecx
jl 0x1801453af
mov r8d, dword [rbx + 0x1b0]
lea rax, [0x1802a97a4]
cmp ebp, 0x10000
lea rdx, [0x1802a9904]
cmovne rdx, rax
mov eax, r13d
shl eax, cl
dec eax
and eax, r8d
add eax, dword [rdx + r11]
mov dword [rbx + 0x50], eax
movsx eax, word [r10 + r11]
sub r9d, eax
mov dword [rdi], r9d
movzx ecx, byte [r10 + r11]
shr r8d, cl
mov dword [rbx + 0x1b0], r8d
mov dword [rbx + 0x30], 8
jmp 0x180144a69
mov r8, qword [rbx + 0x10]
lea rcx, [rbx + 0x1b0]
mov rdx, rdi
call fcn.180144940
cmp eax, 0xffffffff
je 0x1801453af
cmp eax, 0xfffffffe
je 0x1801452d4
mov dword [rbx + 0x30], 9
mov dword [rbx + 0x34], eax
jmp 0x180144a69
movsxd rax, dword [rbx + 0x34]
lea r10, [0x1802a9bd2]
cmp ebp, 0x10000
lea rcx, [rax + rax*2]
lea r8, [rcx*4]
lea rcx, [0x1802a9a62]
cmovne r10, rcx
movsx ecx, word [r10 + r8]
cmp r9d, ecx
jl 0x1801453b7
mov edx, dword [rbx + 0x1b0]
lea rax, [0x1802a9bd4]
cmp ebp, 0x10000
lea rbp, [0x1802a9a64]
cmovne rax, rbp
sub r9d, ecx
mov ebp, r13d
shl ebp, cl
dec ebp
and ebp, edx
add ebp, dword [rax + r8]
mov eax, dword [rbx + 0x50]
mov dword [rdi], r9d
movzx ecx, byte [r10 + r8]
shr edx, cl
mov dword [rbx + 0x1b0], edx
mov dword [rbx + 0x30], 6
test eax, eax
je 0x180145198
nop word [rax + rax]
movsxd rcx, dword [rbx + 0x1c0]
dec eax
mov r8, qword [rbx + 0x1b8]
mov dword [rbx + 0x50], eax
mov eax, ecx
sub eax, ebp
movsxd rdx, eax
movsxd rax, dword [rbx + 0x2c]
dec rax
and rdx, rax
movzx eax, byte [rdx + r8]
mov byte [rcx + r8], al
inc dword [rbx + 0x1c0]
mov r8d, dword [rbx + 0x1c0]
cmp r8d, dword [rbx + 0x2c]
jne 0x18014518d
movsxd rax, dword [rbx + 0x1c4]
mov r9, r11
mov rdx, rax
mov qword [rsp + 0x20], r12
add rdx, qword [rbx + 0x1b8]
sub r8d, eax
mov rcx, r14
call fcn.180187fc0
xor ecx, ecx
mov qword [rbx + 0x1c0], rcx
test al, al
je 0x1801452dc
mov r11, qword [rsp + 0xa8]
mov eax, dword [rbx + 0x50]
test eax, eax
jne 0x180145110
mov ebp, dword [rsp + 0x90]
dec eax
mov dword [rbx + 0x50], eax
jmp 0x180144a71
cmp r9d, 0x10
jl 0x1801453b7
mov ecx, dword [rbx + 0x1b0]
movzx eax, cx
mov dword [rbx + 0x58], eax
lea eax, [r9 - 0x10]
shr ecx, 0x10
mov dword [rdi], eax
mov dword [rbx + 0x1b0], ecx
mov dword [rbx + 0x30], r10d
jmp case.default.0x180144ade
cmp r9d, 0x10
jl 0x1801453b7
mov ecx, dword [rbx + 0x1b0]
lea eax, [r9 - 0x10]
mov edx, dword [rbx + 0x58]
mov dword [rdi], eax
mov eax, ecx
shr eax, 0x10
not ecx
mov dword [rbx + 0x1b0], eax
movzx eax, cx
cmp edx, eax
jne 0x1801452e4
test edx, edx
mov eax, r13d
mov ecx, reloc.WS2_32.dll_inet_ntoa
lea rdx, sym.LoaderKernel.dll_1_bID_MjfIzcypTm24yu_z_nD4S
cmovne eax, ecx
mov dword [rbx + 0x30], eax
jmp case.default.0x180144ade
cmp r9d, 8
jl 0x1801453b7
movsxd rdx, dword [rbx + 0x1c0]
mov rcx, qword [rbx + 0x1b8]
movzx eax, byte [rbx + 0x1b0]
mov byte [rdx + rcx], al
inc dword [rbx + 0x1c0]
mov r8d, dword [rbx + 0x1c0]
cmp r8d, dword [rbx + 0x2c]
jne 0x18014529a
movsxd rax, dword [rbx + 0x1c4]
mov r9, r11
mov rdx, rax
mov qword [rsp + 0x20], r12
add rdx, qword [rbx + 0x1b8]
sub r8d, eax
mov rcx, r14
call fcn.180187fc0
mov qword [rbx + 0x1c0], 0
test al, al
je 0x1801452ec
mov r11, qword [rsp + 0xa8]
mov r10d, reloc.WS2_32.dll_inet_addr
add dword [rdi], 0xfffffff8
lea rdx, sym.LoaderKernel.dll_1_bID_MjfIzcypTm24yu_z_nD4S
shr dword [rbx + 0x1b0], 8
mov r8d, 3
sub dword [rbx + 0x58], r13d
jne case.default.0x180144ade
mov dword [rbx + 0x30], r13d
jmp 0x180144a77
mov r13d, 2
jmp 0x1801452f2
mov r13d, 3
jmp 0x1801452f2
mov r13d, 5
jmp 0x1801452f2
mov r13d, 6
jmp 0x1801452f2
mov r13d, 7
jmp 0x1801452f2
mov r13d, 8
mov r8d, r13d
lea rdx, str.decodeErrNum
mov rcx, r12
call fcn.180106220
mov rax, qword [r12]
lea rdx, str.inflate_decode_error.
mov rcx, r12
call qword [rax + 0x28]
xor al, al
jmp 0x18014543c
cmp r9d, 8
jl 0x1801453b7
mov edx, dword [rbx + 0x1b0]
mov ecx, r9d
and ecx, 7
mov dword [rbx + 0x30], 0xa
sub r9d, ecx
shr edx, cl
mov dword [rbx + 0x1b4], r9d
mov dword [rbx + 0x1b0], edx
cmp r9d, 0x20
jge 0x180145389
test esi, esi
jle 0x180145383
movzx edx, byte [r15]
dec esi
mov ecx, dword [rbx + 0x1b4]
inc r15
shl edx, cl
or edx, dword [rbx + 0x1b0]
mov dword [rbx + 0x1b0], edx
lea r9d, [rcx + 8]
mov dword [rbx + 0x1b4], r9d
cmp r9d, 0x20
jl 0x180145351
cmp r9d, 0x20
jl 0x1801453b7
mov eax, edx
rol edx, 8
ror eax, 8
and edx, 0xff00ff
and eax, 0xff00ff00
or eax, edx
mov dword [rbx + 0x24], eax
mov byte [rbx + 0x29], r13b
jmp 0x1801453b7
mov r14, qword [rsp + 0xa0]
mov r11, qword [rsp + 0xa8]
movsxd rax, dword [rbx + 0x1c4]
mov r8d, dword [rbx + 0x1c0]
cmp r8d, eax
jle 0x180145408
mov rdx, rax
mov qword [rsp + 0x20], r12
add rdx, qword [rbx + 0x1b8]
sub r8d, eax
mov r9, r11
mov rcx, r14
call fcn.180187fc0
mov ecx, dword [rbx + 0x1c0]
mov dword [rbx + 0x1c4], ecx
test al, al
jne 0x180145408
mov rax, qword [r12]
lea rdx, str.Failed_to_flush_to_output.
mov rcx, r12
call qword [rax + 0x28]
cmp byte [rbx + 0x29], 0
je 0x180145438
mov eax, dword [rbx + 0x1b4]
mov rcx, qword [rsp + 0x98]
cdq
and edx, 7
add eax, edx
sar eax, 3
sub eax, r15d
add eax, dword [rsp + 0x88]
add eax, dword [rsp + 0x80]
mov dword [rcx], eax
movzx eax, r13b
mov r13, qword [rsp + 0x40]
mov r12, qword [rsp + 0x48]
mov rdi, qword [rsp + 0x50]
mov r14, qword [rsp + 0x38]
add rsp, 0x58
pop r15
pop rsi
pop rbp
pop rbx
ret