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

Disassembly:
mov qword [rsp + 0x20], r9
mov qword [rsp + 0x18], r8
mov dword [rsp + 0x10], edx
mov qword [rsp + 8], rcx
push rdi
sub rsp, 0x150
lea rdi, [rsp + 0x30]
mov ecx, 0x48
mov eax, 0xcccccccc
rep stosd dword [rdi], eax
mov rcx, qword [rsp + 0x160]
lea rcx, [0x180608f6e]
call fcn.180278fb0
mov qword [rsp + 0x138], 0
cmp qword [rsp + 0x160], 0
jne 0x1803b03b1
mov r8d, 0x36
lea rdx, [0x18059eba0]
lea rcx, [0x18059ec08]
call fcn.1803a4020
nop
xor eax, eax
test eax, eax
jne 0x1803b038c
cmp dword [rsp + 0x168], 2
jae 0x1803b03cb
mov eax, 7
jmp 0x1803b16ef
mov dword [rsp + 0xd4], 0
cmp qword [rsp + 0x170], 0
jne 0x1803b045b
cmp qword [rsp + 0x178], 0
jne 0x1803b0406
mov r8d, 0x3f
lea rdx, str.D:_aproject_bo4project_bo4depslibtomcrypt_srcpk_asn1dercustom_typeder_decode_custom_type.c
lea rcx, [0x18059ec88]
call fcn.1803a4020
nop
xor eax, eax
test eax, eax
jne 0x1803b03e1
mov eax, dword [rsp + 0xd4]
mov rcx, qword [rsp + 0x160]
movzx eax, byte [rcx + rax]
cmp eax, 0x30
je 0x1803b0446
mov eax, dword [rsp + 0xd4]
mov rcx, qword [rsp + 0x160]
movzx eax, byte [rcx + rax]
cmp eax, 0x31
je 0x1803b0446
mov eax, 7
jmp 0x1803b16ef
mov eax, dword [rsp + 0xd4]
inc eax
mov dword [rsp + 0xd4], eax
jmp 0x1803b05a9
mov rax, qword [rsp + 0x170]
cmp dword [rax], 0x13
je 0x1803b0472
mov eax, 7
jmp 0x1803b16ef
mov rax, qword [rsp + 0x170]
cmp dword [rax + 0x20], 0
jne 0x1803b04da
mov eax, dword [rsp + 0x168]
mov ecx, eax
call fcn.1802e6d90
mov qword [rsp + 0x138], rax
cmp qword [rsp + 0x138], 0
jne 0x1803b04ab
mov eax, recv
jmp 0x1803b16ef
mov eax, dword [rsp + 0x168]
mov r8d, eax
mov rdx, qword [rsp + 0x160]
mov rcx, qword [rsp + 0x138]
call fcn.1803eb8f0
mov rax, qword [rsp + 0x138]
mov qword [rsp + 0x160], rax
mov eax, dword [rsp + 0x168]
mov dword [rsp + 0xe4], eax
lea r8, [rsp + 0x60]
lea rdx, [rsp + 0xe4]
mov rcx, qword [rsp + 0x160]
call fcn.1803ba410
mov dword [rsp + 0x30], eax
cmp dword [rsp + 0x30], 0
je 0x1803b0512
jmp 0x1803b16d2
mov rax, qword [rsp + 0x170]
mov eax, dword [rax]
cmp dword [rsp + 0x60], eax
jne 0x1803b055d
mov rax, qword [rsp + 0x170]
mov eax, dword [rax + 0x1c]
cmp dword [rsp + 0x7c], eax
jne 0x1803b055d
mov rax, qword [rsp + 0x170]
mov eax, dword [rax + 0x20]
cmp dword [rsp + 0x80], eax
jne 0x1803b055d
mov rax, qword [rsp + 0x170]
mov rax, qword [rax + 0x28]
cmp qword [rsp + 0x88], rax
je 0x1803b056a
mov dword [rsp + 0x30], 7
jmp 0x1803b16d2
mov eax, dword [rsp + 0xe4]
mov ecx, dword [rsp + 0xd4]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0xd4], eax
mov rax, qword [rsp + 0x170]
mov rax, qword [rax + 8]
mov qword [rsp + 0x178], rax
mov rax, qword [rsp + 0x170]
mov eax, dword [rax + 0x10]
mov dword [rsp + 0x180], eax
cmp qword [rsp + 0x170], 0
je 0x1803b0691
mov rax, qword [rsp + 0x170]
cmp dword [rax + 0x20], 0
jne 0x1803b0691
mov rax, qword [rsp + 0x170]
mov ecx, dword [reloc.WS2_32.dll_sendto]
cmp dword [rax + 0x14], ecx
jae 0x1803b05f6
mov rax, qword [rsp + 0x170]
movsxd rax, dword [rax + 0x14]
lea rcx, [0x18051ec40]
cmp dword [rcx + rax*4], 0xffffffff
jne 0x1803b0603
mov dword [rsp + 0x30], 7
jmp 0x1803b16d2
mov rax, qword [rsp + 0x170]
mov rcx, qword [rsp + 0x170]
mov ecx, dword [rcx + 0x14]
mov dword [rax], ecx
mov rax, qword [rsp + 0x170]
mov qword [rsp + 0x178], rax
mov dword [rsp + 0x180], 1
mov eax, dword [rsp + 0xd4]
dec eax
mov dword [rsp + 0xd4], eax
mov eax, 0x50
imul rax, rax, 0
mov rcx, qword [rsp + 0x178]
movsxd rax, dword [rcx + rax]
lea rcx, [0x18051ec40]
mov edx, dword [rsp + 0xd4]
mov r8, qword [rsp + 0x138]
movzx eax, byte [rcx + rax*4]
mov byte [r8 + rdx], al
mov eax, dword [rsp + 0xd4]
mov ecx, dword [rsp + 0x168]
sub ecx, eax
mov eax, ecx
mov dword [rsp + 0x124], eax
jmp 0x1803b0700
mov eax, dword [rsp + 0xd4]
mov ecx, dword [rsp + 0x168]
sub ecx, eax
mov eax, ecx
mov dword [rsp + 0xe4], eax
mov eax, dword [rsp + 0xd4]
mov rcx, qword [rsp + 0x160]
add rcx, rax
mov rax, rcx
lea r8, [rsp + 0x124]
lea rdx, [rsp + 0xe4]
mov rcx, rax
call fcn.1803ba6e0
mov dword [rsp + 0x30], eax
cmp dword [rsp + 0x30], 0
je 0x1803b06e7
jmp 0x1803b16d2
mov eax, dword [rsp + 0xe4]
mov ecx, dword [rsp + 0xd4]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0xd4], eax
mov eax, dword [rsp + 0xd4]
mov ecx, dword [rsp + 0x168]
sub ecx, eax
mov eax, ecx
cmp dword [rsp + 0x124], eax
jbe 0x1803b0728
mov dword [rsp + 0x30], 7
jmp 0x1803b16d2
mov dword [rsp + 0x38], 0
jmp 0x1803b073c
mov eax, dword [rsp + 0x38]
inc eax
mov dword [rsp + 0x38], eax
mov eax, dword [rsp + 0x180]
cmp dword [rsp + 0x38], eax
jge 0x1803b0764
movsxd rax, dword [rsp + 0x38]
imul rax, rax, 0x50
mov rcx, qword [rsp + 0x178]
mov dword [rcx + rax + 0x14], 0
jmp 0x1803b0732
mov eax, dword [rsp + 0x188]
and eax, 1
mov dword [rsp + 0x3c], eax
mov dword [rsp + 0x34], 0
mov eax, dword [rsp + 0xd4]
mov ecx, dword [rsp + 0x124]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x124], eax
mov eax, dword [rsp + 0xd4]
mov ecx, dword [rsp + 0x168]
sub ecx, eax
mov eax, ecx
mov dword [rsp + 0x168], eax
mov dword [rsp + 0x38], 0
jmp 0x1803b07c0
mov eax, dword [rsp + 0x38]
inc eax
mov dword [rsp + 0x38], eax
mov eax, dword [rsp + 0x180]
cmp dword [rsp + 0x38], eax
jge 0x1803b15eb
mov dword [rsp + 0x104], 0
movsxd rax, dword [rsp + 0x38]
imul rax, rax, 0x50
mov rcx, qword [rsp + 0x178]
mov eax, dword [rcx + rax]
mov dword [rsp + 0x40], eax
movsxd rax, dword [rsp + 0x38]
imul rax, rax, 0x50
mov rcx, qword [rsp + 0x178]
mov eax, dword [rcx + rax + 0x10]
mov dword [rsp + 0xc4], eax
movsxd rax, dword [rsp + 0x38]
imul rax, rax, 0x50
mov rcx, qword [rsp + 0x178]
mov rax, qword [rcx + rax + 8]
mov qword [rsp + 0x140], rax
cmp dword [rsp + 0x3c], 0
jne 0x1803b0852
movsxd rax, dword [rsp + 0x38]
imul rax, rax, 0x50
mov rcx, qword [rsp + 0x178]
cmp dword [rcx + rax + 0x14], 1
jne 0x1803b0852
jmp 0x1803b07b6
cmp dword [rsp + 0x40], 0
jne 0x1803b085e
jmp 0x1803b15eb
cmp qword [rsp + 0x170], 0
je 0x1803b088b
mov rax, qword [rsp + 0x170]
cmp dword [rax + 0x20], 0
jne 0x1803b088b
cmp dword [rsp + 0x38], 0
je 0x1803b088b
mov dword [rsp + 0x30], reloc.WS2_32.dll_sendto
jmp 0x1803b16d2
mov eax, dword [rsp + 0x40]
mov dword [rsp + 0x148], eax
cmp dword [rsp + 0x148], 0xd
je 0x1803b08c0
cmp dword [rsp + 0x148], 0xe
je 0x1803b08c0
cmp dword [rsp + 0x148], 0xf
je 0x1803b08c0
cmp dword [rsp + 0x148], 0x13
je 0x1803b08c0
jmp 0x1803b08c2
jmp 0x1803b0904
mov eax, dword [rsp + 0x188]
and eax, 2
cmp eax, 2
jne 0x1803b0904
cmp dword [rsp + 0x168], 0
jbe 0x1803b0904
mov eax, dword [rsp + 0xd4]
mov rcx, qword [rsp + 0x160]
movzx eax, byte [rcx + rax]
and eax, 0xe0
test eax, eax
je 0x1803b0904
mov dword [rsp + 0x30], reloc.WS2_32.dll_sendto
jmp 0x1803b16d2
mov eax, dword [rsp + 0x40]
mov dword [rsp + 0x14c], eax
cmp dword [rsp + 0x14c], 0x13
ja case.default.0x1803b0936
movsxd rax, dword [rsp + 0x14c]
lea rcx, [0x180000000]
mov eax, dword [rcx + rax*4 + 0x3b1710]
add rax, rcx
jmp rax
mov eax, dword [rsp + 0x168]
mov dword [rsp + 0x104], eax
mov eax, dword [rsp + 0xd4]
mov rcx, qword [rsp + 0x160]
add rcx, rax
mov rax, rcx
mov r8, qword [rsp + 0x140]
mov edx, dword [rsp + 0x104]
mov rcx, rax
call fcn.1803b61d0
mov dword [rsp + 0x30], eax
cmp dword [rsp + 0x30], 0
je 0x1803b09a6
cmp dword [rsp + 0x3c], 0
je 0x1803b099c
movsxd rax, dword [rsp + 0x38]
imul rax, rax, 0x50
mov rcx, qword [rsp + 0x178]
cmp dword [rcx + rax + 0x18], 0
je 0x1803b09a1
jmp 0x1803b07b6
jmp 0x1803b16d2
lea rcx, [rsp + 0x104]
call fcn.1803b6170
mov dword [rsp + 0x30], eax
cmp dword [rsp + 0x30], 0
je 0x1803b09c3
jmp 0x1803b16d2
jmp case.default.0x1803b0936
mov eax, dword [rsp + 0x168]
mov dword [rsp + 0x104], eax
mov eax, dword [rsp + 0xd4]
mov rcx, qword [rsp + 0x160]
add rcx, rax
mov rax, rcx
mov r8, qword [rsp + 0x140]
mov edx, dword [rsp + 0x104]
mov rcx, rax
call fcn.1803b62f0
mov dword [rsp + 0x30], eax
cmp dword [rsp + 0x30], 0
je 0x1803b0a36
cmp dword [rsp + 0x3c], 0
je 0x1803b0a2c
movsxd rax, dword [rsp + 0x38]
imul rax, rax, 0x50
mov rcx, qword [rsp + 0x178]
cmp dword [rcx + rax + 0x18], 0
je 0x1803b0a31
jmp 0x1803b07b6
jmp 0x1803b16d2
lea rdx, [rsp + 0x104]
mov rcx, qword [rsp + 0x140]
call fcn.1803b6530
mov dword [rsp + 0x30], eax
cmp dword [rsp + 0x30], 0
je 0x1803b0a5b
jmp 0x1803b16d2
jmp case.default.0x1803b0936
mov eax, dword [rsp + 0x168]
mov dword [rsp + 0x104], eax
mov eax, dword [rsp + 0xd4]
mov rcx, qword [rsp + 0x160]
add rcx, rax
mov rax, rcx
mov r8, qword [rsp + 0x140]
mov edx, dword [rsp + 0x104]
mov rcx, rax
call fcn.1803b66f0
mov dword [rsp + 0x30], eax
cmp dword [rsp + 0x30], 0
je 0x1803b0ace
cmp dword [rsp + 0x3c], 0
je 0x1803b0ac4
movsxd rax, dword [rsp + 0x38]
imul rax, rax, 0x50
mov rcx, qword [rsp + 0x178]
cmp dword [rcx + rax + 0x18], 0
je 0x1803b0ac9
jmp 0x1803b07b6
jmp 0x1803b16d2
mov eax, 4
imul rax, rax, 0
lea rdx, [rsp + 0x104]
mov rcx, qword [rsp + 0x140]
mov ecx, dword [rcx + rax]
call fcn.1803b6860
mov dword [rsp + 0x30], eax
cmp dword [rsp + 0x30], 0
je 0x1803b0aff
jmp 0x1803b16d2
jmp case.default.0x1803b0936
mov eax, dword [rsp + 0x168]
mov dword [rsp + 0x104], eax
mov eax, dword [rsp + 0xd4]
mov rcx, qword [rsp + 0x160]
add rcx, rax
mov rax, rcx
lea r9, [rsp + 0xc4]
mov r8, qword [rsp + 0x140]
mov edx, dword [rsp + 0x104]
mov rcx, rax
call fcn.1803b6990
mov dword [rsp + 0x30], eax
cmp dword [rsp + 0x30], 0
je 0x1803b0b7a
cmp dword [rsp + 0x3c], 0
je 0x1803b0b70
movsxd rax, dword [rsp + 0x38]
imul rax, rax, 0x50
mov rcx, qword [rsp + 0x178]
cmp dword [rcx + rax + 0x18], 0
je 0x1803b0b75
jmp 0x1803b07b6
jmp 0x1803b16d2
movsxd rax, dword [rsp + 0x38]
imul rax, rax, 0x50
mov rcx, qword [rsp + 0x178]
mov edx, dword [rsp + 0xc4]
mov dword [rcx + rax + 0x10], edx
lea rdx, [rsp + 0x104]
mov ecx, dword [rsp + 0xc4]
call fcn.1803b6f60
mov dword [rsp + 0x30], eax
cmp dword [rsp + 0x30], 0
je 0x1803b0bba
jmp 0x1803b16d2
jmp case.default.0x1803b0936
mov eax, dword [rsp + 0x168]
mov dword [rsp + 0x104], eax
mov eax, dword [rsp + 0xd4]
mov rcx, qword [rsp + 0x160]
add rcx, rax
mov rax, rcx
lea r9, [rsp + 0xc4]
mov r8, qword [rsp + 0x140]
mov edx, dword [rsp + 0x104]
mov rcx, rax
call fcn.1803b6c00
mov dword [rsp + 0x30], eax
cmp dword [rsp + 0x30], 0
je 0x1803b0c35
cmp dword [rsp + 0x3c], 0
je 0x1803b0c2b
movsxd rax, dword [rsp + 0x38]
imul rax, rax, 0x50
mov rcx, qword [rsp + 0x178]
cmp dword [rcx + rax + 0x18], 0
je 0x1803b0c30
jmp 0x1803b07b6
jmp 0x1803b16d2
movsxd rax, dword [rsp + 0x38]
imul rax, rax, 0x50
mov rcx, qword [rsp + 0x178]
mov edx, dword [rsp + 0xc4]
mov dword [rcx + rax + 0x10], edx
lea rdx, [rsp + 0x104]
mov ecx, dword [rsp + 0xc4]
call fcn.1803b6f60
mov dword [rsp + 0x30], eax
cmp dword [rsp + 0x30], 0
je 0x1803b0c75
jmp 0x1803b16d2
jmp case.default.0x1803b0936
mov eax, dword [rsp + 0x168]
mov dword [rsp + 0x104], eax
mov eax, dword [rsp + 0xd4]
mov rcx, qword [rsp + 0x160]
add rcx, rax
mov rax, rcx
lea r9, [rsp + 0xc4]
mov r8, qword [rsp + 0x140]
mov edx, dword [rsp + 0x104]
mov rcx, rax
call fcn.1803b7040
mov dword [rsp + 0x30], eax
cmp dword [rsp + 0x30], 0
je 0x1803b0cf0
cmp dword [rsp + 0x3c], 0
je 0x1803b0ce6
movsxd rax, dword [rsp + 0x38]
imul rax, rax, 0x50
mov rcx, qword [rsp + 0x178]
cmp dword [rcx + rax + 0x18], 0
je 0x1803b0ceb
jmp 0x1803b07b6
jmp 0x1803b16d2
movsxd rax, dword [rsp + 0x38]
imul rax, rax, 0x50
mov rcx, qword [rsp + 0x178]
mov edx, dword [rsp + 0xc4]
mov dword [rcx + rax + 0x10], edx
lea rdx, [rsp + 0x104]
mov ecx, dword [rsp + 0xc4]
call fcn.1803b7260
mov dword [rsp + 0x30], eax
cmp dword [rsp + 0x30], 0
je 0x1803b0d30
jmp 0x1803b16d2
jmp case.default.0x1803b0936
cmp dword [rsp + 0x168], 2
jb 0x1803b0d72
mov eax, dword [rsp + 0xd4]
mov rcx, qword [rsp + 0x160]
movzx eax, byte [rcx + rax]
cmp eax, 5
jne 0x1803b0d72
mov eax, dword [rsp + 0xd4]
inc eax
mov eax, eax
mov rcx, qword [rsp + 0x160]
movzx eax, byte [rcx + rax]
test eax, eax
je 0x1803b0da3
cmp dword [rsp + 0x3c], 0
je 0x1803b0d91
movsxd rax, dword [rsp + 0x38]
imul rax, rax, 0x50
mov rcx, qword [rsp + 0x178]
cmp dword [rcx + rax + 0x18], 0
je 0x1803b0d96
jmp 0x1803b07b6
mov dword [rsp + 0x30], 7
jmp 0x1803b16d2
mov dword [rsp + 0x104], 2
jmp case.default.0x1803b0936
mov eax, dword [rsp + 0x168]
mov dword [rsp + 0x104], eax
mov eax, dword [rsp + 0xd4]
mov rcx, qword [rsp + 0x160]
add rcx, rax
mov rax, rcx
lea r9, [rsp + 0xc4]
mov r8, qword [rsp + 0x140]
mov edx, dword [rsp + 0x104]
mov rcx, rax
call fcn.1803b7310
mov dword [rsp + 0x30], eax
cmp dword [rsp + 0x30], 0
je 0x1803b0e29
cmp dword [rsp + 0x3c], 0
je 0x1803b0e1f
movsxd rax, dword [rsp + 0x38]
imul rax, rax, 0x50
mov rcx, qword [rsp + 0x178]
cmp dword [rcx + rax + 0x18], 0
je 0x1803b0e24
jmp 0x1803b07b6
jmp 0x1803b16d2
movsxd rax, dword [rsp + 0x38]
imul rax, rax, 0x50
mov rcx, qword [rsp + 0x178]
mov edx, dword [rsp + 0xc4]
mov dword [rcx + rax + 0x10], edx
lea r8, [rsp + 0x104]
mov edx, dword [rsp + 0xc4]
mov rcx, qword [rsp + 0x140]
call fcn.1803b7690
mov dword [rsp + 0x30], eax
cmp dword [rsp + 0x30], 0
je 0x1803b0e71
jmp 0x1803b16d2
jmp case.default.0x1803b0936
mov eax, dword [rsp + 0x168]
mov dword [rsp + 0x104], eax
mov eax, dword [rsp + 0xd4]
mov rcx, qword [rsp + 0x160]
add rcx, rax
mov rax, rcx
lea r9, [rsp + 0xc4]
mov r8, qword [rsp + 0x140]
mov edx, dword [rsp + 0x104]
mov rcx, rax
call fcn.1803b7d30
mov dword [rsp + 0x30], eax
cmp dword [rsp + 0x30], 0
je 0x1803b0eec
cmp dword [rsp + 0x3c], 0
je 0x1803b0ee2
movsxd rax, dword [rsp + 0x38]
imul rax, rax, 0x50
mov rcx, qword [rsp + 0x178]
cmp dword [rcx + rax + 0x18], 0
je 0x1803b0ee7
jmp 0x1803b07b6
jmp 0x1803b16d2
movsxd rax, dword [rsp + 0x38]
imul rax, rax, 0x50
mov rcx, qword [rsp + 0x178]
mov edx, dword [rsp + 0xc4]
mov dword [rcx + rax + 0x10], edx
lea r8, [rsp + 0x104]
mov edx, dword [rsp + 0xc4]
mov rcx, qword [rsp + 0x140]
call fcn.1803b7f70
mov dword [rsp + 0x30], eax
cmp dword [rsp + 0x30], 0
je 0x1803b0f34
jmp 0x1803b16d2
jmp case.default.0x1803b0936
mov eax, dword [rsp + 0x168]
mov dword [rsp + 0x104], eax
mov eax, dword [rsp + 0xd4]
mov rcx, qword [rsp + 0x160]
add rcx, rax
mov rax, rcx
lea r9, [rsp + 0xc4]
mov r8, qword [rsp + 0x140]
mov edx, dword [rsp + 0x104]
mov rcx, rax
call fcn.1803b78f0
mov dword [rsp + 0x30], eax
cmp dword [rsp + 0x30], 0
je 0x1803b0faf
cmp dword [rsp + 0x3c], 0
je 0x1803b0fa5
movsxd rax, dword [rsp + 0x38]
imul rax, rax, 0x50
mov rcx, qword [rsp + 0x178]
cmp dword [rcx + rax + 0x18], 0
je 0x1803b0faa
jmp 0x1803b07b6
jmp 0x1803b16d2
movsxd rax, dword [rsp + 0x38]
imul rax, rax, 0x50
mov rcx, qword [rsp + 0x178]
mov edx, dword [rsp + 0xc4]
mov dword [rcx + rax + 0x10], edx
lea r8, [rsp + 0x104]
mov edx, dword [rsp + 0xc4]
mov rcx, qword [rsp + 0x140]
call fcn.1803b7b30
mov dword [rsp + 0x30], eax
cmp dword [rsp + 0x30], 0
je 0x1803b0ff7
jmp 0x1803b16d2
jmp case.default.0x1803b0936
mov eax, dword [rsp + 0x168]
mov dword [rsp + 0x104], eax
mov eax, dword [rsp + 0xd4]
mov rcx, qword [rsp + 0x160]
add rcx, rax
mov rax, rcx
lea r9, [rsp + 0xc4]
mov r8, qword [rsp + 0x140]
mov edx, dword [rsp + 0x104]
mov rcx, rax
call fcn.1803b8170
mov dword [rsp + 0x30], eax
cmp dword [rsp + 0x30], 0
je 0x1803b1072
cmp dword [rsp + 0x3c], 0
je 0x1803b1068
movsxd rax, dword [rsp + 0x38]
imul rax, rax, 0x50
mov rcx, qword [rsp + 0x178]
cmp dword [rcx + rax + 0x18], 0
je 0x1803b106d
jmp 0x1803b07b6
jmp 0x1803b16d2
movsxd rax, dword [rsp + 0x38]
imul rax, rax, 0x50
mov rcx, qword [rsp + 0x178]
mov edx, dword [rsp + 0xc4]
mov dword [rcx + rax + 0x10], edx
lea r8, [rsp + 0x104]
mov edx, dword [rsp + 0xc4]
mov rcx, qword [rsp + 0x140]
call fcn.1803b83b0
mov dword [rsp + 0x30], eax
cmp dword [rsp + 0x30], 0
je 0x1803b10ba
jmp 0x1803b16d2
jmp case.default.0x1803b0936
mov eax, dword [rsp + 0x168]
mov dword [rsp + 0x104], eax
mov eax, dword [rsp + 0xd4]
mov rcx, qword [rsp + 0x160]
add rcx, rax
mov rax, rcx
lea r9, [rsp + 0xc4]
mov r8, qword [rsp + 0x140]
mov edx, dword [rsp + 0x104]
mov rcx, rax
call fcn.1803b85b0
mov dword [rsp + 0x30], eax
cmp dword [rsp + 0x30], 0
je 0x1803b1135
cmp dword [rsp + 0x3c], 0
je 0x1803b112b
movsxd rax, dword [rsp + 0x38]
imul rax, rax, 0x50
mov rcx, qword [rsp + 0x178]
cmp dword [rcx + rax + 0x18], 0
je 0x1803b1130
jmp 0x1803b07b6
jmp 0x1803b16d2
movsxd rax, dword [rsp + 0x38]
imul rax, rax, 0x50
mov rcx, qword [rsp + 0x178]
mov edx, dword [rsp + 0xc4]
mov dword [rcx + rax + 0x10], edx
lea r8, [rsp + 0x104]
mov edx, dword [rsp + 0xc4]
mov rcx, qword [rsp + 0x140]
call fcn.1803b8960
mov dword [rsp + 0x30], eax
cmp dword [rsp + 0x30], 0
je 0x1803b117d
jmp 0x1803b16d2
jmp case.default.0x1803b0936
mov eax, dword [rsp + 0x168]
mov dword [rsp + 0x104], eax
mov eax, dword [rsp + 0xd4]
mov rcx, qword [rsp + 0x160]
add rcx, rax
mov rax, rcx
mov r8, qword [rsp + 0x140]
lea rdx, [rsp + 0x104]
mov rcx, rax
call fcn.1803b9470
mov dword [rsp + 0x30], eax
cmp dword [rsp + 0x30], 0
je 0x1803b11f1
cmp dword [rsp + 0x3c], 0
je 0x1803b11e7
movsxd rax, dword [rsp + 0x38]
imul rax, rax, 0x50
mov rcx, qword [rsp + 0x178]
cmp dword [rcx + rax + 0x18], 0
je 0x1803b11ec
jmp 0x1803b07b6
jmp 0x1803b16d2
jmp case.default.0x1803b0936
mov eax, dword [rsp + 0x168]
mov dword [rsp + 0x104], eax
mov eax, dword [rsp + 0xd4]
mov rcx, qword [rsp + 0x160]
add rcx, rax
mov rax, rcx
mov r8, qword [rsp + 0x140]
lea rdx, [rsp + 0x104]
mov rcx, rax
call fcn.1803b9c30
mov dword [rsp + 0x30], eax
cmp dword [rsp + 0x30], 0
je 0x1803b1265
cmp dword [rsp + 0x3c], 0
je 0x1803b125b
movsxd rax, dword [rsp + 0x38]
imul rax, rax, 0x50
mov rcx, qword [rsp + 0x178]
cmp dword [rcx + rax + 0x18], 0
je 0x1803b1260
jmp 0x1803b07b6
jmp 0x1803b16d2
jmp case.default.0x1803b0936
mov eax, dword [rsp + 0x168]
mov dword [rsp + 0x104], eax
mov eax, dword [rsp + 0xd4]
mov rcx, qword [rsp + 0x160]
add rcx, rax
mov rax, rcx
mov dword [rsp + 0x20], 0
mov r9d, dword [rsp + 0xc4]
mov r8, qword [rsp + 0x140]
mov edx, dword [rsp + 0x104]
mov rcx, rax
call fcn.1803a7e90
mov dword [rsp + 0x30], eax
cmp dword [rsp + 0x30], 0
je 0x1803b12e8
cmp dword [rsp + 0x3c], 0
je 0x1803b12de
movsxd rax, dword [rsp + 0x38]
imul rax, rax, 0x50
mov rcx, qword [rsp + 0x178]
cmp dword [rcx + rax + 0x18], 0
je 0x1803b12e3
jmp 0x1803b07b6
jmp 0x1803b16d2
lea r8, [rsp + 0x104]
mov edx, dword [rsp + 0xc4]
mov rcx, qword [rsp + 0x140]
call fcn.1803b55b0
mov dword [rsp + 0x30], eax
cmp dword [rsp + 0x30], 0
je 0x1803b1314
jmp 0x1803b16d2
jmp case.default.0x1803b0936
cmp dword [rsp + 0x40], 0xf
jne 0x1803b133b
mov eax, dword [rsp + 0xd4]
mov rcx, qword [rsp + 0x160]
movzx eax, byte [rcx + rax]
and eax, 0x3f
cmp eax, 0x31
jne 0x1803b135d
cmp dword [rsp + 0x40], 0xd
jne 0x1803b136a
mov eax, dword [rsp + 0xd4]
mov rcx, qword [rsp + 0x160]
movzx eax, byte [rcx + rax]
and eax, 0x3f
cmp eax, 0x30
je 0x1803b136a
mov dword [rsp + 0x30], 7
jmp 0x1803b16d2
mov eax, dword [rsp + 0x168]
mov dword [rsp + 0x104], eax
mov eax, dword [rsp + 0xd4]
mov rcx, qword [rsp + 0x160]
add rcx, rax
mov rax, rcx
mov ecx, dword [rsp + 0x188]
mov dword [rsp + 0x20], ecx
mov r9d, dword [rsp + 0xc4]
mov r8, qword [rsp + 0x140]
mov edx, dword [rsp + 0x104]
mov rcx, rax
call fcn.1803a7e90
mov dword [rsp + 0x30], eax
cmp dword [rsp + 0x30], 0x15
jne 0x1803b13d2
mov dword [rsp + 0x34], 0x15
mov dword [rsp + 0x30], 0
cmp dword [rsp + 0x30], 0
je 0x1803b1402
cmp dword [rsp + 0x3c], 0
je 0x1803b13f8
movsxd rax, dword [rsp + 0x38]
imul rax, rax, 0x50
mov rcx, qword [rsp + 0x178]
cmp dword [rcx + rax + 0x18], 0
je 0x1803b13fd
jmp 0x1803b07b6
jmp 0x1803b16d2
lea r8, [rsp + 0x104]
mov edx, dword [rsp + 0xc4]
mov rcx, qword [rsp + 0x140]
call fcn.1803b55b0
mov dword [rsp + 0x30], eax
cmp dword [rsp + 0x30], 0
je 0x1803b142e
jmp 0x1803b16d2
jmp case.default.0x1803b0936
mov eax, dword [rsp + 0x168]
mov dword [rsp + 0x104], eax
movsxd rax, dword [rsp + 0x38]
imul rax, rax, 0x50
mov rcx, qword [rsp + 0x178]
add rcx, rax
mov rax, rcx
mov ecx, dword [rsp + 0xd4]
mov rdx, qword [rsp + 0x160]
add rdx, rcx
mov rcx, rdx
mov r8, rax
mov edx, dword [rsp + 0x104]
call fcn.1803b02c0
mov dword [rsp + 0x30], eax
cmp dword [rsp + 0x30], 0x15
jne 0x1803b1497
mov dword [rsp + 0x34], 0x15
mov dword [rsp + 0x30], 0
cmp dword [rsp + 0x30], 0
je 0x1803b14c7
cmp dword [rsp + 0x3c], 0
je 0x1803b14bd
movsxd rax, dword [rsp + 0x38]
imul rax, rax, 0x50
mov rcx, qword [rsp + 0x178]
cmp dword [rcx + rax + 0x18], 0
je 0x1803b14c2
jmp 0x1803b07b6
jmp 0x1803b16d2
movsxd rax, dword [rsp + 0x38]
imul rax, rax, 0x50
mov rcx, qword [rsp + 0x178]
add rcx, rax
mov rax, rcx
xor r8d, r8d
lea rdx, [rsp + 0x104]
mov rcx, rax
call fcn.1803b5b40
mov dword [rsp + 0x30], eax
cmp dword [rsp + 0x30], 0
je 0x1803b1501
jmp 0x1803b16d2
jmp case.default.0x1803b0936
mov eax, dword [rsp + 0x168]
mov dword [rsp + 0x104], eax
mov eax, dword [rsp + 0xd4]
mov rcx, qword [rsp + 0x160]
add rcx, rax
mov rax, rcx
mov r9d, dword [rsp + 0xc4]
mov r8, qword [rsp + 0x140]
lea rdx, [rsp + 0x104]
mov rcx, rax
call fcn.1803b8ad0
mov dword [rsp + 0x30], eax
cmp dword [rsp + 0x30], 0
je 0x1803b157d
cmp dword [rsp + 0x3c], 0
je 0x1803b1573
movsxd rax, dword [rsp + 0x38]
imul rax, rax, 0x50
mov rcx, qword [rsp + 0x178]
cmp dword [rcx + rax + 0x18], 0
je 0x1803b1578
jmp 0x1803b07b6
jmp 0x1803b16d2
jmp case.default.0x1803b0936
mov dword [rsp + 0x30], reloc.WS2_32.dll_recv
jmp 0x1803b16d2
mov eax, dword [rsp + 0x104]
mov ecx, dword [rsp + 0xd4]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0xd4], eax
mov eax, dword [rsp + 0x104]
mov ecx, dword [rsp + 0x168]
sub ecx, eax
mov eax, ecx
mov dword [rsp + 0x168], eax
movsxd rax, dword [rsp + 0x38]
imul rax, rax, 0x50
mov rcx, qword [rsp + 0x178]
mov dword [rcx + rax + 0x14], 1
cmp dword [rsp + 0x3c], 0
jne 0x1803b15e6
mov dword [rsp + 0x38], 0xffffffff
jmp 0x1803b07b6
mov dword [rsp + 0x38], 0
jmp 0x1803b15ff
mov eax, dword [rsp + 0x38]
inc eax
mov dword [rsp + 0x38], eax
mov eax, dword [rsp + 0x180]
cmp dword [rsp + 0x38], eax
jge 0x1803b164b
movsxd rax, dword [rsp + 0x38]
imul rax, rax, 0x50
mov rcx, qword [rsp + 0x178]
cmp dword [rcx + rax + 0x14], 0
jne 0x1803b1649
movsxd rax, dword [rsp + 0x38]
imul rax, rax, 0x50
mov rcx, qword [rsp + 0x178]
cmp dword [rcx + rax + 0x18], 0
jne 0x1803b1649
mov dword [rsp + 0x30], 7
jmp 0x1803b16d2
jmp 0x1803b15f5
mov eax, dword [rsp + 0xd4]
cmp dword [rsp + 0x124], eax
jne 0x1803b1676
cmp dword [rsp + 0x34], 0
jne 0x1803b1676
cmp dword [rsp + 0x168], 0
jne 0x1803b1676
mov dword [rsp + 0x30], 0
jmp 0x1803b16d2
mov eax, dword [rsp + 0xd4]
cmp dword [rsp + 0x124], eax
jne 0x1803b16a1
cmp dword [rsp + 0x34], 0x15
jne 0x1803b16a1
cmp dword [rsp + 0x168], 0
jne 0x1803b16a1
mov dword [rsp + 0x30], 0
jmp 0x1803b16d2
mov eax, dword [rsp + 0xd4]
cmp dword [rsp + 0x124], eax
je 0x1803b16ca
mov eax, dword [rsp + 0x188]
and eax, 2
cmp eax, 2
jne 0x1803b16ca
mov dword [rsp + 0x30], 7
jmp 0x1803b16d2
mov dword [rsp + 0x30], 0x15
cmp qword [rsp + 0x138], 0
je 0x1803b16eb
mov rcx, qword [rsp + 0x138]
call fcn.180298f10
nop
mov eax, dword [rsp + 0x30]
mov rdi, rax
mov rcx, rsp
lea rdx, reloc.WS2_32.dll_getpeername
call fcn.180278d80
mov rax, rdi
add rsp, 0x150
pop rdi
ret