Function at 0x18039bf70
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, [0x1805f5f20]
call fcn.1802647b0
mov qword [rsp + 0x138], 0
cmp qword [rsp + 0x160], 0
jne 0x18039bfe0
mov r8d, 0x36
lea rdx, [0x18058c3d0]
lea rcx, [0x18058c448]
call fcn.18038fcd0
xor eax, eax
test eax, eax
jne 0x18039bfbc
cmp dword [rsp + 0x168], 2
jae 0x18039bffa
mov eax, 7
jmp 0x18039d31c
mov dword [rsp + 0xd4], 0
cmp qword [rsp + 0x170], 0
jne 0x18039c089
cmp qword [rsp + 0x178], 0
jne 0x18039c034
mov r8d, 0x3f
lea rdx, str.I:ProgrammingRepos_cloned_shield_developmentdepslibtomcrypt_srcpk_asn1dercustom_typeder_decode_custom_type.c
lea rcx, [0x18058c4d8]
call fcn.18038fcd0
xor eax, eax
test eax, eax
jne 0x18039c010
mov eax, dword [rsp + 0xd4]
mov rcx, qword [rsp + 0x160]
movzx eax, byte [rcx + rax]
cmp eax, 0x30
je 0x18039c074
mov eax, dword [rsp + 0xd4]
mov rcx, qword [rsp + 0x160]
movzx eax, byte [rcx + rax]
cmp eax, 0x31
je 0x18039c074
mov eax, 7
jmp 0x18039d31c
mov eax, dword [rsp + 0xd4]
inc eax
mov dword [rsp + 0xd4], eax
jmp 0x18039c1d7
mov rax, qword [rsp + 0x170]
cmp dword [rax], 0x13
je 0x18039c0a0
mov eax, 7
jmp 0x18039d31c
mov rax, qword [rsp + 0x170]
cmp dword [rax + 0x20], 0
jne 0x18039c108
mov eax, dword [rsp + 0x168]
mov ecx, eax
call fcn.1802d3190
mov qword [rsp + 0x138], rax
cmp qword [rsp + 0x138], 0
jne 0x18039c0d9
mov eax, recv
jmp 0x18039d31c
mov eax, dword [rsp + 0x168]
mov r8d, eax
mov rdx, qword [rsp + 0x160]
mov rcx, qword [rsp + 0x138]
call fcn.1803d7370
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.1803a5fc0
mov dword [rsp + 0x30], eax
cmp dword [rsp + 0x30], 0
je 0x18039c140
jmp 0x18039d300
mov rax, qword [rsp + 0x170]
mov eax, dword [rax]
cmp dword [rsp + 0x60], eax
jne 0x18039c18b
mov rax, qword [rsp + 0x170]
mov eax, dword [rax + 0x1c]
cmp dword [rsp + 0x7c], eax
jne 0x18039c18b
mov rax, qword [rsp + 0x170]
mov eax, dword [rax + 0x20]
cmp dword [rsp + 0x80], eax
jne 0x18039c18b
mov rax, qword [rsp + 0x170]
mov rax, qword [rax + 0x28]
cmp qword [rsp + 0x88], rax
je 0x18039c198
mov dword [rsp + 0x30], 7
jmp 0x18039d300
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 0x18039c2bf
mov rax, qword [rsp + 0x170]
cmp dword [rax + 0x20], 0
jne 0x18039c2bf
mov rax, qword [rsp + 0x170]
mov ecx, dword [reloc.WS2_32.dll_sendto]
cmp dword [rax + 0x14], ecx
jae 0x18039c224
mov rax, qword [rsp + 0x170]
movsxd rax, dword [rax + 0x14]
lea rcx, [0x18050be70]
cmp dword [rcx + rax*4], 0xffffffff
jne 0x18039c231
mov dword [rsp + 0x30], 7
jmp 0x18039d300
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, [0x18050be70]
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 0x18039c32e
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.1803a6290
mov dword [rsp + 0x30], eax
cmp dword [rsp + 0x30], 0
je 0x18039c315
jmp 0x18039d300
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 0x18039c356
mov dword [rsp + 0x30], 7
jmp 0x18039d300
mov dword [rsp + 0x38], 0
jmp 0x18039c36a
mov eax, dword [rsp + 0x38]
inc eax
mov dword [rsp + 0x38], eax
mov eax, dword [rsp + 0x180]
cmp dword [rsp + 0x38], eax
jge 0x18039c392
movsxd rax, dword [rsp + 0x38]
imul rax, rax, 0x50
mov rcx, qword [rsp + 0x178]
mov dword [rcx + rax + 0x14], 0
jmp 0x18039c360
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 0x18039c3ee
mov eax, dword [rsp + 0x38]
inc eax
mov dword [rsp + 0x38], eax
mov eax, dword [rsp + 0x180]
cmp dword [rsp + 0x38], eax
jge 0x18039d219
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 0x18039c480
movsxd rax, dword [rsp + 0x38]
imul rax, rax, 0x50
mov rcx, qword [rsp + 0x178]
cmp dword [rcx + rax + 0x14], 1
jne 0x18039c480
jmp 0x18039c3e4
cmp dword [rsp + 0x40], 0
jne 0x18039c48c
jmp 0x18039d219
cmp qword [rsp + 0x170], 0
je 0x18039c4b9
mov rax, qword [rsp + 0x170]
cmp dword [rax + 0x20], 0
jne 0x18039c4b9
cmp dword [rsp + 0x38], 0
je 0x18039c4b9
mov dword [rsp + 0x30], reloc.WS2_32.dll_sendto
jmp 0x18039d300
mov eax, dword [rsp + 0x40]
mov dword [rsp + 0x148], eax
cmp dword [rsp + 0x148], 0xd
je 0x18039c4ee
cmp dword [rsp + 0x148], 0xe
je 0x18039c4ee
cmp dword [rsp + 0x148], 0xf
je 0x18039c4ee
cmp dword [rsp + 0x148], 0x13
je 0x18039c4ee
jmp 0x18039c4f0
jmp 0x18039c532
mov eax, dword [rsp + 0x188]
and eax, 2
cmp eax, 2
jne 0x18039c532
cmp dword [rsp + 0x168], 0
jbe 0x18039c532
mov eax, dword [rsp + 0xd4]
mov rcx, qword [rsp + 0x160]
movzx eax, byte [rcx + rax]
and eax, 0xe0
test eax, eax
je 0x18039c532
mov dword [rsp + 0x30], reloc.WS2_32.dll_sendto
jmp 0x18039d300
mov eax, dword [rsp + 0x40]
mov dword [rsp + 0x14c], eax
cmp dword [rsp + 0x14c], 0x13
ja case.default.0x18039c564
movsxd rax, dword [rsp + 0x14c]
lea rcx, [0x180000000]
mov eax, dword [rcx + rax*4 + 0x39d33c]
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.1803a1db0
mov dword [rsp + 0x30], eax
cmp dword [rsp + 0x30], 0
je 0x18039c5d4
cmp dword [rsp + 0x3c], 0
je 0x18039c5ca
movsxd rax, dword [rsp + 0x38]
imul rax, rax, 0x50
mov rcx, qword [rsp + 0x178]
cmp dword [rcx + rax + 0x18], 0
je 0x18039c5cf
jmp 0x18039c3e4
jmp 0x18039d300
lea rcx, [rsp + 0x104]
call fcn.1803a1d60
mov dword [rsp + 0x30], eax
cmp dword [rsp + 0x30], 0
je 0x18039c5f1
jmp 0x18039d300
jmp case.default.0x18039c564
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.1803a1ed0
mov dword [rsp + 0x30], eax
cmp dword [rsp + 0x30], 0
je 0x18039c664
cmp dword [rsp + 0x3c], 0
je 0x18039c65a
movsxd rax, dword [rsp + 0x38]
imul rax, rax, 0x50
mov rcx, qword [rsp + 0x178]
cmp dword [rcx + rax + 0x18], 0
je 0x18039c65f
jmp 0x18039c3e4
jmp 0x18039d300
lea rdx, [rsp + 0x104]
mov rcx, qword [rsp + 0x140]
call fcn.1803a2110
mov dword [rsp + 0x30], eax
cmp dword [rsp + 0x30], 0
je 0x18039c689
jmp 0x18039d300
jmp case.default.0x18039c564
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.1803a22d0
mov dword [rsp + 0x30], eax
cmp dword [rsp + 0x30], 0
je 0x18039c6fc
cmp dword [rsp + 0x3c], 0
je 0x18039c6f2
movsxd rax, dword [rsp + 0x38]
imul rax, rax, 0x50
mov rcx, qword [rsp + 0x178]
cmp dword [rcx + rax + 0x18], 0
je 0x18039c6f7
jmp 0x18039c3e4
jmp 0x18039d300
mov eax, 4
imul rax, rax, 0
lea rdx, [rsp + 0x104]
mov rcx, qword [rsp + 0x140]
mov ecx, dword [rcx + rax]
call fcn.1803a2440
mov dword [rsp + 0x30], eax
cmp dword [rsp + 0x30], 0
je 0x18039c72d
jmp 0x18039d300
jmp case.default.0x18039c564
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.1803a2560
mov dword [rsp + 0x30], eax
cmp dword [rsp + 0x30], 0
je 0x18039c7a8
cmp dword [rsp + 0x3c], 0
je 0x18039c79e
movsxd rax, dword [rsp + 0x38]
imul rax, rax, 0x50
mov rcx, qword [rsp + 0x178]
cmp dword [rcx + rax + 0x18], 0
je 0x18039c7a3
jmp 0x18039c3e4
jmp 0x18039d300
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.1803a2b30
mov dword [rsp + 0x30], eax
cmp dword [rsp + 0x30], 0
je 0x18039c7e8
jmp 0x18039d300
jmp case.default.0x18039c564
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.1803a27d0
mov dword [rsp + 0x30], eax
cmp dword [rsp + 0x30], 0
je 0x18039c863
cmp dword [rsp + 0x3c], 0
je 0x18039c859
movsxd rax, dword [rsp + 0x38]
imul rax, rax, 0x50
mov rcx, qword [rsp + 0x178]
cmp dword [rcx + rax + 0x18], 0
je 0x18039c85e
jmp 0x18039c3e4
jmp 0x18039d300
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.1803a2b30
mov dword [rsp + 0x30], eax
cmp dword [rsp + 0x30], 0
je 0x18039c8a3
jmp 0x18039d300
jmp case.default.0x18039c564
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.1803a2c10
mov dword [rsp + 0x30], eax
cmp dword [rsp + 0x30], 0
je 0x18039c91e
cmp dword [rsp + 0x3c], 0
je 0x18039c914
movsxd rax, dword [rsp + 0x38]
imul rax, rax, 0x50
mov rcx, qword [rsp + 0x178]
cmp dword [rcx + rax + 0x18], 0
je 0x18039c919
jmp 0x18039c3e4
jmp 0x18039d300
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.1803a2e20
mov dword [rsp + 0x30], eax
cmp dword [rsp + 0x30], 0
je 0x18039c95e
jmp 0x18039d300
jmp case.default.0x18039c564
cmp dword [rsp + 0x168], 2
jb 0x18039c9a0
mov eax, dword [rsp + 0xd4]
mov rcx, qword [rsp + 0x160]
movzx eax, byte [rcx + rax]
cmp eax, 5
jne 0x18039c9a0
mov eax, dword [rsp + 0xd4]
inc eax
mov eax, eax
mov rcx, qword [rsp + 0x160]
movzx eax, byte [rcx + rax]
test eax, eax
je 0x18039c9d1
cmp dword [rsp + 0x3c], 0
je 0x18039c9bf
movsxd rax, dword [rsp + 0x38]
imul rax, rax, 0x50
mov rcx, qword [rsp + 0x178]
cmp dword [rcx + rax + 0x18], 0
je 0x18039c9c4
jmp 0x18039c3e4
mov dword [rsp + 0x30], 7
jmp 0x18039d300
mov dword [rsp + 0x104], 2
jmp case.default.0x18039c564
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.1803a2ed0
mov dword [rsp + 0x30], eax
cmp dword [rsp + 0x30], 0
je 0x18039ca57
cmp dword [rsp + 0x3c], 0
je 0x18039ca4d
movsxd rax, dword [rsp + 0x38]
imul rax, rax, 0x50
mov rcx, qword [rsp + 0x178]
cmp dword [rcx + rax + 0x18], 0
je 0x18039ca52
jmp 0x18039c3e4
jmp 0x18039d300
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.1803a3250
mov dword [rsp + 0x30], eax
cmp dword [rsp + 0x30], 0
je 0x18039ca9f
jmp 0x18039d300
jmp case.default.0x18039c564
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.1803a38f0
mov dword [rsp + 0x30], eax
cmp dword [rsp + 0x30], 0
je 0x18039cb1a
cmp dword [rsp + 0x3c], 0
je 0x18039cb10
movsxd rax, dword [rsp + 0x38]
imul rax, rax, 0x50
mov rcx, qword [rsp + 0x178]
cmp dword [rcx + rax + 0x18], 0
je 0x18039cb15
jmp 0x18039c3e4
jmp 0x18039d300
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.1803a3b30
mov dword [rsp + 0x30], eax
cmp dword [rsp + 0x30], 0
je 0x18039cb62
jmp 0x18039d300
jmp case.default.0x18039c564
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.1803a34b0
mov dword [rsp + 0x30], eax
cmp dword [rsp + 0x30], 0
je 0x18039cbdd
cmp dword [rsp + 0x3c], 0
je 0x18039cbd3
movsxd rax, dword [rsp + 0x38]
imul rax, rax, 0x50
mov rcx, qword [rsp + 0x178]
cmp dword [rcx + rax + 0x18], 0
je 0x18039cbd8
jmp 0x18039c3e4
jmp 0x18039d300
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.1803a36f0
mov dword [rsp + 0x30], eax
cmp dword [rsp + 0x30], 0
je 0x18039cc25
jmp 0x18039d300
jmp case.default.0x18039c564
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.1803a3d30
mov dword [rsp + 0x30], eax
cmp dword [rsp + 0x30], 0
je 0x18039cca0
cmp dword [rsp + 0x3c], 0
je 0x18039cc96
movsxd rax, dword [rsp + 0x38]
imul rax, rax, 0x50
mov rcx, qword [rsp + 0x178]
cmp dword [rcx + rax + 0x18], 0
je 0x18039cc9b
jmp 0x18039c3e4
jmp 0x18039d300
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.1803a3f70
mov dword [rsp + 0x30], eax
cmp dword [rsp + 0x30], 0
je 0x18039cce8
jmp 0x18039d300
jmp case.default.0x18039c564
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.1803a4170
mov dword [rsp + 0x30], eax
cmp dword [rsp + 0x30], 0
je 0x18039cd63
cmp dword [rsp + 0x3c], 0
je 0x18039cd59
movsxd rax, dword [rsp + 0x38]
imul rax, rax, 0x50
mov rcx, qword [rsp + 0x178]
cmp dword [rcx + rax + 0x18], 0
je 0x18039cd5e
jmp 0x18039c3e4
jmp 0x18039d300
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.1803a4520
mov dword [rsp + 0x30], eax
cmp dword [rsp + 0x30], 0
je 0x18039cdab
jmp 0x18039d300
jmp case.default.0x18039c564
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.1803a5020
mov dword [rsp + 0x30], eax
cmp dword [rsp + 0x30], 0
je 0x18039ce1f
cmp dword [rsp + 0x3c], 0
je 0x18039ce15
movsxd rax, dword [rsp + 0x38]
imul rax, rax, 0x50
mov rcx, qword [rsp + 0x178]
cmp dword [rcx + rax + 0x18], 0
je 0x18039ce1a
jmp 0x18039c3e4
jmp 0x18039d300
jmp case.default.0x18039c564
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.1803a57e0
mov dword [rsp + 0x30], eax
cmp dword [rsp + 0x30], 0
je 0x18039ce93
cmp dword [rsp + 0x3c], 0
je 0x18039ce89
movsxd rax, dword [rsp + 0x38]
imul rax, rax, 0x50
mov rcx, qword [rsp + 0x178]
cmp dword [rcx + rax + 0x18], 0
je 0x18039ce8e
jmp 0x18039c3e4
jmp 0x18039d300
jmp case.default.0x18039c564
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.180393b10
mov dword [rsp + 0x30], eax
cmp dword [rsp + 0x30], 0
je 0x18039cf16
cmp dword [rsp + 0x3c], 0
je 0x18039cf0c
movsxd rax, dword [rsp + 0x38]
imul rax, rax, 0x50
mov rcx, qword [rsp + 0x178]
cmp dword [rcx + rax + 0x18], 0
je 0x18039cf11
jmp 0x18039c3e4
jmp 0x18039d300
lea r8, [rsp + 0x104]
mov edx, dword [rsp + 0xc4]
mov rcx, qword [rsp + 0x140]
call fcn.1803a11b0
mov dword [rsp + 0x30], eax
cmp dword [rsp + 0x30], 0
je 0x18039cf42
jmp 0x18039d300
jmp case.default.0x18039c564
cmp dword [rsp + 0x40], 0xf
jne 0x18039cf69
mov eax, dword [rsp + 0xd4]
mov rcx, qword [rsp + 0x160]
movzx eax, byte [rcx + rax]
and eax, 0x3f
cmp eax, 0x31
jne 0x18039cf8b
cmp dword [rsp + 0x40], 0xd
jne 0x18039cf98
mov eax, dword [rsp + 0xd4]
mov rcx, qword [rsp + 0x160]
movzx eax, byte [rcx + rax]
and eax, 0x3f
cmp eax, 0x30
je 0x18039cf98
mov dword [rsp + 0x30], 7
jmp 0x18039d300
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.180393b10
mov dword [rsp + 0x30], eax
cmp dword [rsp + 0x30], 0x15
jne 0x18039d000
mov dword [rsp + 0x34], 0x15
mov dword [rsp + 0x30], 0
cmp dword [rsp + 0x30], 0
je 0x18039d030
cmp dword [rsp + 0x3c], 0
je 0x18039d026
movsxd rax, dword [rsp + 0x38]
imul rax, rax, 0x50
mov rcx, qword [rsp + 0x178]
cmp dword [rcx + rax + 0x18], 0
je 0x18039d02b
jmp 0x18039c3e4
jmp 0x18039d300
lea r8, [rsp + 0x104]
mov edx, dword [rsp + 0xc4]
mov rcx, qword [rsp + 0x140]
call fcn.1803a11b0
mov dword [rsp + 0x30], eax
cmp dword [rsp + 0x30], 0
je 0x18039d05c
jmp 0x18039d300
jmp case.default.0x18039c564
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.18039bef0
mov dword [rsp + 0x30], eax
cmp dword [rsp + 0x30], 0x15
jne 0x18039d0c5
mov dword [rsp + 0x34], 0x15
mov dword [rsp + 0x30], 0
cmp dword [rsp + 0x30], 0
je 0x18039d0f5
cmp dword [rsp + 0x3c], 0
je 0x18039d0eb
movsxd rax, dword [rsp + 0x38]
imul rax, rax, 0x50
mov rcx, qword [rsp + 0x178]
cmp dword [rcx + rax + 0x18], 0
je 0x18039d0f0
jmp 0x18039c3e4
jmp 0x18039d300
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.1803a1730
mov dword [rsp + 0x30], eax
cmp dword [rsp + 0x30], 0
je 0x18039d12f
jmp 0x18039d300
jmp case.default.0x18039c564
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.1803a4690
mov dword [rsp + 0x30], eax
cmp dword [rsp + 0x30], 0
je 0x18039d1ab
cmp dword [rsp + 0x3c], 0
je 0x18039d1a1
movsxd rax, dword [rsp + 0x38]
imul rax, rax, 0x50
mov rcx, qword [rsp + 0x178]
cmp dword [rcx + rax + 0x18], 0
je 0x18039d1a6
jmp 0x18039c3e4
jmp 0x18039d300
jmp case.default.0x18039c564
mov dword [rsp + 0x30], reloc.WS2_32.dll_recv
jmp 0x18039d300
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 0x18039d214
mov dword [rsp + 0x38], 0xffffffff
jmp 0x18039c3e4
mov dword [rsp + 0x38], 0
jmp 0x18039d22d
mov eax, dword [rsp + 0x38]
inc eax
mov dword [rsp + 0x38], eax
mov eax, dword [rsp + 0x180]
cmp dword [rsp + 0x38], eax
jge 0x18039d279
movsxd rax, dword [rsp + 0x38]
imul rax, rax, 0x50
mov rcx, qword [rsp + 0x178]
cmp dword [rcx + rax + 0x14], 0
jne 0x18039d277
movsxd rax, dword [rsp + 0x38]
imul rax, rax, 0x50
mov rcx, qword [rsp + 0x178]
cmp dword [rcx + rax + 0x18], 0
jne 0x18039d277
mov dword [rsp + 0x30], 7
jmp 0x18039d300
jmp 0x18039d223
mov eax, dword [rsp + 0xd4]
cmp dword [rsp + 0x124], eax
jne 0x18039d2a4
cmp dword [rsp + 0x34], 0
jne 0x18039d2a4
cmp dword [rsp + 0x168], 0
jne 0x18039d2a4
mov dword [rsp + 0x30], 0
jmp 0x18039d300
mov eax, dword [rsp + 0xd4]
cmp dword [rsp + 0x124], eax
jne 0x18039d2cf
cmp dword [rsp + 0x34], 0x15
jne 0x18039d2cf
cmp dword [rsp + 0x168], 0
jne 0x18039d2cf
mov dword [rsp + 0x30], 0
jmp 0x18039d300
mov eax, dword [rsp + 0xd4]
cmp dword [rsp + 0x124], eax
je 0x18039d2f8
mov eax, dword [rsp + 0x188]
and eax, 2
cmp eax, 2
jne 0x18039d2f8
mov dword [rsp + 0x30], 7
jmp 0x18039d300
mov dword [rsp + 0x30], 0x15
cmp qword [rsp + 0x138], 0
je 0x18039d318
mov rcx, qword [rsp + 0x138]
call fcn.180285310
mov eax, dword [rsp + 0x30]
mov rdi, rax
mov rcx, rsp
lea rdx, reloc.WS2_32.dll_getpeername
call fcn.180264580
mov rax, rdi
add rsp, 0x150
pop rdi
ret