Function at 0x1802a5ce0
Capabilities:
Encode data using base64
Encrypt data using speck
Parse credit card information

Disassembly:
mov qword [rsp + 0x20], r9
mov qword [rsp + 0x18], r8
push rbp
push rbx
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x28]
sub rsp, 0x128
mov rax, qword [r9]
xor edi, edi
mov rsi, qword [r9 + 0xe0]
mov r10d, edx
mov r8, qword [r9 + 0xe8]
mov r11, r9
mov r13, rcx
mov qword [rbp + 0x10], rdi
mov edx, dword [rax + 0x40]
mov ebx, edi
mov eax, r10d
mov qword [rbp + 8], rdi
mov r14, qword [r11 + 0x40]
mov r15d, r10d
shr eax, 0x13
mov ecx, edx
shr r15d, 2
and eax, 1
and r15d, 1
mov qword [rsp + 0x78], rbx
and ecx, 8
mov qword [rsp + 0x60], rsi
mov dword [rbp - 0x14], ecx
movzx r12d, di
mov qword [rbp - 0x20], r8
mov r9d, edi
mov dword [rbp - 0x60], edi
mov dword [rbp - 0x34], edi
mov dword [rbp - 0x38], edx
mov word [rbp + 0x78], di
mov dword [rbp - 0x48], edi
mov dword [rbp - 0x44], edi
mov dword [rsp + 0x68], edi
mov dword [rbp - 0x78], edi
mov dword [rsp + 0x54], edi
mov dword [rbp - 0x70], eax
mov dword [rbp - 0x30], r15d
mov dword [rsp + 0x58], edi
mov qword [rbp - 0x80], r14
mov qword [rbp + 0x18], rbx
je 0x1802a5d9b
mov dword [rsi], 0x80090000
jmp 0x1802a5da6
test dl, 4
je 0x1802a5db6
mov dword [rsi], 0x80180005
mov dword [rsi + 4], 0x801a0000
add rsi, 8
mov qword [rsp + 0x60], rsi
bt r10d, 0x19
jae 0x1802a5e92
cmp r13, r14
jae 0x1802a8ee6
mov ecx, 0xfc00
mov r9d, 0x10000
cmp rsi, r8
jae 0x1802a8f72
movzx edx, word [r13]
mov r8, r13
add r13, 2
test eax, eax
je 0x1802a5e1a
mov eax, edx
and eax, ecx
cmp eax, 0xd800
jne 0x1802a5e1a
movzx ecx, word [r13]
and edx, 0x3ff
mov eax, edx
and ecx, 0x3ff
shl eax, 0xa
mov edx, ecx
or edx, eax
add edx, r9d
add r13, 2
test r15d, r15d
je 0x1802a5e72
mov rcx, rsi
test rbx, rbx
je 0x1802a5e4a
mov rax, r8
sub rax, qword [r11 + 0x38]
sar rax, 1
sub eax, dword [rbx + 4]
mov dword [rbx + 8], eax
lea rax, [rsi - 0x10]
cmp rbx, rax
jne 0x1802a5e4a
mov eax, 0xff
cmp dword [rbx + 0xc], eax
je 0x1802a5e64
xor eax, eax
mov dword [rsi], 0x80060000
mov dword [rsi + 8], eax
lea rcx, [rsi + 0x10]
mov eax, 0xff
mov rbx, rsi
mov dword [rsi + 0xc], eax
sub r8, qword [r11 + 0x38]
mov rsi, rcx
sar r8, 1
mov dword [rbx + 4], r8d
mov eax, dword [rbp - 0x70]
mov ecx, 0xfc00
mov r8, qword [rbp - 0x20]
mov dword [rsi], edx
add rsi, 4
cmp r13, r14
jb 0x1802a5dd5
jmp 0x1802a8ee3
mov r8, qword [r11 + 0x50]
xor eax, eax
mov qword [rbp - 0x50], rax
add r8, r8
mov rcx, r8
movabs rax, 0xaaaaaaaaaaaaaaab
mul r8
shr rdx, 3
lea rax, [rdx + rdx*2]
movzx edx, bx
shl rax, 2
sub rcx, rax
mov rax, qword [r11 + 0x28]
sub rax, rcx
mov ecx, 0xfc00
add rax, r8
mov r8d, r10d
mov qword [rbp], rax
bts r8d, 7
mov eax, r10d
and eax, 0x1000000
cmove r8d, r10d
mov dword [rsp + 0x50], r8d
jmp case.default.0x1802a6b45
mov r13, qword [rsp + 0x70]
mov ecx, 0xfc00
jmp case.default.0x1802a6b45
mov r13, qword [rsp + 0x70]
jmp case.default.0x1802a6b45
mov rsi, qword [rsp + 0x60]
mov r14, qword [rbp - 0x80]
mov r8d, dword [rsp + 0x50]
movzx edx, word [rbp + 0x78]
jmp case.default.0x1802a6b45
mov ecx, r12d
nop word [rax + rax]
movzx r12d, dx
cmp r13, r14
jae 0x1802a8ec7
cmp rsi, qword [rbp - 0x20]
jae 0x1802a8f72
mov r10, qword [r11]
movzx eax, dx
cmp eax, dword [r10 + 0x3c]
ja 0x1802a8ebd
movzx r15d, word [r13]
mov rsi, r13
add r13, 2
mov dword [rbp - 0x68], r15d
cmp dword [rbp - 0x70], 0
mov edx, r15d
mov qword [rsp + 0x70], r13
mov r14, r13
mov qword [rbp + 0x70], r13
mov r9, r13
je 0x1802a5fb4
mov eax, r15d
and eax, ecx
cmp eax, 0xd800
jne 0x1802a5fb4
movzx eax, word [r13]
and r15d, 0x3ff
shl r15d, 0xa
and eax, 0x3ff
or eax, r15d
add r13, 2
mov qword [rsp + 0x70], r13
mov r14, r13
mov qword [rbp + 0x70], r13
mov r9, r13
lea r15d, [rax + 0x10000]
mov dword [rbp - 0x68], r15d
mov edx, r15d
cmp dword [rbp - 0x78], 0
je 0x1802a60df
cmp edx, 0x5c
jne 0x1802a5ff6
mov rbx, qword [rsp + 0x78]
cmp r14, qword [rbp - 0x80]
jae 0x1802a5ff6
cmp word [r13], 0x45
jne 0x1802a5ff6
mov rsi, qword [rsp + 0x60]
lea r13, [r14 + 2]
mov r14, qword [rbp - 0x80]
xor eax, eax
movzx edx, word [rbp + 0x78]
mov r9d, dword [rsp + 0x54]
mov dword [rbp - 0x78], eax
jmp case.default.0x1802a6b45
cmp dword [rbp - 0x44], 0
jg 0x1802a661b
mov r9d, dword [rsp + 0x54]
test r9d, r9d
je 0x1802a6014
mov rsi, qword [rsp + 0x60]
jmp 0x1802a60ba
mov ecx, dword [rbp - 0x48]
mov eax, ecx
dec ecx
mov dword [rbp - 0x48], ecx
test eax, eax
jg 0x1802a60aa
mov r9, qword [rsp + 0x60]
mov rcx, r9
test rbx, rbx
je 0x1802a6043
mov rax, rsi
sub rax, qword [r11 + 0x38]
sar rax, 1
sub eax, dword [rbx + 4]
mov dword [rbx + 8], eax
cmp dword [rbp - 0x30], 0
jne 0x1802a605c
mov r9d, dword [rsp + 0x54]
xor eax, eax
mov ebx, eax
mov qword [rsp + 0x78], rax
mov rsi, rcx
jmp 0x1802a60af
test rbx, rbx
je 0x1802a6074
lea rax, [r9 - 0x10]
cmp rbx, rax
jne 0x1802a6074
mov eax, 0xff
cmp dword [rbx + 0xc], eax
je 0x1802a6091
xor eax, eax
mov dword [r9], 0x80060000
mov dword [r9 + 8], eax
lea rcx, [r9 + 0x10]
mov eax, 0xff
mov rbx, r9
mov dword [r9 + 0xc], eax
sub rsi, qword [r11 + 0x38]
mov r9d, dword [rsp + 0x54]
sar rsi, 1
mov dword [rbx + 4], esi
mov rsi, rcx
mov qword [rsp + 0x78], rbx
jmp 0x1802a60af
mov rsi, qword [rsp + 0x60]
mov eax, 1
mov dword [rsp + 0x58], eax
mov edi, eax
mov r14, qword [rbp - 0x80]
xor eax, eax
mov dword [rsi], r15d
mov edx, eax
movzx edx, word [rbp + 0x78]
add rsi, 4
mov qword [rsp + 0x60], rsi
mov ecx, 0xfc00
mov dword [rbp - 0x60], eax
jmp case.default.0x1802a6b45
cmp dword [rsp + 0x54], 0
je 0x1802a6285
mov eax, r8d
and eax, 0x400080
cmp eax, 0x400080
jne 0x1802a6151
mov eax, 0xff
mov r8, r9
cmp edx, eax
jbe 0x1802a6118
mov eax, edx
or eax, 1
cmp eax, 0x200f
je 0x1802a6118
cmp eax, 0x2029
jne 0x1802a614c
mov r9, r8
cmp edx, 0x100
jae 0x1802a6285
cmp edx, 0x23
je 0x1802a6285
mov rax, qword [r11 + 0x20]
mov ecx, edx
test byte [rcx + rax], 1
jne 0x1802a6285
cmp edx, 0x85
je 0x1802a6285
mov r8d, dword [rsp + 0x50]
cmp edx, 0x29
je 0x1802a6218
mov r14, qword [rbp - 0x80]
cmp edx, 0x5c
je 0x1802a6187
mov rsi, qword [rsp + 0x60]
movzx edx, word [rbp + 0x78]
mov ecx, 0xfc00
mov r9d, dword [rsp + 0x54]
mov dword [rsi], r15d
add rsi, 4
mov qword [rsp + 0x60], rsi
jmp case.default.0x1802a6b45
xor eax, eax
bt r8d, 0x16
jae 0x1802a61df
mov qword [rsp + 0x38], r11
lea r9, [rsp + 0x68]
mov dword [rsp + 0x30], eax
lea rcx, [rbp + 0x70]
mov eax, dword [r10 + 0x40]
mov rdx, r14
mov dword [rsp + 0x28], eax
mov dword [rsp + 0x20], r8d
lea r8, [rbp - 0x68]
call fcn.18029f3c0
mov edx, dword [rsp + 0x68]
mov ecx, eax
test edx, edx
jne 0x1802a8e50
mov r13, qword [rbp + 0x70]
mov r15d, dword [rbp - 0x68]
mov r11, qword [rbp + 0x88]
mov r8d, dword [rsp + 0x50]
jmp 0x1802a61e1
mov ecx, eax
mov rsi, qword [rsp + 0x60]
test ecx, ecx
je 0x1802a6168
movzx edx, word [rbp + 0x78]
mov r9d, dword [rsp + 0x54]
sub ecx, 0x19
je 0x1802a5ef5
cmp ecx, 1
jne 0x1802a8ced
mov eax, ecx
mov dword [rbp - 0x78], ecx
mov ecx, 0xfc00
jmp case.default.0x1802a6b45
xor r12d, r12d
mov rax, r13
sub rax, qword [rbp + 0x18]
mov ecx, 0xffff
sar rax, 1
mov r9d, r12d
dec rax
mov dword [rsp + 0x54], r12d
cmp rax, rcx
jg 0x1802a8cf7
mov r15, qword [rbp + 0x10]
mov ecx, 0xfc00
mov rsi, qword [rsp + 0x60]
mov r10d, dword [rbp - 0x34]
mov rax, rsi
mov r14, qword [rbp - 0x80]
sub rax, r15
movzx edx, word [rbp + 0x78]
sar rax, 2
dec eax
mov dword [r15], eax
test r10d, r10d
je case.default.0x1802a6b45
mov dword [rsi], r10d
add rsi, 4
mov qword [rsp + 0x60], rsi
mov dword [rbp - 0x34], r12d
jmp case.default.0x1802a6b45
mov r10, qword [rbp - 0x80]
mov r8, r9
cmp edx, 0x5c
jne 0x1802a62c7
cmp r14, r10
jae 0x1802a62c7
movzx eax, word [r13]
cmp ax, 0x51
je 0x1802a62a7
cmp ax, 0x45
jne 0x1802a62c7
mov rsi, qword [rsp + 0x60]
lea r13, [r14 + 2]
xor r9d, r9d
mov r14, r10
cmp ax, 0x51
sete r9b
mov dword [rbp - 0x78], r9d
jmp 0x1802a8cd5
test byte [rsp + 0x50], 0x80
je 0x1802a6440
cmp edx, 0x100
jae 0x1802a62f4
mov rax, qword [r11 + 0x20]
mov r9d, dword [rsp + 0x54]
mov ecx, edx
test byte [rcx + rax], 1
mov ecx, 0xfc00
jne 0x1802a5f03
mov r9d, dword [rsp + 0x54]
mov ecx, 0xfc00
cmp edx, 0x85
je 0x1802a5f03
mov eax, edx
or eax, 1
cmp eax, 0x200f
je 0x1802a5f03
cmp eax, 0x2029
je 0x1802a5f03
cmp edx, 0x23
jne 0x1802a6440
mov r14, qword [rbp - 0x80]
mov rsi, qword [rsp + 0x60]
mov r8d, dword [rsp + 0x50]
movzx edx, word [rbp + 0x78]
cmp r13, r14
jae case.default.0x1802a6b45
mov r12d, ecx
nop dword [rax]
mov edx, dword [r11 + 0x100]
mov rcx, qword [r11 + 0x40]
test edx, edx
je 0x1802a63b8
cmp r13, rcx
jae 0x1802a63ee
mov eax, dword [rbp - 0x70]
lea rbx, [r11 + 0x104]
mov r8, rcx
mov dword [rsp + 0x20], eax
mov r9, rbx
mov rcx, r13
call fcn.1802de850
mov r11, qword [rbp + 0x88]
test eax, eax
je 0x1802a63ee
mov edx, dword [rbx]
mov rsi, qword [rsp + 0x60]
mov ecx, r12d
mov rbx, qword [rsp + 0x78]
mov r8d, dword [rsp + 0x50]
mov r9d, dword [rsp + 0x54]
mov eax, edx
movzx edx, word [rbp + 0x78]
lea r13, [r13 + rax*2]
jmp case.default.0x1802a6b45
mov edx, dword [r11 + 0x104]
imul rax, rdx, 0xfffffffffffffffe
add rax, rcx
cmp r13, rax
ja 0x1802a63ee
movzx eax, word [r11 + 0x110]
cmp word [r13], ax
jne 0x1802a63ee
cmp edx, 1
je 0x1802a6391
movzx eax, word [r11 + 0x112]
cmp word [r13 + 2], ax
je 0x1802a6391
add r13, 2
cmp dword [rbp - 0x70], 0
mov rcx, r13
je 0x1802a641a
cmp r13, r14
jae 0x1802a641a
movzx eax, word [r13]
mov edx, 0xdc00
and ax, r12w
cmp ax, dx
jne 0x1802a641a
add r13, 2
mov rcx, r13
mov rsi, qword [rsp + 0x60]
mov rbx, qword [rsp + 0x78]
mov r8d, dword [rsp + 0x50]
movzx edx, word [rbp + 0x78]
mov r9d, dword [rsp + 0x54]
cmp rcx, r14
jb 0x1802a6350
jmp 0x1802a5f17
cmp edx, 0x28
jne 0x1802a64b0
mov rax, r10
mov rdi, r8
sub rax, r13
and rax, 0xfffffffffffffffe
cmp rax, 4
jl 0x1802a6505
cmp word [r13], 0x3f
jne 0x1802a6505
cmp word [r13 + 2], 0x23
jne 0x1802a6505
mov r14, qword [rbp - 0x80]
nop dword [rax + rax]
add r13, 2
cmp r13, r14
jae 0x1802a8d05
cmp word [r13], 0x29
jne 0x1802a6480
cmp r13, r14
jae 0x1802a8d05
mov rsi, qword [rsp + 0x60]
add r13, 2
mov edi, dword [rsp + 0x58]
jmp 0x1802a8cd5
mov rbx, r8
cmp edx, 0x2a
je 0x1802a6629
cmp edx, 0x2b
je 0x1802a6629
cmp edx, 0x3f
je 0x1802a6629
mov rdi, r8
cmp edx, 0x7b
jne 0x1802a6505
lea rax, [rsp + 0x68]
mov qword [rbp - 0x28], r13
xor r9d, r9d
mov qword [rsp + 0x20], rax
xor r8d, r8d
lea rcx, [rbp - 0x28]
mov rdx, r10
call fcn.1802aacf0
test eax, eax
jne 0x1802a65ae
mov r11, qword [rbp + 0x88]
mov ecx, dword [rbp - 0x48]
mov rbx, rdi
mov r10, qword [rsp + 0x78]
mov eax, ecx
dec ecx
mov dword [rbp - 0x48], ecx
test eax, eax
jg 0x1802a65b3
mov r9, qword [rsp + 0x60]
mov rdx, r9
test r10, r10
je 0x1802a653e
mov rax, rsi
sub rax, qword [r11 + 0x38]
sar rax, 1
sub eax, dword [r10 + 4]
mov dword [r10 + 8], eax
cmp dword [rbp - 0x30], 0
jne 0x1802a6558
xor eax, eax
mov qword [rsp + 0x60], rdx
mov r10d, eax
mov qword [rsp + 0x78], rax
mov rsi, rdx
jmp 0x1802a65b8
mov rcx, rbx
test r10, r10
je 0x1802a6574
lea rax, [r9 - 0x10]
cmp r10, rax
jne 0x1802a6574
mov eax, 0xff
cmp dword [r10 + 0xc], eax
je 0x1802a6594
xor eax, eax
mov dword [r9], 0x80060000
mov dword [r9 + 8], eax
lea rdx, [r9 + 0x10]
mov eax, 0xff
mov r10, r9
mov dword [r9 + 0xc], eax
mov rbx, rcx
sub rsi, qword [r11 + 0x38]
sar rsi, 1
mov dword [r10 + 4], esi
mov rsi, rdx
mov qword [rsp + 0x78], r10
mov qword [rsp + 0x60], rdx
jmp 0x1802a65b8
mov r10, qword [rsp + 0x78]
mov rsi, qword [rsp + 0x60]
mov edi, dword [rsp + 0x58]
mov edx, dword [rbp - 0x44]
test edx, edx
jle 0x1802a6668
cmp r15d, 0x28
jne 0x1802a661b
mov r9, qword [rbp - 0x80]
mov rax, r9
sub rax, r13
and rax, 0xfffffffffffffffe
cmp rax, 6
jl 0x1802a661b
movzx eax, word [r13]
cmp ax, 0x3f
je 0x1802a65f2
cmp ax, 0x2a
jne 0x1802a661b
cmp ax, 0x2a
jne 0x1802a6635
movzx eax, word [r13 + 2]
mov ecx, 0xff
cmp ax, cx
ja 0x1802a661b
mov r11, qword [rbp + 0x88]
movzx ecx, ax
mov rax, qword [r11 + 0x20]
test byte [rcx + rax], 4
jne 0x1802a6673
lea r13, [r14 - 2]
mov edx, 0x80
jmp 0x1802a8f93
mov rsi, qword [rsp + 0x60]
mov r10, qword [rsp + 0x78]
jmp 0x1802a65bc
movzx ecx, word [r13 + 2]
sub ecx, 0x21
je 0x1802a666c
sub ecx, 0x1b
je 0x1802a6655
sub ecx, 1
je 0x1802a666c
cmp ecx, 6
jne 0x1802a661b
cmp edx, 2
jne 0x1802a661b
jmp 0x1802a666c
movzx eax, word [r13 + 4]
cmp ax, 0x3d
je 0x1802a666c
cmp ax, 0x21
jne 0x1802a661b
jmp 0x1802a666c
mov r9, qword [rbp - 0x80]
mov r11, qword [rbp + 0x88]
mov ecx, dword [rbp - 0x60]
xor r8d, r8d
mov dword [rbp - 0x44], r8d
mov r13d, edx
mov dword [rsp + 0x58], r8d
mov eax, ecx
mov dword [rbp - 0x60], r8d
mov edx, ecx
test ecx, ecx
je 0x1802a66d6
cmp r15d, 0x3f
je 0x1802a669d
cmp r15d, 0x2b
jne 0x1802a66d6
mov edi, dword [rsp + 0x58]
cmp r15d, 0x3f
mov ecx, 0x10000
mov r8d, 0x20000
cmove ecx, r8d
add ecx, eax
mov rax, 0xfffffffffffffffc
cmp edx, 0x803d0000
mov rdx, 0xfffffffffffffff4
cmove rax, rdx
mov dword [rax + rsi], ecx
jmp 0x1802a8cc7
lea eax, [r15 - 0x24]
cmp eax, 0x58
ja case.0x1802a66fc.37
lea rdx, [0x180000000]
movzx eax, byte [rdx + rax + 0x2a8ff4]
mov ecx, dword [rdx + rax*4 + 0x2a8fc0]
add rcx, rdx
jmp rcx
mov rax, qword [r11]
lea r9, [rsp + 0x68]
mov r14, qword [rbp - 0x80]
lea rcx, [rbp + 0x70]
mov rsi, qword [rsp + 0x70]
mov rdx, r14
mov qword [rsp + 0x38], r11
mov eax, dword [rax + 0x40]
mov dword [rsp + 0x30], r8d
lea r8, [rbp - 0x68]
mov dword [rsp + 0x28], eax
mov eax, dword [rsp + 0x50]
mov dword [rsp + 0x20], eax
mov qword [rbp - 0x28], rsi
call fcn.18029f3c0
mov edx, dword [rsp + 0x68]
mov edi, eax
mov r13, qword [rbp + 0x70]
mov r12d, 0xfc00
mov r15, qword [rbp + 0x88]
test edx, edx
jne 0x1802a6763
mov ecx, dword [rbp - 0x68]
xor r10d, r10d
jmp 0x1802a67c6
mov dword [rsp + 0x68], edx
test byte [rbp - 0x38], 2
je 0x1802a8f93
mov qword [rbp + 0x70], rsi
mov r13, rsi
cmp rsi, r14
jb 0x1802a6780
mov ecx, 0x5c
jmp 0x1802a67c0
cmp dword [rbp - 0x70], 0
lea r13, [rsi + 2]
movzx ecx, word [rsi]
mov qword [rbp + 0x70], r13
je 0x1802a67c0
mov eax, ecx
and eax, r12d
cmp eax, 0xd800
jne 0x1802a67c0
movzx eax, word [r13]
and ecx, 0x3ff
shl ecx, 0xa
and eax, 0x3ff
or ecx, eax
add ecx, 0x10000
add r13, 2
mov qword [rbp + 0x70], r13
xor r10d, r10d
mov edi, r10d
test edi, edi
je 0x1802a6c3a
js 0x1802a6bbf
lea eax, [rdi - 6]
cmp eax, 0x16
ja case.0x1802a67fb.13
lea rdx, [0x180000000]
cdqe
movzx eax, byte [rdx + rax + 0x2a9068]
mov ecx, dword [rdx + rax*4 + 0x2a9050]
add rcx, rdx
jmp rcx
mov r8d, dword [rsp + 0x50]
bt r8d, 0x14
jae 0x1802a697f
mov edx, 0xb7
jmp 0x1802a675f
lea rax, [rsp + 0x68]
mov qword [rsp + 0x28], r15
lea r9, [rbp - 0x68]
mov qword [rsp + 0x20], rax
lea r8, [rsp + 0x70]
mov word [rsp + 0x70], r10w
lea rdx, [rbp - 0x10]
mov word [rbp - 0x68], r10w
lea rcx, [rbp + 0x70]
call fcn.1802a5320
test eax, eax
jne 0x1802a69c1
mov r13, qword [rbp + 0x70]
mov edx, dword [rsp + 0x68]
jmp 0x1802a6763
cmp r13, r14
jae 0x1802a696a
movzx eax, word [r13]
cmp ax, 0x7b
je 0x1802a6880
cmp ax, 0x3c
je 0x1802a6886
cmp ax, 0x27
jne 0x1802a696a
cmp ax, 0x3c
jne 0x1802a688d
mov ebx, 0x3e
jmp 0x1802a689e
cmp ax, 0x27
mov ebx, 0x7d
mov eax, 0x27
cmove ebx, eax
cmp edi, 0x1b
jne 0x1802a6918
cmp ebx, 0x7d
je 0x1802a6918
mov r8d, dword [r15 + 0xd4]
lea rax, [r13 + 2]
mov qword [rbp - 0x68], rax
lea rcx, [rbp - 0x68]
lea rax, [rsp + 0x68]
mov r9d, 0xffff
mov qword [rsp + 0x30], rax
mov rdx, r14
lea rax, [rbp - 0x74]
mov qword [rsp + 0x28], rax
mov dword [rsp + 0x20], 0xa1
call fcn.1802aabb0
test eax, eax
je 0x1802a690c
mov rcx, qword [rbp - 0x68]
cmp rcx, r14
jae 0x1802a68fc
movzx eax, word [rcx]
cmp eax, ebx
je 0x1802a69f9
mov eax, 0x9d
mov edx, eax
mov dword [rsp + 0x68], eax
jmp 0x1802a6763
mov edx, dword [rsp + 0x68]
test edx, edx
jne 0x1802a6763
mov r8d, dword [rbp - 0x70]
lea rax, [rsp + 0x68]
mov qword [rsp + 0x40], r15
lea rcx, [rbp + 0x70]
mov qword [rsp + 0x38], rax
mov r9d, ebx
lea rax, [rbp - 0x6c]
mov rdx, r14
mov qword [rsp + 0x30], rax
lea rax, [rbp - 0x40]
mov qword [rsp + 0x28], rax
lea rax, [rbp - 0x58]
mov qword [rsp + 0x20], rax
call fcn.1802aa910
test eax, eax
jne 0x1802a6a09
mov r13, qword [rbp + 0x70]
mov edx, dword [rsp + 0x68]
jmp 0x1802a6763
cmp edi, 0x1b
mov edx, 0xa9
mov eax, 0x9d
cmove edx, eax
jmp 0x1802a675f
mov rsi, qword [rsp + 0x60]
mov eax, 1
mov r11, qword [rbp + 0x88]
mov ecx, 0xfc00
mov rbx, qword [rsp + 0x78]
movzx edx, word [rbp + 0x78]
mov r9d, dword [rsp + 0x54]
mov dword [rsp + 0x58], eax
lea eax, [rdi - 0x7fe80000]
mov edi, dword [rsp + 0x58]
mov dword [rsi], eax
add rsi, 4
mov qword [rsp + 0x60], rsi
jmp case.default.0x1802a6b45
cmp dword [rbp - 0x10], 0
je 0x1802a69d2
xor eax, eax
cmp edi, 0xf
sete al
lea edi, [rax + 0xf]
mov rsi, qword [rsp + 0x60]
lea eax, [rdi - 0x7fe80000]
movzx ecx, word [rsp + 0x70]
shl ecx, 0x10
mov dword [rsi], eax
movzx eax, word [rbp - 0x68]
or ecx, eax
mov dword [rsi + 4], ecx
add rsi, 8
jmp 0x1802a7d6e
mov eax, dword [rbp - 0x74]
mov r13, rcx
mov rsi, qword [rsp + 0x60]
jmp 0x1802a887f
cmp edi, 0x1c
je 0x1802a6a18
mov eax, 0x80210000
cmp ebx, 0x7d
jne 0x1802a6a1d
mov eax, 0x80040000
mov rsi, qword [rsp + 0x60]
mov rcx, qword [rbp - 0x58]
mov r13, qword [rbp + 0x70]
mov r11, qword [rbp + 0x88]
mov dword [rsi], eax
mov eax, dword [rbp - 0x6c]
mov dword [rsi + 4], eax
mov rax, rcx
shr rax, 0x20
mov dword [rsi + 8], eax
mov eax, 1
mov dword [rsi + 0xc], ecx
mov edi, eax
add rsi, 0x10
mov dword [rsp + 0x58], eax
mov qword [rsp + 0x60], rsi
jmp 0x1802a8cd0
mov eax, 1
mov dword [rsp + 0x58], eax
mov rsi, qword [rsp + 0x60]
lea eax, [rdi - 0x7fe80000]
mov edi, dword [rsp + 0x58]
mov r11, qword [rbp + 0x88]
mov dword [rsi], eax
add rsi, 4
mov qword [rsp + 0x60], rsi
jmp 0x1802a8cd0
mov r8d, dword [rsp + 0x50]
mov eax, 1
mov dword [rsp + 0x58], eax
mov eax, 0x20000
test eax, r8d
jne 0x1802a6adf
mov rsi, qword [rsp + 0x60]
lea eax, [rdi - 0x7fe80000]
mov edi, dword [rsp + 0x58]
mov ecx, 0xfc00
mov r11, qword [rbp + 0x88]
mov rbx, qword [rsp + 0x78]
movzx edx, word [rbp + 0x78]
mov r9d, dword [rsp + 0x54]
mov dword [rsi], eax
add rsi, 4
mov qword [rsp + 0x60], rsi
jmp case.default.0x1802a6b45
lea eax, [rdi - 7]
test eax, 0xfffffff9
jne 0x1802a6af3
mov eax, 0x80180010
cmp edi, 0xd
jne 0x1802a6af8
mov eax, 0x8018000f
mov rsi, qword [rsp + 0x60]
mov ecx, 0xfc00
mov r11, qword [rbp + 0x88]
mov rbx, qword [rsp + 0x78]
movzx edx, word [rbp + 0x78]
mov r9d, dword [rsp + 0x54]
mov dword [rsi], eax
add rsi, 4
lea eax, [rdi - 6]
mov qword [rsp + 0x60], rsi
mov edi, dword [rsp + 0x58]
cmp eax, 5
ja case.default.0x1802a6b45
lea rdx, [0x180000000]
cdqe
mov ecx, dword [rdx + rax*4 + 0x2a9080]
add rcx, rdx
jmp rcx
mov edi, dword [rsp + 0x58]
mov ecx, 0xfc00
mov r11, qword [rbp + 0x88]
movzx edx, word [rbp + 0x78]
mov dword [rsi], 0x3000d
add rsi, 4
mov qword [rsp + 0x60], rsi
jmp case.default.0x1802a6b45
mov edi, dword [rsp + 0x58]
mov ecx, 0xfc00
mov r11, qword [rbp + 0x88]
movzx edx, word [rbp + 0x78]
mov dword [rsi], 0x60000
add rsi, 4
mov qword [rsp + 0x60], rsi
jmp case.default.0x1802a6b45
mov dword [rsi], 0x80000
add rsi, 4
mov qword [rsp + 0x60], rsi
mov edi, dword [rsp + 0x58]
mov ecx, 0xfc00
mov r11, qword [rbp + 0x88]
movzx edx, word [rbp + 0x78]
jmp case.default.0x1802a6b45
mov rsi, qword [rsp + 0x60]
neg edi
mov r11, qword [rbp + 0x88]
mov rcx, r13
mov eax, edi
or eax, 0x80030000
sub rcx, qword [r11 + 0x38]
sar rcx, 1
dec rcx
mov dword [rsi], eax
add rsi, 4
mov qword [rbp - 0x58], rcx
mov qword [rsp + 0x60], rsi
cmp edi, 0xa
jge 0x1802a6c15
movsxd rax, edi
cmp qword [r11 + rax*8 + 0x58], 0xffffffffffffffff
jne 0x1802a6c2a
mov qword [r11 + rax*8 + 0x58], rcx
mov eax, 1
mov edi, eax
mov dword [rsp + 0x58], eax
jmp 0x1802a8cd0
mov rax, rcx
shr rax, 0x20
mov dword [rsi], eax
mov dword [rsi + 4], ecx
add rsi, 8
mov qword [rsp + 0x60], rsi
mov eax, 1
mov edi, eax
mov dword [rsp + 0x58], eax
jmp 0x1802a8cd0
mov rsi, qword [rsp + 0x60]
mov eax, 1
mov r11, qword [rbp + 0x88]
mov edi, eax
mov dword [rsp + 0x58], eax
mov dword [rsi], ecx
add rsi, 4
mov qword [rsp + 0x60], rsi
jmp 0x1802a8cd0
mov edi, dword [rsp + 0x58]
mov dword [rsi], 0x80090000
jmp 0x1802a8cbe
mov edi, dword [rsp + 0x58]
mov dword [rsi], 0x80160000
jmp 0x1802a8cbe
mov dword [rsi], 0x80170000
jmp 0x1802a8cb3
mov r13, qword [rsp + 0x70]
mov edx, 0x80340000
mov r14, qword [rbp - 0x80]
jmp 0x1802a6d01
mov r13, qword [rsp + 0x70]
mov edx, 0x80370000
mov r14, qword [rbp - 0x80]
jmp 0x1802a6d01
mov r13, qword [rsp + 0x70]
mov edx, 0x803a0000
mov r14, qword [rbp - 0x80]
jmp 0x1802a6d01
mov r14, qword [rbp - 0x80]
lea rax, [rsp + 0x68]
mov rdx, r14
mov qword [rsp + 0x20], rax
lea r9, [rbp - 8]
lea r8, [rbp - 0xc]
lea rcx, [rbp + 0x70]
call fcn.1802aacf0
test eax, eax
jne 0x1802a6cf8
mov edx, dword [rsp + 0x68]
test edx, edx
jne 0x1802a8e50
mov dword [rsi], r15d
add rsi, 4
jmp 0x1802a7d6e
mov r13, qword [rbp + 0x70]
mov edx, 0x803d0000
mov dword [rbp - 0x60], edx
test edi, edi
je 0x1802a8d0f
cmp dword [rsi - 4], 0x802a0000
lea rcx, [rsi - 4]
jne 0x1802a6d42
mov r9, qword [rbp + 8]
cmp rcx, r9
jb 0x1802a6d30
mov eax, dword [rcx]
mov dword [rcx + 4], eax
sub rcx, 4
cmp rcx, r9
jae 0x1802a6d22
mov dword [r9], 0x801a0000
mov dword [rsi + 4], 0x80190000
add rsi, 8
mov edi, dword [rsp + 0x58]
mov ecx, 0xfc00
mov r11, qword [rbp + 0x88]
mov rbx, qword [rsp + 0x78]
mov r8d, dword [rsp + 0x50]
mov r9d, dword [rsp + 0x54]
mov dword [rsi], edx
add rsi, 4
movzx edx, word [rbp + 0x78]
mov qword [rsp + 0x60], rsi
cmp r15d, 0x7b
jne case.default.0x1802a6b45
mov eax, dword [rbp - 0xc]
mov dword [rsi], eax
mov eax, dword [rbp - 8]
mov dword [rsi + 4], eax
add rsi, 8
mov qword [rsp + 0x60], rsi
jmp case.default.0x1802a6b45
mov r13, qword [rsp + 0x70]
mov r12d, 1
mov rax, r9
mov dword [rsp + 0x58], r12d
sub rax, r13
mov edi, r12d
and rax, 0xfffffffffffffffe
cmp rax, 0xc
jl 0x1802a6e88
lea r8d, [r12 + 5]
mov rcx, r13
lea rdx, [0x180494a48]
call fcn.1802dce70
test eax, eax
je 0x1802a6dee
lea r8d, [r12 + 5]
mov rcx, r13
lea rdx, str._:_:__
call fcn.1802dce70
test eax, eax
jne 0x1802a6e84
mov dword [rsi], 0x80180005
lea rax, [rsi + 8]
cmp word [r13 + 4], 0x3c
jne 0x1802a6e09
mov dword [rsi + 4], 0x80230000
jmp 0x1802a6e23
mov rcx, qword [rbp + 0x80]
mov dword [rsi + 4], 0x80250000
mov dword [rcx], r12d
xor ecx, ecx
mov qword [rax], rcx
add rax, 8
mov r8d, dword [rsp + 0x50]
lea rsi, [rax + 4]
mov ecx, 0x20000
test ecx, r8d
jne 0x1802a6e3e
mov dword [rax], 0x8018000b
jmp 0x1802a6e4e
mov dword [rax], 0x80180010
mov dword [rsi], 0x80000
add rsi, 4
mov r14, qword [rbp - 0x80]
mov ecx, 0xfc00
mov r11, qword [rbp + 0x88]
mov rbx, qword [rsp + 0x78]
movzx edx, word [rbp + 0x78]
mov r9d, dword [rsp + 0x54]
mov dword [rsi], 0x80190000
add rsi, 4
mov qword [rsp + 0x60], rsi
add r13, 0xc
jmp case.default.0x1802a6b45
mov r9, qword [rbp - 0x80]
cmp r13, r9
jae 0x1802a6ec1
movzx eax, word [r13]
mov rcx, rbx
cmp ax, 0x3a
je 0x1802a6ea7
cmp ax, 0x2e
je 0x1802a6ea7
cmp ax, 0x3d
jne 0x1802a6ec1
mov rbx, rcx
lea r8, [rbp - 0x28]
mov rcx, r13
mov rdx, r9
call fcn.1802a0690
test eax, eax
jne 0x1802a8d1d
mov r14, qword [rbp - 0x80]
xor r10d, r10d
mov esi, r10d
cmp rbx, r14
jae 0x1802a6fd5
mov r12d, dword [rsp + 0x50]
nop dword [rax]
movzx r15d, word [r13]
add r13, 2
cmp dword [rbp - 0x70], 0
mov rbx, r13
mov dword [rbp - 0x68], r15d
mov ecx, r15d
mov qword [rbp + 0x70], r13
mov rdi, r13
je 0x1802a6f43
mov eax, r15d
and eax, 0xfc00
cmp eax, 0xd800
jne 0x1802a6f43
movzx eax, word [r13]
and r15d, 0x3ff
shl r15d, 0xa
and eax, 0x3ff
or r15d, eax
add r15d, 0x10000
add r13, 2
mov dword [rbp - 0x68], r15d
mov qword [rbp + 0x70], r13
mov rdi, r13
mov rbx, r13
mov ecx, r15d
cmp ecx, 0x5c
jne 0x1802a6fa2
cmp rdi, r14
jae 0x1802a6f67
cmp word [r13], 0x45
jne 0x1802a6f67
mov eax, 2
lea r13, [rdi + rax]
mov qword [rbp + 0x70], r13
mov rbx, r13
jmp 0x1802a6fc5
mov rax, r14
sub rax, rdi
and rax, 0xfffffffffffffffe
cmp rax, 6
jl 0x1802a6fce
mov r8d, 3
lea rdx, [0x180494a58]
mov rcx, r13
call fcn.1802dce70
test eax, eax
jne 0x1802a6fce
mov eax, 6
lea r13, [rdi + rax]
mov qword [rbp + 0x70], r13
mov rbx, r13
jmp 0x1802a6fc5
mov rax, rbx
bt r12d, 0x18
jae 0x1802a6fb6
cmp ecx, 0x20
je 0x1802a6fc5
cmp ecx, 9
je 0x1802a6fc5
mov rbx, rax
test esi, esi
jne 0x1802a6fce
cmp ecx, 0x5e
jne 0x1802a6fce
lea esi, [rcx - 0x5d]
cmp r13, r14
jb 0x1802a6ee0
mov edi, dword [rsp + 0x58]
xor r10d, r10d
mov r11, qword [rbp + 0x88]
cmp r15d, 0x5d
jne 0x1802a7010
test byte [r11 + 0xcc], 1
je 0x1802a7010
test esi, esi
mov eax, 0x800b0000
mov rsi, qword [rsp + 0x60]
mov ecx, 0x800c0000
cmovne eax, ecx
mov dword [rsi], eax
add rsi, 4
mov qword [rsp + 0x60], rsi
jmp 0x1802a8cd0
mov r12, qword [rbp - 0x80]
test esi, esi
mov rsi, qword [rsp + 0x60]
mov eax, 0x800a0000
mov r9d, dword [rbp - 0x78]
mov ecx, 0x800e0000
cmovne eax, ecx
mov r14d, r10d
mov edx, 1
mov dword [rsi], eax
add rsi, 4
mov qword [rsp + 0x60], rsi
nop
mov edi, edx
test r9d, r9d
je 0x1802a707b
cmp r15d, 0x5c
jne 0x1802a75b0
cmp r13, r12
jae 0x1802a75b0
cmp word [r13], 0x45
jne 0x1802a75b0
mov r9d, r10d
mov dword [rbp - 0x78], r10d
lea r13, [rbx + 2]
mov r8d, dword [rsp + 0x50]
jmp 0x1802a7227
mov ecx, dword [rsp + 0x50]
bt ecx, 0x18
jae 0x1802a7091
cmp r15d, 0x20
je 0x1802a7071
cmp r15d, 9
je 0x1802a7071
cmp r15d, 0x5b
jne 0x1802a72e2
mov rax, r12
sub rax, rbx
and rax, 0xfffffffffffffffe
cmp rax, 6
jl 0x1802a75b0
movzx eax, word [r13]
mov r9, rbx
cmp ax, 0x3a
je 0x1802a70cd
cmp ax, 0x2e
je 0x1802a70cd
cmp ax, 0x3d
jne 0x1802a75ac
lea r8, [rbp - 0x28]
mov rdx, r12
mov rcx, r13
call fcn.1802a0690
test eax, eax
je 0x1802a75a4
xor ecx, ecx
mov r12d, ecx
cmp r14d, 1
je 0x1802a759a
cmp word [r13], 0x3a
jne 0x1802a8d39
cmp word [r9 + 2], 0x5e
lea rax, [r9 + 2]
mov qword [rsp + 0x70], rax
mov r14, rax
jne 0x1802a7123
add rax, 2
lea r12d, [rcx + 1]
mov qword [rsp + 0x70], rax
mov r14, rax
mov r13, qword [rbp - 0x28]
lea rdi, str.alpha
mov rbx, r13
mov r15d, ecx
sub rbx, r14
mov rsi, rcx
sar rbx, 1
lea rcx, [0x180000000]
movzx eax, byte [rsi + rcx + 0x4947e8]
cmp ebx, eax
jne 0x1802a7169
mov r8d, ebx
mov rdx, rdi
mov rcx, r14
call fcn.1802dce70
test eax, eax
je 0x1802a7196
lea rcx, [0x180000000]
movzx eax, byte [rsi + rcx + 0x4947e8]
inc rdi
inc rsi
add rdi, rax
inc r15d
cmp byte [rsi + rcx + 0x4947e8], 0
jne 0x1802a7144
mov r13, qword [rsp + 0x70]
mov edx, 0x82
jmp 0x1802a8f93
test r15d, r15d
js 0x1802a7187
mov rax, qword [rbp - 0x80]
add r13, 4
add rax, 0xfffffffffffffffe
cmp r13, rax
jae 0x1802a71c0
cmp word [r13], 0x2d
jne 0x1802a71c0
cmp word [r13 + 2], 0x5d
jne 0x1802a759a
mov r8d, dword [rsp + 0x50]
xor r10d, r10d
mov eax, 0x20000
mov r14d, r10d
test eax, r8d
je 0x1802a72c7
lea rcx, [0x180000000]
mov eax, dword [rcx + rsi*8 + 0x5856d0]
mov ecx, dword [rcx + rsi*8 + 0x5856d4]
test eax, eax
js 0x1802a72a7
mov rsi, qword [rsp + 0x60]
xor r12d, 1
sub r12d, 0x7fe7fff1
shl eax, 0x10
or eax, ecx
mov dword [rsi], r12d
mov dword [rsi + 4], eax
add rsi, 8
mov r12, qword [rbp - 0x80]
mov qword [rsp + 0x60], rsi
mov r9d, dword [rbp - 0x78]
mov edx, 1
cmp r13, r12
jae 0x1802a8d6d
movzx r15d, word [r13]
add r13, 2
cmp dword [rbp - 0x70], 0
mov rbx, r13
mov dword [rbp - 0x68], r15d
mov ecx, r15d
mov qword [rbp + 0x70], r13
je 0x1802a728d
mov eax, r15d
and eax, 0xfc00
cmp eax, 0xd800
jne 0x1802a728d
movzx eax, word [r13]
and r15d, 0x3ff
shl r15d, 0xa
and eax, 0x3ff
or r15d, eax
add r15d, 0x10000
add r13, 2
mov dword [rbp - 0x68], r15d
mov qword [rbp + 0x70], r13
mov rbx, r13
mov ecx, r15d
cmp ecx, 0x5d
jne 0x1802a729b
test r9d, r9d
je 0x1802a7638
mov r11, qword [rbp + 0x88]
jmp 0x1802a7040
test ecx, ecx
je 0x1802a72c7
mov rsi, qword [rsp + 0x60]
xor r12d, 1
sub r12d, 0x7fe7ffee
mov dword [rsi], r12d
add rsi, 4
jmp 0x1802a7215
mov rsi, qword [rsp + 0x60]
lea eax, [r12 + 0x801c]
shl eax, 0x10
mov dword [rsi], eax
mov dword [rsi + 4], r15d
jmp 0x1802a7211
cmp r15d, 0x2d
jne 0x1802a731b
cmp r14d, 2
jb 0x1802a75b0
mov r8d, dword [rsp + 0x50]
cmp r14d, 3
mov eax, 0x801e0000
mov ecx, 0x801f0000
cmove eax, ecx
mov r14d, edx
mov dword [rsi], eax
add rsi, 4
mov qword [rsp + 0x60], rsi
jmp 0x1802a7227
cmp r15d, 0x5c
jne 0x1802a75b0
mov rax, qword [r11]
lea r9, [rsp + 0x68]
mov qword [rsp + 0x38], r11
lea r8, [rbp - 0x68]
mov dword [rsp + 0x30], edx
mov rdx, r12
mov qword [rbp - 0x28], r13
mov eax, dword [rax + 0x40]
mov dword [rsp + 0x28], eax
mov dword [rsp + 0x20], ecx
lea rcx, [rbp + 0x70]
call fcn.18029f3c0
mov edx, dword [rsp + 0x68]
mov ebx, eax
test edx, edx
je 0x1802a73cc
test byte [rbp - 0x38], 2
je 0x1802a8e50
mov qword [rbp + 0x70], r13
cmp r13, r12
jb 0x1802a737a
xor r10d, r10d
mov ebx, r10d
jmp 0x1802a73dc
cmp dword [rbp - 0x70], 0
lea rcx, [r13 + 2]
movzx r15d, word [r13]
mov r13, rcx
mov qword [rbp + 0x70], rcx
je 0x1802a73c4
mov eax, r15d
and eax, 0xfc00
cmp eax, 0xd800
jne 0x1802a73c4
movzx eax, word [rcx]
lea r13, [rcx + 2]
and r15d, 0x3ff
mov qword [rbp + 0x70], r13
shl r15d, 0xa
and eax, 0x3ff
or r15d, eax
add r15d, 0x10000
xor r10d, r10d
mov ebx, r10d
jmp 0x1802a73dc
mov r13, qword [rbp + 0x70]
cmp eax, 0x1a
ja case.default.0x1802a73fa
mov r15d, dword [rbp - 0x68]
xor r10d, r10d
lea r9, [0x180000000]
movsxd rax, ebx
movzx eax, byte [r9 + rax + 0x2a90b0]
mov ecx, dword [r9 + rax*4 + 0x2a9098]
add rcx, r9
jmp rcx
mov edi, r10d
jmp 0x1802a75a7
mov r15d, 8
mov edi, r10d
jmp 0x1802a75a7
mov r8d, dword [rsp + 0x50]
mov edx, 1
mov r9d, edx
mov dword [rbp - 0x78], edx
jmp 0x1802a7227
lea r9, [0x180000000]
cmp r14d, 1
je 0x1802a759a
xor r10d, r10d
lea edx, [rbx - 6]
mov r14d, r10d
cmp edx, 0xf
ja case.0x1802a7458.13
movsxd rax, edx
mov ecx, dword [r9 + rax*4 + 0x2a90cc]
add rcx, r9
jmp rcx
lea eax, [rbx - 0x7fe80000]
mov dword [rsi], eax
add rsi, 4
jmp 0x1802a756a
mov r8d, dword [rsp + 0x50]
mov eax, 0x20000
test eax, r8d
jne 0x1802a748b
lea eax, [rbx - 0x7fe80000]
mov dword [rsi], eax
add rsi, 4
jmp 0x1802a756f
lea eax, [rbx - 7]
test eax, 0xfffffff9
jne 0x1802a749f
mov eax, 0x80180010
cmp ebx, 0xd
jne 0x1802a74a4
mov eax, 0x8018000f
mov dword [rsi], eax
add rsi, 4
mov qword [rsp + 0x60], rsi
cmp edx, 5
ja case.default.0x1802a74c6
movsxd rax, edx
mov ecx, dword [r9 + rax*4 + 0x2a910c]
add rcx, r9
jmp rcx
mov dword [rsi], 0x3000d
add rsi, 4
jmp 0x1802a756f
mov dword [rsi], 0x60000
add rsi, 4
jmp 0x1802a756f
mov dword [rsi], 0x80000
add rsi, 4
jmp 0x1802a756f
mov r15, qword [rbp + 0x88]
lea rax, [rsp + 0x68]
mov qword [rsp + 0x28], r15
lea r9, [rsp + 0x70]
lea r8, [rbp - 0x68]
mov qword [rsp + 0x20], rax
lea rdx, [rbp - 0x18]
mov word [rbp - 0x68], r10w
lea rcx, [rbp + 0x70]
mov word [rsp + 0x70], r10w
call fcn.1802a5320
test eax, eax
je 0x1802a8dcb
xor r10d, r10d
cmp dword [rbp - 0x18], r14d
je 0x1802a7549
cmp ebx, 0xf
mov eax, r10d
sete al
lea ebx, [rax + 0xf]
movzx ecx, word [rbp - 0x68]
lea eax, [rbx - 0x7fe80000]
mov r13, qword [rbp + 0x70]
mov dword [rsi], eax
movzx eax, word [rsp + 0x70]
shl ecx, 0x10
or ecx, eax
mov dword [rsi + 4], ecx
add rsi, 8
mov r8d, dword [rsp + 0x50]
mov qword [rsp + 0x60], rsi
lea rax, [r12 - 2]
cmp r13, rax
jae 0x1802a721e
cmp word [r13], 0x2d
jne 0x1802a721e
cmp word [r13 + 2], 0x5d
je 0x1802a721e
mov edx, 0x96
jmp 0x1802a8f93
xor r10d, r10d
mov edx, 1
mov r9d, dword [rbp - 0x78]
cmp r14d, 1
jne 0x1802a7610
cmp r15d, dword [rsi - 8]
jne 0x1802a75d8
mov r8d, dword [rsp + 0x50]
mov rax, 0xfffffffffffffffc
add rsi, rax
mov r14d, r10d
mov qword [rsp + 0x60], rsi
jmp 0x1802a7227
jb 0x1802a8d5f
test edi, edi
jne 0x1802a75f3
mov eax, 0x801f0000
cmp dword [rsi - 4], eax
jne 0x1802a75f3
mov dword [rsi - 4], 0x801e0000
mov r8d, dword [rsp + 0x50]
mov eax, 4
mov dword [rsi], r15d
mov r14d, r10d
add rsi, rax
mov qword [rsp + 0x60], rsi
jmp 0x1802a7227
mov r8d, dword [rsp + 0x50]
lea r14d, [rdi + 2]
mov eax, 4
mov dword [rsi], r15d
add rsi, rax
mov qword [rsp + 0x60], rsi
jmp 0x1802a7227
mov r8d, dword [rsp + 0x50]
jmp 0x1802a721e
cmp r14d, 1
jne 0x1802a7645
mov dword [rsi - 4], 0x2d
mov r14, qword [rbp - 0x80]
mov edi, edx
mov r11, qword [rbp + 0x88]
mov ecx, 0xfc00
mov rbx, qword [rsp + 0x78]
mov r9d, dword [rsp + 0x54]
mov dword [rsi], 0x800d0000
add rsi, 4
mov dword [rsp + 0x58], edx
movzx edx, word [rbp + 0x78]
mov qword [rsp + 0x60], rsi
jmp case.default.0x1802a6b45
mov r14, qword [rbp - 0x80]
cmp rbx, r14
jae 0x1802a8f89
mov rcx, qword [rsp + 0x70]
movzx eax, word [rcx]
cmp ax, 0x3f
je 0x1802a7b9e
movzx edx, word [rbp + 0x78]
mov r8d, dword [rsp + 0x50]
cmp ax, 0x2a
je 0x1802a7707
inc dx
mov word [rbp + 0x78], dx
bt r8d, 0xd
jb 0x1802a76ef
mov ecx, dword [r11 + 0xd4]
mov eax, 0xffff
cmp ecx, eax
jae 0x1802a8e67
inc ecx
lea rax, [rsi + 4]
mov dword [r11 + 0xd4], ecx
or ecx, 0x80080000
mov dword [rsi], ecx
mov rsi, rax
mov qword [rsp + 0x60], rax
jmp 0x1802a8550
lea rax, [rsi + 4]
mov ecx, 0x801a0000
mov dword [rsi], ecx
mov rsi, rax
mov qword [rsp + 0x60], rax
jmp 0x1802a8550
mov edi, dword [rsp + 0x58]
mov rax, r14
mov r9d, dword [rsp + 0x54]
sub rax, rbx
mov rbx, qword [rsp + 0x78]
and rax, 0xfffffffffffffffe
cmp rax, 2
jle 0x1802a5ef0
movzx eax, word [rcx + 2]
mov ecx, 0xfc00
mov r8d, dword [rsp + 0x50]
movzx edx, word [rbp + 0x78]
cmp ax, 0x29
je 0x1802a5efc
mov ecx, 0xff
cmp ax, cx
ja 0x1802a79c8
movzx ecx, ax
mov rax, qword [r11 + 0x20]
test byte [rcx + rax], 4
je 0x1802a79c8
mov rbx, qword [rbp - 0x80]
lea rax, [rsp + 0x68]
mov r8d, dword [rbp - 0x70]
lea rcx, [rbp + 0x70]
mov qword [rsp + 0x40], r11
lea r14, [0x180494620]
mov qword [rsp + 0x38], rax
xor r9d, r9d
lea rax, [rbp - 0x6c]
mov rdx, rbx
mov qword [rsp + 0x30], rax
lea rax, [rbp - 0x40]
mov qword [rsp + 0x28], rax
lea rax, [rbp - 0x58]
mov qword [rsp + 0x20], rax
call fcn.1802aa910
test eax, eax
je 0x1802a8dcb
mov rcx, qword [rbp + 0x70]
mov qword [rsp + 0x70], rcx
cmp rcx, rbx
jae 0x1802a8da8
cmp word [rcx], 0x3a
jne 0x1802a8da8
mov r15d, dword [rbp - 0x6c]
lea rcx, [0x180000000]
mov r12, qword [rbp - 0x40]
xor eax, eax
mov dword [rbp - 0x74], eax
mov ebx, eax
nop word [rax + rax]
movsxd rax, ebx
lea rsi, [rax*8 + 0x494700]
add rsi, rcx
cmp r15d, dword [rsi]
jne 0x1802a781e
mov r8, r15
mov rdx, r14
mov rcx, r12
mov edi, ebx
call fcn.1802dce70
test eax, eax
je 0x1802a7831
lea rcx, [0x180000000]
mov eax, dword [rsi]
inc eax
add r14, rax
inc ebx
mov dword [rbp - 0x74], ebx
mov edi, ebx
cmp ebx, 0x11
jl 0x1802a77f0
cmp edi, 0x11
jge 0x1802a8da8
movsxd rax, edi
lea rcx, [0x180000000]
mov ecx, dword [rcx + rax*8 + 0x494704]
test r13d, r13d
jle 0x1802a7861
lea eax, [rcx + 0x7fdd0000]
cmp eax, 0x30000
ja 0x1802a8d77
cmp ecx, 0x80250000
ja 0x1802a78bf
je 0x1802a79af
cmp ecx, 0x80020000
je 0x1802a83bb
cmp ecx, 0x80220000
je 0x1802a78f0
cmp ecx, 0x80230000
je 0x1802a840b
cmp ecx, 0x80240000
jne 0x1802a8d99
mov r8, qword [rsp + 0x70]
mov rsi, qword [rsp + 0x60]
mov r14, qword [rbp - 0x80]
mov r11, qword [rbp + 0x88]
add r8, 2
mov dword [rsi], 0x80240000
jmp 0x1802a84e7
mov eax, 0x80260000
cmp ecx, eax
je 0x1802a79af
cmp ecx, 0x80270000
je 0x1802a842f
cmp ecx, 0x80280000
je 0x1802a79af
cmp ecx, 0x8fff0000
jne 0x1802a8d99
mov rsi, qword [rsp + 0x60]
movzx edx, word [rbp + 0x78]
mov r13, qword [rsp + 0x70]
inc dx
mov edi, dword [rsp + 0x58]
add r13, 2
mov r14, qword [rbp - 0x80]
mov r11, qword [rbp + 0x88]
mov rbx, qword [rsp + 0x78]
mov r8d, dword [rsp + 0x50]
mov r9d, dword [rsp + 0x54]
mov dword [rsi], 0x80220000
add rsi, 4
cmp ecx, 0x8fff0000
mov qword [rsp + 0x60], rsi
mov ecx, 0xfc00
mov word [rbp + 0x78], dx
jne case.default.0x1802a6b45
mov r9, qword [rbp - 0x50]
mov dword [rsi], 0x80020000
add rsi, 4
mov qword [rsp + 0x60], rsi
test r9, r9
jne 0x1802a7969
mov r9, qword [r11 + 0x28]
mov qword [rbp - 0x50], r9
jmp 0x1802a7982
add r9, 0xc
mov qword [rbp - 0x50], r9
cmp r9, qword [rbp]
jae 0x1802a8ea5
mov r11, qword [rbp + 0x88]
mov r8d, dword [rsp + 0x50]
mov eax, 4
mov edi, dword [rsp + 0x58]
mov word [r9 + 6], ax
mov eax, r8d
and eax, 0x10424e8
mov word [r9], dx
mov dword [r9 + 8], eax
mov r9d, dword [rsp + 0x54]
jmp case.default.0x1802a6b45
mov r8, qword [rsp + 0x70]
mov r14, qword [rbp - 0x80]
sub r8, 2
mov r11, qword [rbp + 0x88]
jmp 0x1802a84a8
mov rbx, qword [rbp - 0x80]
lea rax, [rsp + 0x68]
mov r8d, dword [rbp - 0x70]
lea rcx, [rbp + 0x70]
mov qword [rsp + 0x40], r11
lea r14, [0x180494548]
mov qword [rsp + 0x38], rax
xor r9d, r9d
lea rax, [rbp - 0x6c]
mov rdx, rbx
mov qword [rsp + 0x30], rax
lea rax, [rbp - 0x40]
mov qword [rsp + 0x28], rax
lea rax, [rbp - 0x58]
mov qword [rsp + 0x20], rax
call fcn.1802aa910
test eax, eax
je 0x1802a8dcb
mov r13, qword [rbp + 0x70]
mov qword [rsp + 0x70], r13
cmp r13, rbx
jae 0x1802a8ecc
movzx eax, word [r13]
cmp ax, 0x3a
je 0x1802a7a3f
cmp ax, 0x29
jne 0x1802a8ecc
mov r15d, dword [rbp - 0x6c]
lea r13, [0x180000000]
mov r12, qword [rbp - 0x40]
xor eax, eax
mov dword [rbp - 0x74], eax
mov ebx, eax
nop word [rax + rax]
movsxd rax, ebx
lea rcx, [rax + rax*2]
lea rsi, [rcx*4 + 0x494580]
cmp r15d, dword [rsi + r13]
jne 0x1802a7a89
mov r8, r15
mov rdx, r14
mov rcx, r12
mov edi, ebx
call fcn.1802dce70
test eax, eax
je 0x1802a7a9e
mov eax, dword [rsi + r13]
inc eax
add r14, rax
inc ebx
mov dword [rbp - 0x74], ebx
mov edi, ebx
cmp ebx, 9
jl 0x1802a7a60
mov r13, qword [rsp + 0x70]
cmp edi, 9
jge 0x1802a8ecc
cmp word [r13], 0x3a
mov r14, qword [rbp - 0x80]
jne 0x1802a7ac9
lea rax, [r13 + 2]
cmp rax, r14
jae 0x1802a7ac9
cmp word [rax], 0x29
cmove r13, rax
movsxd rax, edi
lea r8, [0x180000000]
lea rcx, [rax + rax*2]
mov edx, dword [r8 + rcx*4 + 0x494588]
test edx, edx
jle 0x1802a7aef
cmp word [r13], 0x3a
jne 0x1802a8db7
mov ecx, dword [r8 + rcx*4 + 0x494584]
xor r10d, r10d
mov r9, qword [rsp + 0x60]
cmp ecx, 0x802a0000
movzx eax, word [r13]
mov edi, r10d
sete dil
mov qword [rbp + 8], r9
add r13, 2
mov dword [rsp + 0x58], edi
lea r8, [r9 + 4]
cmp ax, 0x3a
jne 0x1802a7b87
test edx, edx
jns 0x1802a7b35
mov dword [rbp - 0x34], ecx
mov eax, 0x80290000
jmp 0x1802a7b48
cmp ecx, 0x80290000
mov eax, r10d
mov edx, 0x10000
cmovne eax, edx
add eax, ecx
mov rbx, qword [rsp + 0x78]
lea rsi, [r8 + 4]
movzx edx, word [rbp + 0x78]
mov ecx, 0xfc00
mov dword [r9], eax
mov eax, 1
mov r11, qword [rbp + 0x88]
mov r9d, eax
mov qword [rbp + 0x10], r8
mov r8d, dword [rsp + 0x50]
mov dword [rsp + 0x54], eax
mov qword [rsp + 0x60], rsi
mov qword [rbp + 0x18], r13
jmp case.default.0x1802a6b45
mov r11, qword [rbp + 0x88]
mov rsi, r8
mov dword [r9], ecx
mov qword [rsp + 0x60], r8
jmp 0x1802a8cd0
lea r8, [rbx + 2]
mov qword [rsp + 0x70], r8
mov qword [rbp + 0x70], r8
cmp r8, r14
jae 0x1802a8f89
movzx edx, word [r8]
lea rdi, [0x180000000]
lea eax, [rdx - 0x21]
cmp eax, 0x31
ja case.0x1802a7bdf.46
cdqe
movzx eax, byte [rdi + rax + 0x2a915c]
mov ecx, dword [rdi + rax*4 + 0x2a9124]
add rcx, rdi
jmp rcx
mov r13, qword [rsp + 0x70]
add r13, 2
mov qword [rbp + 0x70], r13
cmp r13, r14
jae 0x1802a8f8e
movzx eax, word [r13]
cmp ax, 0x3c
jne 0x1802a7c0d
mov r9d, 0x3e
jmp 0x1802a8573
cmp ax, 0x3e
je case.0x1802a7bdf.34
cmp ax, 0x3d
jne 0x1802a8dc1
mov r8d, dword [rbp - 0x70]
lea rax, [rsp + 0x68]
mov qword [rsp + 0x40], r11
lea rcx, [rbp + 0x70]
mov qword [rsp + 0x38], rax
mov r9d, 0x29
lea rax, [rbp - 0x6c]
mov rdx, r14
mov qword [rsp + 0x30], rax
lea rax, [rbp - 0x40]
mov qword [rsp + 0x28], rax
lea rax, [rbp - 0x58]
mov qword [rsp + 0x20], rax
call fcn.1802aa910
test eax, eax
je 0x1802a8dcb
mov eax, dword [rbp - 0x6c]
mov rcx, qword [rbp - 0x58]
mov r13, qword [rbp + 0x70]
mov r11, qword [rbp + 0x88]
mov dword [rsi], 0x80040000
mov dword [rsi + 4], eax
mov rax, rcx
shr rax, 0x20
mov dword [rsi + 8], eax
mov eax, 1
mov dword [rsi + 0xc], ecx
mov edi, eax
add rsi, 0x10
mov dword [rsp + 0x58], eax
mov qword [rsp + 0x60], rsi
jmp 0x1802a8cd0
mov r13, qword [rsp + 0x70]
xor eax, eax
add r13, 2
mov dword [rbp - 0x74], eax
cmp r13, r14
jae 0x1802a7cc9
cmp word [r13], 0x29
je 0x1802a8886
mov edx, 0x9e
jmp 0x1802a8f93
mov r13, qword [rsp + 0x70]
mov rax, r14
sub rax, r13
and rax, 0xfffffffffffffffe
cmp rax, 4
jl 0x1802a7cfb
movzx eax, word [r13 + 2]
sub ax, 0x30
cmp ax, 9
jbe case.0x1802a7bdf.39
mov edx, 0x81
jmp 0x1802a8f93
mov r8d, dword [rbp - 0x70]
lea rax, [rsp + 0x68]
mov qword [rsp + 0x40], r11
lea rcx, [rbp + 0x70]
mov qword [rsp + 0x38], rax
mov r9d, 0x29
lea rax, [rbp - 0x6c]
mov rdx, r14
mov qword [rsp + 0x30], rax
lea rax, [rbp - 0x40]
mov qword [rsp + 0x28], rax
lea rax, [rbp - 0x58]
mov qword [rsp + 0x20], rax
call fcn.1802aa910
test eax, eax
je 0x1802a8dcb
mov eax, dword [rbp - 0x6c]
mov rcx, qword [rbp - 0x58]
mov dword [rsi], 0x80210000
mov dword [rsi + 4], eax
mov rax, rcx
shr rax, 0x20
mov dword [rsi + 8], eax
mov dword [rsi + 0xc], ecx
add rsi, 0x10
mov r13, qword [rbp + 0x70]
mov eax, 1
mov r11, qword [rbp + 0x88]
mov edi, eax
mov dword [rsp + 0x58], eax
mov qword [rsp + 0x60], rsi
jmp 0x1802a8cd0
add r8, 2
mov qword [rsp + 0x70], r8
cmp r8, r14
jae 0x1802a8f89
lea r15d, [r13 - 1]
mov r9d, 0xff
mov dword [rbp - 0x44], r15d
test r10, r10
je 0x1802a7dcb
test byte [rsp + 0x50], 4
je 0x1802a7dcb
lea rax, [rsi - 0x10]
cmp r10, rax
jne 0x1802a7dcb
cmp dword [rsi - 4], r9d
cmove rsi, r10
mov r13, qword [rsp + 0x70]
mov rbx, rsi
mov eax, 1
mov qword [rsp + 0x78], rbx
mov dword [rbp - 0x48], eax
movzx edx, word [r13]
cmp dx, 0x29
je 0x1802a7ec3
lea eax, [rdx - 0x30]
cmp ax, 9
jbe 0x1802a7ec3
xor r10d, r10d
mov r9, r13
cmp dword [str.____], r10d
mov dword [rbp - 0x74], r10d
je 0x1802a7e3c
mov ecx, r10d
movzx r8d, dx
nop word [rax + rax]
movsxd rax, ecx
cmp r8d, dword [rdi + rax*4 + 0x4afcb0]
je 0x1802a7e46
inc ecx
mov dword [rbp - 0x74], ecx
cmp dword [rdi + rax*4 + 0x4afcb4], r10d
jne 0x1802a7e20
mov edx, 0xb6
jmp 0x1802a8f93
mov ecx, dword [rdi + rax*4 + 0x4afc88]
test ecx, ecx
je 0x1802a7e3c
mov dword [rsi], 0x80070000
nop word [rax + rax]
add r13, 2
cmp r13, r14
jae 0x1802a8de2
movzx eax, word [r13]
cmp eax, ecx
jne 0x1802a7e60
add r13, 2
cmp r13, r14
jae 0x1802a7e88
movzx eax, word [r13]
cmp eax, ecx
je 0x1802a7e60
mov rax, r13
mov ecx, 0xffffffff
sub rax, r9
sar rax, 1
cmp rax, rcx
ja 0x1802a8dd8
mov dword [rsi + 0xc], eax
mov rcx, r13
sub r9, qword [r11 + 0x38]
sar r9, 1
mov rax, r9
mov qword [rbp - 0x58], r9
shr rax, 0x20
mov dword [rsi + 0x10], eax
add rsi, 0x14
mov dword [rsi], r9d
jmp 0x1802a7f1e
xor r10d, r10d
mov dword [rsi], 0x80060000
mov r8d, r10d
add rsi, 0xc
mov rdx, r13
nop word [rax + rax]
movzx eax, word [r13]
mov rcx, rdx
cmp ax, 0x30
jb 0x1802a7f1b
cmp ax, 0x39
ja 0x1802a7f1b
lea ecx, [r8 - 6]
movzx eax, ax
lea ecx, [r8 + rcx*4]
lea r13, [rdx + 2]
lea r8d, [rax + rcx*2]
mov rcx, r13
cmp r8d, r9d
jg 0x1802a8def
mov rdx, r13
cmp r13, r14
jb 0x1802a7ee0
mov dword [rsi], r8d
cmp rcx, r14
jae 0x1802a8df9
cmp word [r13], 0x29
jne 0x1802a8df9
mov edi, dword [rsp + 0x58]
lea r13, [rcx + 2]
mov rax, r13
sub rax, qword [r11 + 0x38]
sar rax, 1
add rsi, 4
mov dword [rbx + 4], eax
mov qword [rsp + 0x60], rsi
mov dword [rbx + 8], r10d
jmp 0x1802a8cd5
mov r13, qword [rsp + 0x70]
add r13, 2
mov qword [rbp + 0x70], r13
cmp r13, r14
jae 0x1802a8f8e
movzx edx, word [rbp + 0x78]
movzx eax, word [r13]
inc dx
mov word [rbp + 0x78], dx
cmp ax, 0x3f
je 0x1802a8384
cmp ax, 0x2a
je 0x1802a8384
mov r8d, dword [r11 + 0xd4]
lea rax, [rsp + 0x68]
mov qword [rsp + 0x30], rax
lea rcx, [rbp + 0x70]
lea rax, [rbp - 0x74]
mov r9d, 0xffff
mov qword [rsp + 0x28], rax
mov rdx, r14
mov dword [rsp + 0x20], 0xa1
call fcn.1802aabb0
test eax, eax
je 0x1802a8012
mov edx, dword [rbp - 0x74]
mov r13, qword [rbp + 0x70]
test edx, edx
jle 0x1802a8e03
mov r11, qword [rbp + 0x88]
mov rcx, r13
mov dword [rsi], 0x80120000
sub rcx, qword [r11 + 0x38]
sar rcx, 1
sub rcx, 2
mov rax, rcx
mov qword [rbp - 0x58], rcx
shr rax, 0x20
mov dword [rsi + 4], eax
mov dword [rsi + 8], ecx
add rsi, 0xc
mov dword [rsi], edx
jmp 0x1802a8359
mov edx, dword [rsp + 0x68]
test edx, edx
jne 0x1802a8e50
mov rbx, qword [rbp + 0x70]
mov rdi, r14
sub rdi, rbx
sar rdi, 1
cmp rdi, 0xa
jl 0x1802a81b3
lea r8d, [rdx + 7]
mov rcx, rbx
lea rdx, str.VERSION
call fcn.1802dce70
test eax, eax
jne 0x1802a81b3
cmp word [rbx + 0xe], 0x29
lea r13, [rbx + 0xe]
je 0x1802a81b3
xor r15d, r15d
mov rax, r13
cmp word [r13], 0x3e
mov ebx, r15d
mov r11d, r15d
lea edi, [r15 + 1]
jne 0x1802a8080
add r13, 2
mov ebx, edi
mov rax, r13
cmp word [r13], 0x3d
jne 0x1802a8e0d
lea r13, [rax + 2]
movzx eax, word [rax + 2]
sub ax, 0x30
cmp ax, 9
ja 0x1802a8e0d
mov edx, r15d
mov r9d, r15d
mov dword [rsp + 0x68], edx
mov r10d, r15d
cmp r13, r14
jae 0x1802a8f93
movzx eax, word [r13]
sub ax, 0x30
cmp ax, 9
ja 0x1802a8f93
nop dword [rax + rax]
movzx r8d, word [r13]
lea eax, [r8 - 0x30]
cmp ax, 9
ja 0x1802a8105
lea ecx, [r9 + r9*4]
movzx eax, r8w
lea r9d, [rcx - 0x18]
add r13, 2
lea r9d, [rax + r9*2]
cmp r9d, 0x3e8
ja 0x1802a81a5
cmp r13, r14
jb 0x1802a80d0
mov r10d, edi
test r10d, r10d
je 0x1802a8f93
cmp r13, r14
jae 0x1802a8e0d
cmp word [r13], 0x2e
jne 0x1802a818c
lea rdx, [r13 + 2]
mov r13, rdx
cmp rdx, r14
jae 0x1802a8e0d
movzx ecx, word [rdx]
lea eax, [rcx - 0x30]
cmp ax, 9
ja 0x1802a8e0d
movzx eax, cx
lea r13, [rdx + 2]
movzx ecx, word [r13]
sub eax, 0x30
lea r11d, [rax + rax*4]
mov rax, r13
add r11d, r11d
cmp cx, 0x30
jb 0x1802a8177
cmp cx, 0x39
ja 0x1802a8177
movzx eax, cx
add eax, 0xffffffd0
add r11d, eax
lea rax, [r13 + 2]
mov r13, rax
cmp rax, r14
jae 0x1802a8e0d
cmp word [r13], 0x29
jne 0x1802a8e0d
mov dword [rsi], 0x80150000
mov dword [rsi + 4], ebx
mov dword [rsi + 8], r9d
add rsi, 0xc
mov dword [rsi], r11d
jmp 0x1802a8352
mov edx, 0xb3
mov dword [rsp + 0x68], edx
jmp 0x1802a8108
movzx ecx, word [rbx]
xor eax, eax
mov esi, eax
cmp cx, 0x52
jne 0x1802a81e0
cmp rdi, 1
jle 0x1802a81e0
cmp word [rbx + 2], 0x26
lea rax, [rbx + 2]
jne 0x1802a81e0
mov r12d, 1
mov qword [rbp + 0x70], rax
mov esi, r12d
jmp 0x1802a8208
mov r12d, 1
cmp cx, 0x3c
jne 0x1802a81f3
lea edi, [r12 + 0x3d]
jmp 0x1802a820d
cmp cx, 0x27
jne 0x1802a8200
mov edi, 0x27
jmp 0x1802a820d
sub rbx, 2
mov qword [rbp + 0x70], rbx
mov edi, 0x29
mov r15, qword [rbp + 0x88]
lea rax, [rsp + 0x68]
mov r8d, dword [rbp - 0x70]
lea rcx, [rbp + 0x70]
mov qword [rsp + 0x40], r15
mov r9d, edi
mov qword [rsp + 0x38], rax
mov rdx, r14
lea rax, [rbp - 0x6c]
mov qword [rsp + 0x30], rax
lea rax, [rbp - 0x40]
mov qword [rsp + 0x28], rax
lea rax, [rbp - 0x58]
mov qword [rsp + 0x20], rax
call fcn.1802aa910
test eax, eax
je 0x1802a8dcb
mov r14d, dword [rbp - 0x6c]
test esi, esi
je 0x1802a8279
mov rsi, qword [rsp + 0x60]
mov r13, qword [rbp + 0x70]
sub r13, 2
mov dword [rsi], 0x80130000
jmp 0x1802a8327
cmp edi, 0x29
jne 0x1802a8318
mov rbx, qword [rbp - 0x40]
cmp r14d, 6
jne 0x1802a82b8
mov r8d, r14d
lea rdx, str.DEFINE
mov rcx, rbx
call fcn.1802dce70
test eax, eax
jne 0x1802a82b8
mov rsi, qword [rsp + 0x60]
mov eax, 0x80100000
mov dword [rsi], eax
mov r13, qword [rbp + 0x70]
sub r13, 2
jmp 0x1802a8327
mov dword [rbp - 0x74], r12d
mov eax, r12d
cmp r14d, 1
jle 0x1802a82f2
mov ecx, r12d
nop dword [rax + rax]
movsxd rax, ecx
movzx edx, word [rbx + rax*2]
mov eax, ecx
cmp dx, 0x30
jb 0x1802a82f2
cmp dx, 0x39
ja 0x1802a82f2
lea eax, [rcx + 1]
mov dword [rbp - 0x74], eax
mov ecx, eax
cmp eax, r14d
jl 0x1802a82d0
cmp word [rbx], 0x52
jne 0x1802a8302
cmp eax, r14d
mov eax, 0x80140000
jge 0x1802a8307
mov eax, 0x80110000
mov rsi, qword [rsp + 0x60]
mov dword [rsi], eax
mov r13, qword [rbp + 0x70]
sub r13, 2
jmp 0x1802a8327
mov rsi, qword [rsp + 0x60]
mov r13, qword [rbp + 0x70]
mov dword [rsi], 0x80110000
mov eax, dword [rsi]
add rsi, 4
cmp eax, 0x80100000
je 0x1802a833b
mov dword [rsi], r14d
add rsi, 4
mov rcx, qword [rbp - 0x58]
mov r14, qword [rbp - 0x80]
mov rax, rcx
shr rax, 0x20
mov dword [rsi], eax
add rsi, 4
mov dword [rsi], ecx
mov r11, qword [rbp + 0x88]
cmp r13, r14
jae 0x1802a8e17
cmp word [r13], 0x29
jne 0x1802a8e17
mov edi, dword [rsp + 0x58]
add r13, 2
add rsi, 4
mov qword [rsp + 0x60], rsi
jmp 0x1802a8cd0
mov edi, dword [rsp + 0x58]
mov ecx, 0xfc00
mov rbx, qword [rsp + 0x78]
mov r8d, dword [rsp + 0x50]
mov r9d, dword [rsp + 0x54]
mov dword [rsi], 0x800f0000
add rsi, 4
mov qword [rsp + 0x60], rsi
add r13, 0xfffffffffffffffe
mov dword [rbp - 0x44], 2
jmp case.default.0x1802a6b45
mov rsi, qword [rsp + 0x60]
mov r14, qword [rbp - 0x80]
movzx edx, word [rbp + 0x78]
mov ecx, 0xfc00
mov r13, qword [rsp + 0x70]
inc dx
mov edi, dword [rsp + 0x58]
mov r11, qword [rbp + 0x88]
mov rbx, qword [rsp + 0x78]
mov r8d, dword [rsp + 0x50]
mov r9d, dword [rsp + 0x54]
mov dword [rsi], 0x80020000
add rsi, 4
mov word [rbp + 0x78], dx
add r13, 2
mov qword [rsp + 0x60], rsi
jmp case.default.0x1802a6b45
mov r8, qword [rsp + 0x70]
mov rsi, qword [rsp + 0x60]
mov r14, qword [rbp - 0x80]
mov r11, qword [rbp + 0x88]
add r8, 2
mov dword [rsi], 0x80230000
jmp 0x1802a84e7
mov r8, qword [rsp + 0x70]
mov rsi, qword [rsp + 0x60]
mov r14, qword [rbp - 0x80]
mov r11, qword [rbp + 0x88]
add r8, 2
mov dword [rsi], 0x80270000
jmp 0x1802a84e7
mov rax, r14
sub rax, r8
and rax, 0xfffffffffffffffe
cmp rax, 2
jle 0x1802a7c02
movzx edx, word [r8 + 2]
cmp dx, 0x3d
ja 0x1802a7c02
movabs rcx, 0x2000040200000000
bt rcx, rdx
jae 0x1802a7c02
cmp dx, 0x3d
jne 0x1802a8497
mov ecx, 0x80250000
jmp 0x1802a84a8
cmp dx, 0x21
mov ecx, 0x80280000
mov eax, 0x80260000
cmove ecx, eax
mov r9, qword [rsp + 0x60]
lea rdx, [r9 + 4]
lea rsi, [rdx + 4]
mov dword [r9], ecx
mov ecx, 1
mov rax, qword [rbp + 0x80]
mov dword [rax], ecx
mov rcx, r8
sub rcx, qword [r11 + 0x38]
sar rcx, 1
sub rcx, 2
mov rax, rcx
mov qword [rbp - 0x58], rcx
shr rax, 0x20
mov dword [rdx], eax
add r8, 4
mov dword [rsi], ecx
mov qword [rsp + 0x70], r8
movzx edx, word [rbp + 0x78]
add rsi, 4
inc dx
mov qword [rsp + 0x60], rsi
mov word [rbp + 0x78], dx
test r13d, r13d
jle 0x1802a854b
mov r9, qword [rbp - 0x50]
test r9, r9
jne 0x1802a8518
mov r9, qword [r11 + 0x28]
mov qword [rbp - 0x50], r9
jmp 0x1802a852a
add r9, 0xc
mov qword [rbp - 0x50], r9
cmp r9, qword [rbp]
jae 0x1802a8ea0
mov r8d, dword [rsp + 0x50]
mov eax, 2
mov word [r9 + 6], ax
mov eax, r8d
and eax, 0x10424e8
mov word [r9], dx
mov dword [r9 + 8], eax
jmp 0x1802a8550
mov r8d, dword [rsp + 0x50]
mov edi, dword [rsp + 0x58]
mov ecx, 0xfc00
mov r13, qword [rsp + 0x70]
mov rbx, qword [rsp + 0x78]
mov r9d, dword [rsp + 0x54]
jmp case.default.0x1802a6b45
mov r9d, 0x27
mov r8d, dword [rbp - 0x70]
lea rax, [rsp + 0x68]
mov qword [rsp + 0x40], r11
lea rcx, [rbp + 0x70]
mov qword [rsp + 0x38], rax
mov rdx, r14
lea rax, [rbp - 0x6c]
mov qword [rsp + 0x30], rax
lea rax, [rbp - 0x40]
mov qword [rsp + 0x28], rax
lea rax, [rbp - 0x58]
mov qword [rsp + 0x20], rax
call fcn.1802aa910
test eax, eax
je 0x1802a8dcb
mov r11, qword [rbp + 0x88]
mov ecx, 0xffff
mov eax, dword [r11 + 0xd4]
cmp eax, ecx
jae 0x1802a8e59
inc word [rbp + 0x78]
inc eax
mov dword [r11 + 0xd4], eax
or eax, 0x80080000
mov dword [rsi], eax
add rsi, 4
movzx edx, word [r11 + 0xb0]
mov eax, 0x2710
mov qword [rsp + 0x60], rsi
cmp dx, ax
jae 0x1802a8e4b
mov r14d, dword [rbp - 0x6c]
movzx eax, word [r11 + 0xb2]
lea ecx, [r14 + 2]
cmp ecx, eax
jbe 0x1802a8623
lea eax, [r14 + 2]
mov word [r11 + 0xb2], ax
mov rbx, qword [r11 + 0xc0]
xor r10d, r10d
mov r12, qword [rbp - 0x40]
mov r15d, r10d
mov dword [rbp - 0x74], r10d
mov esi, r10d
mov edi, r10d
cmp r10w, dx
jae 0x1802a86b9
movzx eax, word [rbx + 0xc]
cmp r14d, eax
jne 0x1802a8692
mov rdx, qword [rbx]
mov r8, r14
mov rcx, r12
call fcn.1802dce30
mov r11, qword [rbp + 0x88]
test eax, eax
jne 0x1802a8692
mov eax, dword [r11 + 0xd4]
cmp dword [rbx + 8], eax
je 0x1802a86b9
test byte [rsp + 0x50], 0x40
je 0x1802a8e21
mov eax, 1
mov word [rbx + 0xe], ax
mov r15d, eax
mov dword [r11 + 0x12c], eax
jmp 0x1802a86a2
mov eax, dword [r11 + 0xd4]
cmp dword [rbx + 8], eax
je 0x1802a8e2f
movzx eax, word [r11 + 0xb0]
inc esi
add rbx, 0x10
mov dword [rbp - 0x74], esi
mov edi, esi
cmp esi, eax
jl 0x1802a8644
movzx eax, word [r11 + 0xb0]
cmp edi, eax
jge 0x1802a86d7
mov r13, qword [rbp + 0x70]
mov rsi, qword [rsp + 0x60]
mov edi, dword [rsp + 0x58]
jmp 0x1802a8ccc
mov ecx, dword [r11 + 0xc8]
cmp eax, ecx
jb 0x1802a8761
mov rax, qword [r11]
lea edi, [rcx + rcx]
mov ecx, edi
shl rcx, 4
mov rdx, qword [rax + 0x10]
call qword [rax]
mov rbx, rax
test rax, rax
je 0x1802a8e3d
mov rax, qword [rbp + 0x88]
mov rcx, rbx
mov r8d, dword [rax + 0xc8]
mov rdx, qword [rax + 0xc0]
shl r8, 4
call sub.VCRUNTIME140.dll_memcpy
mov r11, qword [rbp + 0x88]
cmp dword [r11 + 0xc8], 0x14
jbe 0x1802a874b
mov r8, qword [r11]
mov rcx, qword [r11 + 0xc0]
mov rdx, qword [r8 + 0x10]
call qword [r8 + 8]
mov r11, qword [rbp + 0x88]
movzx eax, word [r11 + 0xb0]
mov qword [r11 + 0xc0], rbx
mov dword [r11 + 0xc8], edi
mov r13, qword [rbp + 0x70]
mov rsi, qword [rsp + 0x60]
mov edi, dword [rsp + 0x58]
movzx ecx, ax
mov rax, qword [r11 + 0xc0]
add rcx, rcx
mov qword [rax + rcx*8], r12
movzx ecx, word [r11 + 0xb0]
mov rax, qword [r11 + 0xc0]
add rcx, rcx
mov word [rax + rcx*8 + 0xc], r14w
movzx edx, word [r11 + 0xb0]
mov rcx, qword [r11 + 0xc0]
mov eax, dword [r11 + 0xd4]
shl rdx, 4
mov dword [rdx + rcx + 8], eax
movzx ecx, word [r11 + 0xb0]
mov rax, qword [r11 + 0xc0]
add rcx, rcx
mov word [rax + rcx*8 + 0xe], r15w
inc word [r11 + 0xb0]
jmp 0x1802a8ccc
mov r13, qword [rsp + 0x70]
cmp edx, 0x2d
jne 0x1802a88c5
mov rax, r14
sub rax, r13
and rax, 0xfffffffffffffffe
cmp rax, 2
jle 0x1802a88c5
movzx eax, word [r13 + 2]
sub ax, 0x30
cmp ax, 9
ja 0x1802a88c5
sub dx, 0x30
mov r8d, 0xffffffff
cmp dx, 9
jbe 0x1802a8826
mov r8d, dword [r11 + 0xd4]
lea rax, [rsp + 0x68]
mov r9d, 0xffff
mov qword [rsp + 0x30], rax
lea rcx, [rbp + 0x70]
lea rax, [rbp - 0x74]
mov rdx, r14
mov qword [rsp + 0x28], rax
mov dword [rsp + 0x20], 0xa1
call fcn.1802aabb0
test eax, eax
je 0x1802a8dcb
mov eax, dword [rbp - 0x74]
mov r13, qword [rbp + 0x70]
test eax, eax
js 0x1802a8e76
cmp r13, r14
jae 0x1802a8f8e
cmp word [r13], 0x29
jne 0x1802a8f8e
mov r11, qword [rbp + 0x88]
or eax, 0x80200000
mov rcx, r13
mov dword [rsi], eax
add r13, 2
sub rcx, qword [r11 + 0x38]
sar rcx, 1
mov rax, rcx
mov qword [rbp - 0x58], rcx
shr rax, 0x20
mov dword [rsi + 4], eax
mov eax, 1
mov dword [rsi + 8], ecx
mov edi, eax
add rsi, 0xc
mov dword [rsp + 0x58], eax
mov qword [rsp + 0x60], rsi
jmp 0x1802a8cd0
movzx edx, word [rbp + 0x78]
mov r9, qword [rbp - 0x50]
inc dx
mov word [rbp + 0x78], dx
test r9, r9
jne 0x1802a88e3
mov r9, qword [r11 + 0x28]
mov qword [rbp - 0x50], r9
jmp 0x1802a88f5
add r9, 0xc
mov qword [rbp - 0x50], r9
cmp r9, qword [rbp]
jae 0x1802a8ea5
mov r8d, dword [rsp + 0x50]
xor r15d, r15d
mov eax, r8d
mov word [r9], dx
and eax, 0x10424e8
mov word [r9 + 6], r15w
mov dword [r9 + 8], eax
cmp word [r13], 0x7c
jne 0x1802a8974
movzx eax, word [r11 + 0xd4]
mov ecx, 0xfc00
mov edi, dword [rsp + 0x58]
mov rbx, qword [rsp + 0x78]
mov word [r9 + 2], ax
movzx eax, word [r11 + 0xd4]
mov word [r9 + 4], ax
mov eax, 1
mov word [r9 + 6], ax
or dword [r11 + 0xd0], 0x200000
mov r9d, dword [rsp + 0x54]
mov dword [rsi], 0x801a0000
add rsi, 4
mov qword [rsp + 0x60], rsi
add r13, 2
jmp case.default.0x1802a6b45
mov ebx, dword [rsp + 0x50]
mov eax, 1
mov dword [r9 + 2], r15d
mov r11d, r8d
mov dword [rsp + 0x70], r15d
mov r10d, eax
mov dword [rbp - 0x68], r15d
mov r8d, r15d
lea rdx, [rbp - 0x68]
mov r9d, r15d
mov rcx, r13
cmp r13, r14
jae 0x1802a89ba
cmp word [r13], 0x5e
jne 0x1802a89ba
and ebx, 0xfeffdb57
mov r10d, r15d
add r13, 2
mov rcx, r13
cmp rcx, r14
jae 0x1802a8aaf
mov r8, rcx
nop word [rax + rax]
movzx eax, word [r13]
mov rcx, r8
cmp ax, 0x29
je 0x1802a8aa6
cmp ax, 0x3a
je 0x1802a8aa6
movzx eax, ax
lea r13, [r8 + 2]
sub eax, 0x2d
cmp eax, 0x4b
ja case.0x1802a8a13.53
cdqe
movzx eax, byte [rdi + rax + 0x2a91b4]
mov ecx, dword [rdi + rax*4 + 0x2a9190]
add rcx, rdi
jmp rcx
test r10d, r10d
je 0x1802a8e84
lea rdx, [rsp + 0x70]
mov r10d, r15d
mov rcx, r13
jmp 0x1802a8a9a
mov rax, qword [rbp + 0x88]
mov rcx, r13
or dword [rdx], 0x40
or dword [rax + 0xd0], 0x400
jmp 0x1802a8a9a
or dword [rdx], 8
mov rcx, r13
jmp 0x1802a8a9a
or dword [rdx], 0x400
mov rcx, r13
jmp 0x1802a8a9a
or dword [rdx], 0x2000
mov rcx, r13
jmp 0x1802a8a9a
or dword [rdx], 0x20
mov rcx, r13
jmp 0x1802a8a9a
or dword [rdx], 0x40000
mov rcx, r13
jmp 0x1802a8a9a
mov eax, dword [rdx]
mov rcx, r13
bts eax, 7
mov dword [rdx], eax
cmp r13, r14
jae 0x1802a8a9a
cmp word [r13], 0x78
jne 0x1802a8a9a
bts eax, 0x18
lea rcx, [r13 + 2]
mov dword [rdx], eax
mov r13, rcx
mov r8, rcx
cmp r13, r14
jb 0x1802a89d0
mov r9d, dword [rbp - 0x68]
mov r8d, dword [rsp + 0x70]
mov eax, r9d
and eax, 0x1000080
cmp eax, 0x80
je 0x1802a8ac3
test r8b, r8b
jns 0x1802a8ac8
bts r8d, 0x18
or r9d, ebx
not r8d
mov eax, r9d
and eax, r8d
mov dword [rsp + 0x50], eax
cmp rcx, r14
jae 0x1802a8f8e
movzx eax, word [r13]
lea r13, [rcx + 2]
cmp ax, 0x29
jne 0x1802a8b20
mov r15, qword [rbp + 0x88]
movzx edx, r12w
mov r9, qword [rbp - 0x50]
mov word [rbp + 0x78], dx
cmp r9, qword [r15 + 0x28]
jbe 0x1802a8b1a
cmp word [r9 - 0xc], dx
lea rax, [r9 - 0xc]
jne 0x1802a8b1a
mov qword [rbp - 0x50], rax
jmp 0x1802a8b33
mov word [r9], dx
jmp 0x1802a8b33
movzx edx, word [rbp + 0x78]
mov dword [rsi], 0x801a0000
add rsi, 4
mov qword [rsp + 0x60], rsi
mov r8d, dword [rsp + 0x50]
mov ecx, 0xfc00
mov edi, dword [rsp + 0x58]
cmp r8d, r11d
mov r11, qword [rbp + 0x88]
mov rbx, qword [rsp + 0x78]
mov r9d, dword [rsp + 0x54]
je case.default.0x1802a6b45
mov dword [rsi], 0x801b0000
mov dword [rsi + 4], r8d
add rsi, 8
mov qword [rsp + 0x60], rsi
jmp case.default.0x1802a6b45
mov r9, qword [rbp - 0x50]
movzx edx, word [rbp + 0x78]
test r9, r9
je 0x1802a8bae
cmp word [r9], dx
jne 0x1802a8bae
test byte [r9 + 6], 1
je 0x1802a8bae
movzx eax, word [r9 + 4]
mov ecx, dword [r11 + 0xd4]
cmp ecx, eax
jbe 0x1802a8ba2
mov word [r9 + 4], cx
movzx eax, word [r9 + 2]
mov dword [r11 + 0xd4], eax
mov r14, qword [rbp - 0x80]
mov dword [rsi], 0x80010000
add rsi, 4
mov qword [rsp + 0x60], rsi
jmp 0x1802a854b
mov r9, qword [rbp - 0x50]
mov eax, 1
movzx edx, word [rbp + 0x78]
mov edi, eax
mov r8d, dword [rsp + 0x50]
mov dword [rsp + 0x58], eax
test r9, r9
je 0x1802a8c68
cmp word [r9], dx
jne 0x1802a8c68
movzx eax, word [r9 + 6]
and r8d, 0xfefbdb17
or r8d, dword [r9 + 8]
mov dword [rsp + 0x50], r8d
test dil, al
je 0x1802a8c21
movzx ecx, word [r9 + 4]
cmp ecx, dword [r11 + 0xd4]
jbe 0x1802a8c21
mov dword [r11 + 0xd4], ecx
movzx eax, word [r9 + 6]
movzx r11d, ax
not r11w
shr r11d, 1
and r11d, edi
mov dword [rsp + 0x58], r11d
test al, 4
je 0x1802a8c42
mov dword [rsi], 0x80190000
add rsi, 4
mov r15, qword [rbp + 0x88]
cmp r9, qword [r15 + 0x28]
jne 0x1802a8c57
xor eax, eax
mov qword [rbp - 0x50], rax
jmp 0x1802a8c64
sub r9, 0xc
mov dword [rsp + 0x58], r11d
mov qword [rbp - 0x50], r9
mov edi, dword [rsp + 0x58]
mov r13, qword [rsp + 0x70]
test dx, dx
je 0x1802a8eaf
mov r14, qword [rbp - 0x80]
mov eax, 0xffff
mov r11, qword [rbp + 0x88]
add dx, ax
mov rbx, qword [rsp + 0x78]
mov ecx, 0xfc00
mov r9d, dword [rsp + 0x54]
mov dword [rsi], 0x80190000
add rsi, 4
mov qword [rsp + 0x60], rsi
mov word [rbp + 0x78], dx
jmp case.default.0x1802a6b45
mov dword [rsi], r15d
mov eax, 1
mov edi, eax
mov dword [rsp + 0x58], eax
add rsi, 4
mov qword [rsp + 0x60], rsi
mov r13, qword [rsp + 0x70]
mov r14, qword [rbp - 0x80]
mov rbx, qword [rsp + 0x78]
mov r8d, dword [rsp + 0x50]
mov ecx, 0xfc00
movzx edx, word [rbp + 0x78]
mov r9d, dword [rsp + 0x54]
jmp case.default.0x1802a6b45
mov edx, 0x8c
jmp 0x1802a8f93
lea r13, [r14 - 2]
mov edx, 0xb0
jmp 0x1802a8f93
mov edx, 0x76
jmp 0x1802a8f93
mov edx, 0x6d
sub r13, 2
jmp 0x1802a8f93
movzx eax, word [r13]
xor ecx, ecx
cmp ax, 0x3a
lea r13, [r14 - 2]
mov edx, ecx
setne dl
add edx, 0x70
jmp 0x1802a8f93
mov edx, WSACleanup
sub r13, 2
jmp 0x1802a8f93
mov edx, 0x6b
sub r13, 2
jmp 0x1802a8f93
mov edx, 0xab
jmp 0x1802a8f93
mov edx, 0x6c
sub r13, 2
jmp 0x1802a8f93
mov edx, 0x6a
jmp 0x1802a8f93
mov r13, qword [rsp + 0x70]
lea eax, [rcx + 0x7fd90000]
test eax, 0xfffeffff
mov edx, 0xc6
mov eax, 0x80
cmovne edx, eax
jmp 0x1802a8f93
mov r13, qword [rsp + 0x70]
mov edx, 0xbd
jmp 0x1802a8f93
mov r13, qword [rsp + 0x70]
mov edx, 0xc3
jmp 0x1802a8f93
mov edx, 0xa6
jmp 0x1802a8f93
mov edx, 0x8d
jmp 0x1802a8f93
mov r13, qword [rbp + 0x70]
mov edx, dword [rsp + 0x68]
jmp 0x1802a8f93
mov edx, 0xac
jmp 0x1802a8f93
mov edx, 0xb5
mov r13, r9
jmp 0x1802a8f93
mov edx, 0x8a
jmp 0x1802a8f93
mov edx, 0x8b
jmp 0x1802a8f93
mov edx, reloc.WS2_32.dll_WSAStartup
jmp 0x1802a8f93
mov edx, 0xb3
jmp 0x1802a8f93
mov edx, 0x7c
jmp 0x1802a8f93
mov r13, qword [rbp + 0x70]
mov edx, 0x8f
jmp 0x1802a8f93
mov r13, qword [rbp + 0x70]
mov edx, 0xa5
jmp 0x1802a8f93
mov r13, qword [rbp + 0x70]
mov edx, 0x79
jmp 0x1802a8f93
mov edx, 0x95
mov r13, qword [rbp + 0x70]
jmp 0x1802a8f93
mov r13, qword [rbp + 0x70]
mov edx, 0xc5
jmp 0x1802a8f93
mov r13, qword [rsp + 0x70]
mov edx, 0xc5
jmp 0x1802a8f93
mov edx, reloc.WS2_32.dll_WSAStartup
sub r13, 2
jmp 0x1802a8f93
mov edx, 0xc2
add r13, 0xfffffffffffffffe
jmp 0x1802a8f93
mov edx, WSAStartup
add r13, 0xfffffffffffffffe
jmp 0x1802a8f93
mov r13, qword [rsp + 0x70]
mov edx, 0xb8
jmp 0x1802a8f93
mov edx, 0x7a
sub r13, 2
jmp 0x1802a8f93
mov edx, 0x77
jmp 0x1802a8f93
test r9d, r9d
je 0x1802a8ed6
mov edx, 0xa0
jmp 0x1802a8f93
mov r15d, dword [rbp - 0x30]
movzx r12d, word [rbp + 0x78]
mov r8, qword [rbp - 0x20]
mov edx, dword [rbp - 0x38]
mov rcx, rsi
test rbx, rbx
je 0x1802a8efe
mov rax, r13
sub rax, qword [r11 + 0x38]
sar rax, 1
sub eax, dword [rbx + 4]
mov dword [rbx + 8], eax
test r15d, r15d
je 0x1802a8f42
test rbx, rbx
je 0x1802a8f1b
lea rax, [rsi - 0x10]
cmp rbx, rax
jne 0x1802a8f1b
mov eax, 0xff
cmp dword [rbx + 0xc], eax
je 0x1802a8f35
xor eax, eax
mov dword [rsi], 0x80060000
mov dword [rsi + 8], eax
lea rcx, [rsi + 0x10]
mov eax, 0xff
mov rbx, rsi
mov dword [rsi + 0xc], eax
mov rax, r13
sub rax, qword [r11 + 0x38]
sar rax, 1
mov dword [rbx + 4], eax
cmp dword [rbp - 0x14], 0
je 0x1802a8f57
mov dword [rcx], 0x80190000
mov dword [rcx + 4], 0x80160000
jmp 0x1802a8f69
test dl, 4
je 0x1802a8f6d
mov dword [rcx], 0x80190000
mov dword [rcx + 4], 0x80180005
add rcx, 8
cmp rcx, r8
jb 0x1802a8f79
mov edx, 0xa3
jmp 0x1802a8f93
mov dword [rcx], 0x80000000
test r12w, r12w
jne 0x1802a8f8e
xor eax, eax
jmp 0x1802a8faa
mov r13, qword [rsp + 0x70]
mov edx, WSACleanup
mov rax, qword [rbp + 0x88]
sub r13, qword [rax + 0x38]
sar r13, 1
mov qword [rax + 0xa8], r13
mov eax, edx
add rsp, 0x128
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbx
pop rbp
ret