Function at 0x1800fda70
Capabilities:
Parse pe header
Resolve function by parsing pe exports

Disassembly:
mov dword [rsp + 0x18], r8d
mov qword [rsp + 0x10], rdx
push rbp
push rsi
push rdi
push r12
push r14
push r15
lea rbp, [rsp - 0x28]
sub rsp, 0x128
mov rdi, qword [rcx + 0x10]
xor r14d, r14d
mov r10, qword [rcx]
mov r12d, r8d
mov qword [rsp + 0x68], rdi
mov r15, rdx
mov dword [rbp + 0x60], r8d
mov rsi, rcx
mov dword [rbp + 0x78], r14d
mov dword [rsp + 0x40], r14d
mov qword [rsp + 0x58], r10
test rdi, rdi
jne 0x1800fdad1
xor eax, eax
add rsp, 0x128
pop r15
pop r14
pop r12
pop rdi
pop rsi
pop rbp
ret
mov qword [rsp + 0x120], rbx
mov qword [rsp + 0x118], r13
test r15, r15
je case.0x1800fdb18.101
movzx r13d, byte [rdx]
lea eax, [r13 - 0x13]
cmp eax, 0x8c
ja case.0x1800fdb18.21
lea rdx, [0x180000000]
cdqe
movzx eax, byte [rdx + rax + 0xfeb90]
mov ecx, dword [rdx + rax*4 + 0xfeb2c]
add rcx, rdx
jmp rcx
mov rcx, qword [r15 + 0x38]
movsx rax, word [r15 + 0x32]
shl rax, 5
add rax, qword [rcx + 0x20]
cmp byte [rcx], r14b
jne 0x1800fdb39
mov r11d, dword [rax + 0x14]
jmp 0x1800fdcc4
cmp byte [rcx + 1], r14b
je case.0x1800fdb18.152
mov r8d, dword [rcx + 8]
mov edx, 0x2f
mov r9d, dword [rax + 0x10]
mov rcx, rdi
mov dword [rsp + 0x20], r12d
call fcn.1801355a0
jmp 0x1800fdcc1
mov r9d, dword [r15 + 0x2c]
test r9d, r9d
jns 0x1800fdb7f
mov eax, dword [rsi + 0x70]
test eax, eax
jle 0x1800fdb7b
movsx r11d, word [r15 + 0x30]
add r11d, eax
jmp 0x1800fdcc4
mov r9d, dword [rsi + 0x74]
movzx eax, byte [r15 + 0x36]
mov rcx, rsi
movsx r8d, word [r15 + 0x30]
mov rdx, qword [r15 + 0x40]
mov byte [rsp + 0x28], al
mov dword [rsp + 0x20], r12d
call fcn.1800fcf40
mov r11d, eax
jmp 0x1800fdcc4
mov r9d, r12d
xor r8d, r8d
mov rdx, r15
mov rcx, rsi
call fcn.18007eb00
jmp 0x1800fdcc1
mov rdx, qword [r15 + 8]
mov r9d, r12d
xor r8d, r8d
mov rcx, rdi
call fcn.18007edd0
jmp 0x1800fdcc1
mov r8, qword [r15 + 8]
mov edx, r12d
mov rcx, rdi
call fcn.18013f590
jmp 0x1800fdcc1
mov rdx, qword [r15 + 8]
mov rsi, 0xffffffffffffffff
add rdx, 2
jne 0x1800fdbfd
mov eax, r14d
jmp 0x1800fdc0e
mov rax, rsi
inc rax
cmp byte [rdx + rax], r14b
jne 0x1800fdc00
and eax, 0x3fffffff
mov rcx, qword [rdi]
lea ebx, [rax - 1]
mov r8d, ebx
call fcn.180118a00
mov rcx, qword [rdi + 0x30]
mov r15, rax
mov eax, ebx
cdq
sub eax, edx
movsxd rdx, dword [rdi + 0x3c]
sar eax, 1
mov r8d, eax
cmp dword [rcx + 0x64], edx
jg 0x1800fdc4f
mov r9d, r12d
mov dword [rsp + 0x20], r14d
mov edx, 0x1b
mov rcx, rdi
call fcn.1800cfb00
mov edx, eax
jmp 0x1800fdc7c
lea rcx, [rdx + rdx*2]
lea eax, [rdx + 1]
mov dword [rdi + 0x3c], eax
mov rax, qword [rdi + 8]
mov word [rax + rcx*8], 0x1b
mov byte [rax + rcx*8 + 3], r14b
mov dword [rax + rcx*8 + 4], r8d
mov dword [rax + rcx*8 + 8], r12d
mov dword [rax + rcx*8 + 0xc], r14d
mov qword [rax + rcx*8 + 0x10], r14
mov rcx, qword [rdi]
cmp byte [rcx + 0x55], r14b
je 0x1800fdc94
test r15, r15
je 0x1800fdcc1
mov rdx, r15
call fcn.1800f83c0
jmp 0x1800fdcc1
test edx, edx
jns 0x1800fdc9d
mov edx, dword [rdi + 0x3c]
dec edx
movsxd rax, edx
lea rcx, [rax + rax*2]
mov rax, qword [rdi + 8]
cmp byte [rax + rcx*8 + 1], r14b
lea rdx, [rax + rcx*8]
je 0x1800fdce8
mov r9d, esi
mov r8, r15
mov rcx, rdi
call fcn.18014e490
mov r11d, r12d
mov eax, r11d
mov rbx, qword [rsp + 0x120]
mov r13, qword [rsp + 0x118]
add rsp, 0x128
pop r15
pop r14
pop r12
pop rdi
pop rsi
pop rbp
ret
mov r11d, r12d
test r15, r15
je 0x1800fdcc4
mov qword [rdx + 0x10], r15
mov byte [rdx + 1], sil
jmp 0x1800fdcc4
movsx r8d, word [r15 + 0x30]
mov r9d, r12d
mov edx, 0x1c
mov rcx, rdi
call fcn.180135530
mov rax, qword [r15 + 8]
cmp byte [rax + 1], r14b
je 0x1800fdcc1
mov rax, qword [rsi + 0x210]
movsx rcx, word [r15 + 0x30]
mov r8, qword [rax + rcx*8 - 8]
mov rax, qword [rdi]
cmp byte [rax + 0x55], r14b
jne 0x1800fdcc1
movsxd rax, dword [rdi + 0x3c]
lea rdx, [rax + rax*2]
mov rax, qword [rdi + 8]
lea rdx, [rdx - 3]
cmp byte [rax + rdx*8 + 1], r14b
lea rdx, [rax + rdx*8]
je 0x1800fdd59
mov r9d, 0xfffffffe
jmp 0x1800fdcb9
mov r11d, r12d
test r8, r8
je 0x1800fdcc4
mov qword [rdx + 0x10], r8
mov byte [rdx + 1], 0xfe
jmp 0x1800fdcc4
mov r11d, dword [r15 + 0x2c]
jmp 0x1800fdcc4
mov rdx, qword [r15 + 0x10]
mov rcx, rsi
call fcn.1800fda70
mov dword [rbp + 0x60], eax
cmp eax, r12d
je 0x1800fdda6
mov r9d, r12d
mov r8d, eax
mov edx, 0x1f
mov rcx, rdi
call fcn.180135530
mov dword [rbp + 0x60], r12d
mov rcx, qword [r15 + 8]
xor edx, edx
call fcn.1800ec700
movsx r9d, al
mov r8d, r12d
mov edx, 0x28
mov rcx, rdi
call fcn.180135530
mov r11d, dword [rbp + 0x60]
mov r8d, 1
mov edx, r11d
mov rcx, rsi
call fcn.1800fc570
jmp 0x1800fdcc4
mov rdx, qword [r15 + 0x10]
lea r8, [rbp + 0x78]
mov rcx, rsi
call fcn.1800fec20
mov rdx, qword [r15 + 0x18]
lea r8, [rsp + 0x40]
mov rcx, rsi
mov ebx, eax
call fcn.1800fec20
mov r9d, r13d
mov dword [rsp + 0x38], 0x20
mov r8, qword [r15 + 0x18]
mov rcx, rsi
mov rdx, qword [r15 + 0x10]
mov dword [rsp + 0x30], r12d
mov dword [rsp + 0x28], eax
mov dword [rsp + 0x20], ebx
call fcn.18007e390
jmp 0x1800fe715
mov rdx, qword [r15 + 0x10]
lea r8, [rbp + 0x78]
mov rcx, rsi
call fcn.1800fec20
mov rdx, qword [r15 + 0x18]
lea r8, [rsp + 0x40]
mov rcx, rsi
mov ebx, eax
call fcn.1800fec20
cmp r13d, 0x49
mov dword [rsp + 0x38], 0xa0
mov r9d, r14d
sete r9b
add r9d, 0x4e
jmp 0x1800fde0d
mov rdx, qword [r15 + 0x10]
lea r8, [rbp + 0x78]
mov rcx, rsi
call fcn.1800fec20
mov rdx, qword [r15 + 0x18]
lea r8, [rsp + 0x40]
mov rcx, rsi
mov ebx, eax
call fcn.1800fec20
mov r9d, ebx
mov dword [rsp + 0x20], r12d
mov r8d, eax
mov edx, r13d
mov rcx, rdi
call fcn.1801355a0
jmp 0x1800fe715
mov rdx, qword [r15 + 0x10]
movzx eax, byte [rdx]
cmp al, 0x84
jne 0x1800fdeca
mov r9d, r12d
mov r8d, 1
mov rcx, rsi
call fcn.18007eb00
jmp 0x1800fe715
cmp al, 0x85
jne 0x1800fdee8
mov rdx, qword [rdx + 8]
mov r9d, r12d
mov r8d, 1
mov rcx, rdi
call fcn.18007edd0
jmp 0x1800fe715
lea r8, [rbp + 0x78]
mov byte [rsp + 0x70], 0x84
lea rdx, [rsp + 0x70]
mov qword [rsp + 0x74], 0x4400
mov rcx, rsi
call fcn.1800fec20
mov rdx, qword [r15 + 0x10]
lea r8, [rsp + 0x40]
mov rcx, rsi
mov ebx, eax
call fcn.1800fec20
mov r9d, ebx
mov dword [rsp + 0x20], r12d
mov r8d, eax
mov edx, 0x5a
mov rcx, rdi
call fcn.1801355a0
jmp 0x1800fe715
mov rdx, qword [r15 + 0x10]
lea r8, [rbp + 0x78]
mov rcx, rsi
call fcn.1800fec20
mov r9d, r12d
mov r8d, eax
mov edx, r13d
mov rcx, rdi
call fcn.180135530
jmp 0x1800fe715
mov edx, socket
mov r9d, r12d
mov rcx, rdi
lea r8d, [rdx - 0x15]
call fcn.180135530
mov rdx, qword [r15 + 0x10]
lea r8, [rbp + 0x78]
mov rcx, rsi
call fcn.1800fec20
mov r8d, eax
mov edx, r13d
mov rcx, rdi
call fcn.1801354c0
xor r8d, r8d
mov r9d, r12d
mov rcx, rdi
mov ebx, eax
lea edx, [r8 + 0x16]
call fcn.180135530
mov edx, ebx
mov rcx, rdi
call fcn.18013f0c0
jmp 0x1800fe715
mov rdx, qword [r15 + 0x38]
test rdx, rdx
jne 0x1800fdfd3
mov r8, qword [r15 + 8]
lea rdx, str.misuse_of_aggregate:__s__
mov rcx, rsi
call fcn.1800fb3f0
jmp 0x1800fdcc1
movsx rax, word [r15 + 0x32]
lea rcx, [rax + rax*2]
mov rax, qword [rdx + 0x30]
mov r11d, dword [rax + rcx*8 + 0x10]
jmp 0x1800fdcc4
test dword [r15 + 4], 0x4000
mov dword [rbp + 0x78], r14d
mov qword [rsp + 0x50], r14
je 0x1800fe0b7
mov r13, r14
mov qword [rsp + 0x48], r14
mov ebx, r14d
mov rax, qword [r15 + 8]
mov r8d, ebx
movzx r9d, byte [r10 + 0x52]
mov rdx, rax
mov rcx, r10
mov qword [rsp + 0x60], rax
mov byte [rsp + 0x20], r14b
call fcn.180100890
mov qword [rsp + 0x40], rax
mov rdx, rax
test rax, rax
je 0x1800fe4ed
cmp qword [rax + 0x20], r14
jne 0x1800fe4ed
movzx eax, word [rax + 2]
bt ax, 9
jae 0x1800fe16d
mov rcx, rdi
call fcn.18013f640
mov rdx, qword [r13 + 8]
mov r8d, r12d
mov rcx, rsi
mov dword [rbp + 0x70], eax
mov r15d, eax
mov rdx, qword [rdx]
call fcn.1800fcab0
cmp ebx, 1
jle 0x1800fe13c
lea ecx, [rbx - 1]
mov r15d, 0x28
mov ebx, dword [rbp + 0x70]
mov qword [rbp + 0x78], rcx
mov rax, qword [rdi + 0x30]
movsxd rcx, dword [rdi + 0x3c]
cmp dword [rax + 0x64], ecx
jg 0x1800fe0d2
mov r9d, ebx
mov dword [rsp + 0x20], r14d
mov r8d, r12d
mov edx, 0x4d
mov rcx, rdi
call fcn.1800cfb00
jmp 0x1800fe0fe
mov r13, qword [r15 + 0x20]
mov qword [rsp + 0x48], r13
test r13, r13
je 0x1800fe009
mov ebx, dword [r13]
jmp 0x1800fe00c
lea eax, [rcx + 1]
mov dword [rdi + 0x3c], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [rdi + 8]
mov word [rax + rcx*8], 0x4d
mov byte [rax + rcx*8 + 3], r14b
mov dword [rax + rcx*8 + 4], r12d
mov dword [rax + rcx*8 + 8], ebx
mov dword [rax + rcx*8 + 0xc], r14d
mov qword [rax + rcx*8 + 0x10], r14
mov r8d, 1
mov edx, r12d
mov rcx, rsi
call fcn.1800fc570
inc dword [rsi + 0x78]
mov r8d, r12d
mov rdx, qword [r13 + 8]
mov rdx, qword [rdx + r15]
call fcn.1800fcab0
mov rcx, rsi
call fcn.1800fc310
add r15, 0x28
sub qword [rbp + 0x78], 1
jne 0x1800fe090
mov r15d, ebx
mov rdx, qword [rdi + 0x30]
mov r8, qword [rdx + 0x88]
test r8, r8
je 0x1800fe160
mov rsi, 0xffffffffffffffff
sub esi, r15d
mov eax, dword [rdi + 0x3c]
movsxd rcx, esi
mov dword [r8 + rcx*4], eax
mov eax, dword [rdi + 0x3c]
dec eax
mov dword [rdx + 0x6c], eax
jmp 0x1800fdcc1
bt ax, 0xa
jae 0x1800fe18e
mov rdx, qword [r13 + 8]
mov r8d, r12d
mov rcx, rsi
mov rdx, qword [rdx]
call fcn.1800fda70
mov r11d, eax
jmp 0x1800fdcc4
mov r13d, r14d
test ebx, ebx
jle 0x1800fe257
mov r12, qword [rsp + 0x48]
lea r8, [0x180086be0]
mov rdi, r14
lea r9, [0x1800e9c30]
mov r15d, r14d
cmp r13d, 0x20
jae 0x1800fe200
mov rax, qword [r12 + 8]
xorps xmm0, xmm0
movups xmmword [rbp - 0x20], xmm0
mov byte [rbp - 0x1c], 1
movups xmmword [rbp - 0x40], xmm0
mov rcx, qword [rdi + rax]
mov qword [rbp - 0x38], r8
mov dword [rbp - 0x18], r14d
movups xmmword [rbp - 0x30], xmm0
mov qword [rbp - 0x30], r9
test rcx, rcx
je 0x1800fe1fc
mov rdx, rcx
lea rcx, [rbp - 0x40]
call fcn.180155380
mov rdx, qword [rsp + 0x40]
cmp byte [rbp - 0x1c], r14b
je 0x1800fe200
bts r15d, r13d
test byte [rdx + 2], 0x20
je 0x1800fe228
cmp qword [rsp + 0x50], r14
jne 0x1800fe228
mov rdx, qword [r12 + 8]
mov rcx, rsi
mov rdx, qword [rdx + rdi]
call fcn.1800fedd0
mov rdx, qword [rsp + 0x40]
mov qword [rsp + 0x50], rax
inc r13d
lea r8, [0x180086be0]
add rdi, 0x28
lea r9, [0x1800e9c30]
cmp r13d, ebx
jl 0x1800fe1b2
mov rdi, qword [rsp + 0x68]
mov r12d, dword [rbp + 0x70]
mov dword [rbp + 0x78], r15d
mov r15, qword [rbp + 0x68]
mov rcx, qword [rsp + 0x48]
mov r13d, dword [rbp + 0x78]
test rcx, rcx
je 0x1800fe2e7
test r13d, r13d
jne 0x1800fe28f
mov r9d, dword [rsi + 0x48]
mov r8d, dword [rsi + 0x4c]
mov dword [rbp + 0x70], r8d
cmp ebx, r9d
jg 0x1800fe28f
lea eax, [r8 + rbx]
sub r9d, ebx
mov dword [rsi + 0x4c], eax
mov dword [rsi + 0x48], r9d
jmp 0x1800fe29f
mov eax, dword [rsi + 0x58]
lea r8d, [rax + 1]
add eax, ebx
mov dword [rsi + 0x58], eax
mov dword [rbp + 0x70], r8d
movzx r9d, word [rdx + 2]
test r9b, 0xc0
je 0x1800fe2c2
mov rax, qword [rcx + 8]
mov rdx, qword [rax]
movzx eax, byte [rdx]
add al, 0x68
test al, 0xfd
jne 0x1800fe2c2
and r9b, 0xc0
mov byte [rdx + 0x36], r9b
inc dword [rsi + 0x78]
mov rdx, rcx
mov rcx, rsi
mov byte [rsp + 0x20], 3
xor r9d, r9d
call fcn.1800fcc80
mov rcx, rsi
call fcn.1800fc310
mov rcx, qword [rsp + 0x48]
jmp 0x1800fe2eb
mov dword [rbp + 0x70], r14d
cmp ebx, 2
jl 0x1800fe316
test byte [r15 + 4], 0x80
je 0x1800fe31a
mov r9, qword [rcx + 8]
mov r9, qword [r9 + 0x28]
mov rdx, qword [rsp + 0x40]
mov r8d, ebx
mov rcx, qword [rsp + 0x58]
call fcn.180143620
mov r15, rax
jmp 0x1800fe328
test ebx, ebx
jle 0x1800fe323
mov r9, qword [rcx + 8]
mov r9, qword [r9]
jmp 0x1800fe2ff
mov r15, qword [rsp + 0x40]
test byte [r15 + 2], 0x20
je 0x1800fe3e7
cmp qword [rsp + 0x50], r14
jne 0x1800fe348
mov rax, qword [rsp + 0x58]
mov rax, qword [rax + 0x10]
mov qword [rsp + 0x50], rax
mov rax, qword [rdi + 0x30]
movsxd rdx, dword [rdi + 0x3c]
cmp dword [rax + 0x64], edx
jg 0x1800fe370
xor r9d, r9d
mov dword [rsp + 0x20], r14d
xor r8d, r8d
mov rcx, rdi
lea edx, [r9 + 0x22]
call fcn.1800cfb00
mov edx, eax
jmp 0x1800fe398
lea rcx, [rdx + rdx*2]
lea eax, [rdx + 1]
mov dword [rdi + 0x3c], eax
mov rax, qword [rdi + 8]
mov word [rax + rcx*8], 0x22
mov byte [rax + rcx*8 + 3], r14b
mov qword [rax + rcx*8 + 4], r14
mov dword [rax + rcx*8 + 0xc], r14d
mov qword [rax + rcx*8 + 0x10], r14
mov rax, qword [rdi]
cmp byte [rax + 0x55], r14b
jne 0x1800fe3e7
test edx, edx
jns 0x1800fe3aa
mov edx, dword [rdi + 0x3c]
dec edx
movsxd rax, edx
lea rcx, [rax + rax*2]
mov rax, qword [rdi + 8]
cmp byte [rax + rcx*8 + 1], r14b
lea rdx, [rax + rcx*8]
je 0x1800fe3d5
mov r8, qword [rsp + 0x50]
mov r9d, 0xfffffffc
mov rcx, rdi
call fcn.18014e490
jmp 0x1800fe3e7
mov rax, qword [rsp + 0x50]
test rax, rax
je 0x1800fe3e7
mov qword [rdx + 0x10], rax
mov byte [rdx + 1], 0xfc
mov rax, qword [rdi + 0x30]
movsxd rdx, dword [rdi + 0x3c]
cmp dword [rax + 0x64], edx
jg 0x1800fe414
mov r14d, dword [rbp + 0x70]
mov r8d, r13d
mov r9d, r14d
mov dword [rsp + 0x20], r12d
mov edx, 0x23
mov rcx, rdi
call fcn.1800cfb00
mov edx, eax
jmp 0x1800fe448
mov r8d, dword [rbp + 0x70]
lea rcx, [rdx + rdx*2]
lea eax, [rdx + 1]
mov dword [rdi + 0x3c], eax
mov rax, qword [rdi + 8]
mov byte [rax + rcx*8 + 3], r14b
mov qword [rax + rcx*8 + 0x10], r14
mov r14d, r8d
mov word [rax + rcx*8], 0x23
mov dword [rax + rcx*8 + 4], r13d
mov dword [rax + rcx*8 + 8], r8d
mov dword [rax + rcx*8 + 0xc], r12d
mov rcx, qword [rdi]
cmp byte [rcx + 0x55], 0
je 0x1800fe462
test byte [r15 + 2], 0x10
je 0x1800fe49c
mov rdx, r15
call fcn.1800f83c0
jmp 0x1800fe49c
test edx, edx
jns 0x1800fe46b
mov edx, dword [rdi + 0x3c]
dec edx
movsxd rax, edx
lea rcx, [rax + rax*2]
mov rax, qword [rdi + 8]
cmp byte [rax + rcx*8 + 1], 0
lea rdx, [rax + rcx*8]
je 0x1800fe494
mov r9d, 0xfffffffb
mov r8, r15
mov rcx, rdi
call fcn.18014e490
jmp 0x1800fe49c
mov qword [rdx + 0x10], r15
mov byte [rdx + 1], 0xfb
mov rax, qword [rdi]
cmp byte [rax + 0x55], 0
jne 0x1800fe4b5
movsxd rax, dword [rdi + 0x3c]
lea rcx, [rax + rax*2]
mov rax, qword [rdi + 8]
mov byte [rax + rcx*8 - 0x15], bl
test ebx, ebx
je 0x1800feb20
test r13d, r13d
jne 0x1800feb20
mov r8d, ebx
mov edx, r14d
mov rcx, rsi
call fcn.1800fc570
mov r11d, dword [rbp + 0x60]
cmp ebx, dword [rsi + 0x48]
jle 0x1800fdcc4
mov dword [rsi + 0x48], ebx
mov dword [rsi + 0x4c], r14d
jmp 0x1800fdcc4
mov r8, qword [rsp + 0x60]
lea rdx, str.unknown_function:__s__
mov rcx, rsi
call fcn.1800fb3f0
jmp 0x1800fdcc1
xor r9d, r9d
xor r8d, r8d
mov rdx, r15
mov rcx, rsi
call fcn.1800f4320
mov r11d, eax
jmp 0x1800fdcc4
mov rcx, rdi
call fcn.18013f640
mov rcx, rdi
mov ebx, eax
call fcn.18013f640
xor r8d, r8d
mov r9d, r12d
mov rcx, rdi
mov r14d, eax
lea edx, [r8 + 0x19]
call fcn.180135530
mov r9d, r14d
mov r8d, ebx
mov rdx, r15
mov rcx, rsi
call fcn.1800fd270
mov edx, socket
mov r9d, r12d
mov rcx, rdi
lea r8d, [rdx - 0x15]
call fcn.180135530
mov r8, qword [rdi + 0x30]
mov rsi, 0xffffffffffffffff
mov rdx, qword [r8 + 0x88]
test rdx, rdx
je 0x1800fe58f
mov eax, esi
sub eax, ebx
movsxd rcx, eax
mov eax, dword [rdi + 0x3c]
mov dword [rdx + rcx*4], eax
mov eax, dword [rdi + 0x3c]
xor r9d, r9d
dec eax
mov rcx, rdi
mov dword [r8 + 0x6c], eax
mov r8d, r12d
lea edx, [r9 + 0x25]
call fcn.180135530
mov rdx, qword [rdi + 0x30]
mov r8, qword [rdx + 0x88]
test r8, r8
je 0x1800fe160
sub esi, r14d
jmp 0x1800fe156
mov rcx, qword [r15 + 0x10]
lea r8, [rbp + 0x78]
mov rax, qword [r15 + 0x20]
mov rdx, rcx
mov qword [rbp + 0x60], rcx
mov rcx, rsi
mov r13, qword [rax + 8]
mov rbx, qword [r13]
mov qword [rsp + 0x60], rbx
call fcn.1800fec20
lea r8, [rsp + 0x40]
mov dword [rbp + 0x70], eax
mov rdx, rbx
mov rcx, rsi
call fcn.1800fec20
movzx ecx, byte [rsi + 0x1f]
mov edx, eax
test cl, cl
jne 0x1800fe61a
inc dword [rsi + 0x58]
mov ebx, dword [rsi + 0x58]
inc dword [rsi + 0x58]
mov r15d, dword [rsi + 0x58]
jmp 0x1800fe63f
sub cl, 1
movzx eax, cl
mov byte [rsi + 0x1f], al
mov ebx, dword [rsi + rax*4 + 0x28]
jne 0x1800fe632
inc dword [rsi + 0x58]
mov r15d, dword [rsi + 0x58]
jmp 0x1800fe63f
dec al
movzx eax, al
mov byte [rsi + 0x1f], al
mov r15d, dword [rsi + rax*4 + 0x28]
mov eax, dword [rbp + 0x70]
mov r9d, 0x53
mov r8, qword [rsp + 0x60]
mov rcx, rsi
mov dword [rsp + 0x38], 0x20
mov dword [rsp + 0x30], ebx
mov dword [rsp + 0x28], edx
mov rdx, qword [rbp + 0x60]
mov dword [rsp + 0x20], eax
call fcn.18007e390
mov edx, dword [rsp + 0x40]
mov r13, qword [r13 + 0x28]
test edx, edx
je 0x1800fe6ae
movzx r8d, byte [rsi + 0x1f]
cmp r8b, 8
jae 0x1800fe6ae
mov ecx, r14d
lea rax, [rsi + 0x90]
nop
cmp dword [rax + 0xc], edx
je 0x1800fe6aa
inc ecx
add rax, 0x14
cmp ecx, 0xa
jl 0x1800fe690
mov dword [rsi + r8*4 + 0x28], edx
inc byte [rsi + 0x1f]
jmp 0x1800fe6ae
mov byte [rax + 6], 1
lea r8, [rsp + 0x40]
mov rdx, r13
mov rcx, rsi
call fcn.1800fec20
mov rdx, qword [rbp + 0x60]
mov r9d, 0x51
mov dword [rsp + 0x38], 0x20
mov r8, r13
mov dword [rsp + 0x30], r15d
mov rcx, rsi
mov dword [rsp + 0x28], eax
mov eax, dword [rbp + 0x70]
mov dword [rsp + 0x20], eax
call fcn.18007e390
mov r9d, r15d
mov dword [rsp + 0x20], r12d
mov r8d, ebx
mov edx, 0x48
mov rcx, rdi
call fcn.1801355a0
mov edx, ebx
mov rcx, rsi
call fcn.180128010
mov edx, r15d
call fcn.180128010
cmp dword [rbp + 0x78], r14d
je 0x1800fe751
movzx r8d, byte [rsi + 0x1f]
cmp r8b, 8
jae 0x1800fe751
mov ecx, r14d
lea rax, [rsi + 0x90]
mov edx, dword [rbp + 0x78]
cmp dword [rax + 0xc], edx
je 0x1800fe74d
inc ecx
add rax, 0x14
cmp ecx, 0xa
jl 0x1800fe730
mov dword [rsi + r8*4 + 0x28], edx
inc byte [rsi + 0x1f]
jmp 0x1800fe751
mov byte [rax + 6], 1
mov r11d, r12d
cmp dword [rsp + 0x40], r14d
je 0x1800fdcc4
movzx edx, byte [rsi + 0x1f]
cmp dl, 8
jae 0x1800fdcc4
lea rax, [rsi + 0x90]
mov ecx, dword [rsp + 0x40]
cmp dword [rax + 0xc], ecx
je 0x1800fe795
inc r14d
add rax, 0x14
cmp r14d, 0xa
jl 0x1800fe773
mov dword [rsi + rdx*4 + 0x28], ecx
inc byte [rsi + 0x1f]
jmp 0x1800fdcc4
mov byte [rax + 6], 1
jmp 0x1800fdcc4
mov rdx, qword [r15 + 0x10]
mov rcx, rsi
call fcn.1800fda70
mov r11d, eax
jmp 0x1800fdcc4
mov rbx, qword [r15 + 0x40]
mov r9d, r12d
movsx r8d, word [r15 + 0x30]
mov edx, 0x86
inc r8d
movsx ecx, word [rbx + 0x3e]
inc ecx
imul ecx, dword [r15 + 0x2c]
add r8d, ecx
mov rcx, rdi
call fcn.180135530
movsx rax, word [r15 + 0x30]
test ax, ax
js 0x1800fdcc1
mov rcx, rax
mov rax, qword [rbx + 8]
shl rcx, 5
cmp byte [rcx + rax + 0x19], 0x45
jne 0x1800fdcc1
mov r8d, r12d
mov edx, 0x27
mov rcx, rdi
call fcn.1801354c0
jmp 0x1800fdcc1
cmp qword [rsi + 0x1d0], r14
jne 0x1800fe834
lea rdx, str.RAISE___may_only_be_used_within_a_trigger_program
mov rcx, rsi
call fcn.1800fb3f0
xor eax, eax
jmp 0x1800fdcc7
movzx eax, byte [r15 + 1]
cmp al, 2
jne 0x1800fe857
mov rax, qword [rsi + 0x1c8]
mov rcx, rsi
test rax, rax
cmovne rcx, rax
mov byte [rcx + 0x21], 1
movzx eax, byte [r15 + 1]
mov r9, qword [r15 + 8]
cmp al, 4
jne 0x1800fe888
mov dword [rsp + 0x30], r14d
xor r8d, r8d
mov qword [rsp + 0x28], r9
mov rcx, rdi
mov r9d, 4
mov dword [rsp + 0x20], r14d
lea edx, [r9 + 0x11]
call fcn.180135610
jmp 0x1800fdcc1
movsx r8d, al
mov edx, 0x713
mov byte [rsp + 0x28], r14b
mov rcx, rsi
mov byte [rsp + 0x20], r14b
call fcn.180118600
jmp 0x1800fdcc1
mov rax, qword [r15 + 0x20]
mov rcx, rdi
mov qword [rsp + 0x68], rax
mov r13, qword [rax + 8]
mov eax, dword [rax]
mov dword [rsp + 0x40], eax
call fcn.18013f640
mov rdx, qword [r15 + 0x10]
mov ebx, eax
mov dword [rbp + 0x70], eax
mov qword [rsp + 0x58], rdx
test rdx, rdx
je 0x1800fe93c
movups xmm0, xmmword [rdx]
lea r8, [rbp + 0x78]
mov rcx, rsi
movaps xmmword [rsp + 0x70], xmm0
movups xmm1, xmmword [rdx + 0x10]
movaps xmmword [rbp - 0x80], xmm1
movups xmm0, xmmword [rdx + 0x20]
movaps xmmword [rbp - 0x70], xmm0
movups xmm1, xmmword [rdx + 0x30]
movaps xmmword [rbp - 0x60], xmm1
movsd xmm0, qword [rdx + 0x40]
movsd qword [rbp - 0x50], xmm0
call fcn.1800fec20
movzx ecx, byte [rsp + 0x70]
lea r8, [rbp - 0x40]
and dword [rsp + 0x74], 0xffffefff
mov rdx, qword [rsp + 0x58]
mov dword [rbp - 0x64], eax
lea rax, [rsp + 0x70]
mov qword [rbp - 0x30], rax
mov byte [rbp - 0x5a], cl
mov byte [rsp + 0x70], 0x9d
mov byte [rbp - 0x40], 0x4f
jmp 0x1800fe93f
mov r8, r14
movsxd rax, dword [rsp + 0x40]
dec rax
mov qword [rsp + 0x60], rax
test rax, rax
jle 0x1800fea64
mov r15d, dword [rbp + 0x70]
lea rbx, [rax - 1]
shr rbx, 1
inc rbx
nop dword [rax]
nop word [rax + rax]
inc dword [rsi + 0x78]
mov rcx, qword [r13]
test rdx, rdx
mov rax, qword [rbp - 0x28]
cmovne rax, rcx
cmove r8, rcx
mov rcx, rdi
mov qword [rbp - 0x28], rax
mov qword [rsp + 0x48], r8
call fcn.18013f640
mov rdx, qword [rsp + 0x48]
mov r9d, reloc.WS2_32.dll_recv
mov r8d, eax
mov dword [rbp + 0x78], eax
mov rcx, rsi
call fcn.1800ff280
mov rdx, qword [r13 + 0x28]
mov r8d, r12d
mov rcx, rsi
call fcn.1800fcab0
mov rcx, qword [rdi + 0x30]
movsxd rdx, dword [rdi + 0x3c]
cmp dword [rcx + 0x64], edx
jg 0x1800fe9e5
xor r8d, r8d
mov dword [rsp + 0x20], r14d
mov r9d, r15d
mov rcx, rdi
lea edx, [r8 + 0xd]
call fcn.1800cfb00
jmp 0x1800fea12
lea rcx, [rdx + rdx*2]
lea eax, [rdx + 1]
mov dword [rdi + 0x3c], eax
mov rax, qword [rdi + 8]
mov word [rax + rcx*8], select
mov byte [rax + rcx*8 + 3], r14b
mov dword [rax + rcx*8 + 4], r14d
mov dword [rax + rcx*8 + 8], r15d
mov dword [rax + rcx*8 + 0xc], r14d
mov qword [rax + rcx*8 + 0x10], r14
mov rcx, rsi
call fcn.1800fc310
mov r9, qword [rdi + 0x30]
mov rcx, qword [r9 + 0x88]
test rcx, rcx
je 0x1800fea3b
movsxd rax, dword [rbp + 0x78]
shl rax, 2
sub rcx, rax
mov eax, dword [rdi + 0x3c]
mov dword [rcx - 4], eax
mov eax, dword [rdi + 0x3c]
add r13, 0x50
mov rdx, qword [rsp + 0x58]
dec eax
mov r8, qword [rsp + 0x48]
mov dword [r9 + 0x6c], eax
sub rbx, 1
jne 0x1800fe970
mov rax, qword [rsp + 0x60]
mov ebx, r15d
test byte [rsp + 0x40], 1
je 0x1800fea94
inc dword [rsi + 0x78]
lea rax, [rax + rax*4]
mov rdx, qword [rsp + 0x68]
mov r8d, r12d
mov rcx, rsi
mov rdx, qword [rdx + 8]
mov rdx, qword [rdx + rax*8]
call fcn.1800fcab0
mov rcx, rsi
call fcn.1800fc310
jmp 0x1800feae7
mov rax, qword [rdi + 0x30]
movsxd rcx, dword [rdi + 0x3c]
cmp dword [rax + 0x64], ecx
jg 0x1800feaba
xor r8d, r8d
mov dword [rsp + 0x20], r14d
mov r9d, r12d
mov rcx, rdi
lea edx, [r8 + 0x19]
call fcn.1800cfb00
jmp 0x1800feae7
lea eax, [rcx + 1]
mov dword [rdi + 0x3c], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [rdi + 8]
mov word [rax + rcx*8], 0x19
mov byte [rax + rcx*8 + 3], r14b
mov dword [rax + rcx*8 + 4], r14d
mov dword [rax + rcx*8 + 8], r12d
mov dword [rax + rcx*8 + 0xc], r14d
mov qword [rax + rcx*8 + 0x10], r14
mov rdx, qword [rdi + 0x30]
mov r8, qword [rdx + 0x88]
test r8, r8
je 0x1800fe160
mov rsi, 0xffffffffffffffff
sub esi, ebx
jmp 0x1800fe156
xor r8d, r8d
mov r9d, r12d
mov rcx, rdi
lea edx, [r8 + 0x19]
call fcn.180135530
jmp 0x1800fdcc1
mov r11d, dword [rbp + 0x60]
jmp 0x1800fdcc4