Function at 0x1800192b8
Capabilities:
Parse credit card information

Disassembly:
mov rax, rsp
mov qword [rax + 8], rbx
mov qword [rax + 0x18], rsi
mov qword [rax + 0x20], rdi
push rbp
push r12
push r13
push r14
push r15
lea rbp, [rax - 0x108]
sub rsp, 0x1e0
mov rax, qword [0x18004fa38]
xor rax, rsp
mov qword [rbp + 0xd0], rax
mov byte [rsp + 0x28], 0x20
mov edi, 0xf
movsx eax, byte [0x18004f54b]
mov rsi, rcx
movsxd r13, dword [0x18004f62c]
lea rcx, [rbp + 0x50]
mov dword [rsp + 0x68], 0xbd96760c
mov r12b, 0xa1
mov dword [rbp - 0x50], eax
movzx eax, word [0x18004f5cc]
mov word [rsp + 0x34], ax
mov eax, 0xffffe0c7
mov word [rsp + 0x30], ax
mov eax, dword [0x18004f644]
mov dword [rsp + 0x4c], eax
movzx eax, word [0x18004f54c]
mov word [rsp + 0x2c], ax
movabs rax, 0x85ac93de0b325
mov qword [rsp + 0x70], rax
mov al, 0x69
mov dword [rbp - 0x68], eax
movzx eax, word [0x18004f61c]
movsx r15, byte [0x18004f536]
mov qword [rsp + 0x60], rax
mov byte [rsp + 0x29], 0xb1
movzx eax, word [0x18004f630]
movsx ebx, byte [0x18004f58e]
mov byte [rsp + 0x20], al
mov eax, dword [0x18004f564]
mov qword [rbp - 0x78], 0xde
mov dword [rsp + 0x5c], eax
mov eax, dword [0x18004f62c]
lea eax, [rdi + 0x1b]
mov qword [rbp - 0x30], rdx
mov word [rsp + 0x30], ax
mov eax, 0x912c2136
mov qword [rbp - 0x38], rax
mov eax, dword [0x18004f634]
mov word [rsp + 0x30], ax
movzx eax, word [0x18004f650]
mov word [rsp + 0x30], ax
movsx eax, byte [0x18004f537]
mov word [rsp + 0x30], ax
movzx eax, word [0x18004f61c]
mov dword [rsp + 0x40], eax
movabs rax, 0xaf47fdb194c9c
mov dword [rsp + 0x40], 0x30d019e5
mov qword [rbp - 0x38], rax
mov al, byte [0x18004f54b]
mov rax, qword [0x18004f600]
mov dword [rsp + 0x40], eax
mov eax, dword [0x18004f63c]
mov word [rsp + 0x30], ax
movsxd rax, dword [0x18004f634]
mov qword [rbp - 0x38], rax
mov dword [rsp + 0x40], 0x4c84b937
movzx eax, word [0x18004f650]
mov eax, 0xffffed06
mov word [rsp + 0x30], ax
mov rax, qword [0x18004f610]
mov eax, dword [0x1809e7d20]
dec byte [0x18004f536]
mov byte [rsp + 0x30], 0xbe
mov dword [rsp + 0x38], eax
mov eax, dword [rsp + 0x38]
add eax, 0x210
mov dword [rbp - 0x48], eax
mov eax, dword [rsp + 0x38]
add eax, 0xb0
mov dword [rsp + 0x40], eax
mov eax, dword [rsp + 0x38]
movups xmm0, xmmword [str.AdditionalInformat]
add eax, 0x351
movups xmm1, xmmword [0x180038918]
mov dword [rsp + 0x40], eax
mov eax, dword [0x180038928]
mov dword [rbp + 0x70], eax
movzx eax, word [0x18003892c]
mov word [rbp + 0x74], ax
movups xmmword [rbp + 0x50], xmm0
movups xmmword [rbp + 0x60], xmm1
call qword [sym.imp.KERNEL32.dll_lstrlenW]
movsxd rcx, eax
mov eax, dword [0x1809e7d20]
mov qword [0x18004f5f8], rcx
mov ecx, 0x3921
mov dword [rsp + 0x38], eax
movzx eax, word [rsp + 0x2c]
movsx edx, byte [0x18004f563]
add ax, 0x5b
mov word [0x18004f66c], ax
mov eax, dword [rsp + 0x38]
add eax, 0x3a1
movsx ecx, cx
mov dword [rbp - 0x80], eax
mov eax, dword [rsp + 0x38]
add eax, 0x366
imul edx, ecx
mov dword [rbp - 0x44], eax
add bx, dx
movsx eax, bx
imul eax, eax, 0x3567
cdqe
mov qword [0x18004f620], rax
mov eax, dword [rsp + 0x38]
add eax, 0x2ca
mov dword [rsp + 0x58], eax
mov eax, dword [0x1809e7d20]
mov dword [rsp + 0x38], eax
mov eax, dword [rsp + 0x38]
add eax, 0x18f
mov dword [rbp - 0x58], eax
mov eax, dword [rsp + 0x38]
add eax, 0x1a8
mov dword [rsp + 0x40], eax
lea eax, [rdi - 7]
mov word [rbp - 0x6c], ax
mov eax, dword [rsp + 0x38]
add eax, 0x3cf
cmp dword [0x18004f5cc], 0xffffba99
mov dword [rsp + 0x3c], eax
jb 0x18001957a
mov eax, dword [rsp + 0x5c]
add al, 0x77
mov byte [0x18004f563], al
movsx eax, byte [0x18004f58f]
imul r10d, eax, 0xffffffc5
mov dword [rbp - 0x68], r10d
jmp 0x18001957e
mov r10d, dword [rbp - 0x68]
mov eax, dword [0x1809e7d20]
xor ebx, ebx
mov dword [rsp + 0x38], eax
movsx eax, word [0x18004f66c]
mov edx, dword [rsp + 0x68]
add edx, eax
movzx eax, word [0x18004f66c]
and ax, dx
mov word [0x18004f66c], ax
mov eax, 1
add qword [0x18004f5f8], rax
mov eax, dword [rsp + 0x38]
add eax, 0x3b5
mov dword [rbp - 0x40], eax
mov eax, dword [rsp + 0x38]
add eax, 0x12a
mov dword [rbp - 0x4c], eax
movsx rcx, byte [rsp + 0x20]
mov rax, qword [rsp + 0x60]
add al, cl
mov ecx, ebx
mov byte [rsp + 0x20], al
movzx eax, word [0x18004f61c]
test ax, ax
mov eax, dword [rsp + 0x38]
mov r14d, dword [0x18004f644]
sete cl
add eax, 0x3ea
mov qword [0x18004f658], rcx
add r14d, 0x932f7c44
cmp byte [0x18004f563], bl
mov dword [rsp + 0x40], eax
movsx eax, r10b
movzx ecx, al
mov dword [rsp + 0x48], eax
movzx eax, byte [0x18004f628]
cmovne ecx, eax
mov eax, dword [0x1809e7d20]
mov byte [0x18004f5b6], cl
mov dword [rsp + 0x38], eax
mov eax, dword [0x18004f654]
test eax, eax
je 0x18001964c
mov rax, qword [0x18004f620]
jmp 0x180019653
mov rax, qword [0x18004f600]
mov word [rsp + 0x30], ax
mov rcx, 0xffffffffffff6263
movzx eax, byte [rsp + 0x28]
mov edx, 4
add eax, 0x4e
mov dword [0x18004f634], eax
mov eax, dword [rsp + 0x38]
add eax, 0x273
mov dword [rsp + 0x40], eax
mov eax, dword [rsp + 0x38]
add eax, 0x21
mov dword [rsp + 0x40], eax
cmp r13, 0xffffffffffffba99
mov rax, qword [0x18004f660]
cmovb rax, rcx
mov qword [0x18004f660], rax
mov eax, dword [rsp + 0x38]
add eax, 0xf5
mov dword [rsp + 0x54], eax
mov eax, dword [0x1809e7d20]
mov dword [rsp + 0x38], eax
mov eax, dword [rsp + 0x38]
add eax, 0x3ce
mov dword [rsp + 0x78], eax
movsx eax, word [0x18004f628]
mov dword [0x18004f5cc], eax
mov eax, dword [rsp + 0x38]
movsx rcx, byte [0x18004f58f]
add eax, 0xc9
mov dword [rsp + 0x24], eax
mov rax, qword [rsp + 0x70]
cmp rcx, rax
jne 0x180019712
mov rcx, qword [rbp - 0x78]
mov rax, qword [rbp - 0x78]
mov r11d, dword [rbp - 0x50]
sub rcx, r11
add rax, rcx
mov qword [rbp - 0x78], rax
mov word [0x18004f638], dx
jmp 0x180019753
mov rax, qword [0x18004f600]
test rax, rax
jne 0x180019726
mov al, byte [rsp + 0x20]
test al, al
je 0x18001974f
mov al, byte [0x18004f628]
movzx ecx, word [0x18004f640]
and al, 0xc
mov byte [0x18004f563], al
add cx, cx
mov rax, qword [0x18004f608]
add ax, cx
mov word [0x18004f640], ax
mov r11d, dword [rbp - 0x50]
mov eax, dword [rsp + 0x38]
add eax, 0xdd
mov dword [rsp + 0x40], eax
mov eax, dword [0x1809e7d20]
mov dword [rsp + 0x38], eax
movzx eax, byte [rsp + 0x28]
imul rcx, rax, 0xe1bf
mov rax, qword [rsp + 0x60]
and rax, rcx
mov qword [rsp + 0x60], rax
movzx eax, byte [rsp + 0x29]
movzx r9d, word [rsp + 0x34]
sub ax, di
sub ax, word [0x18004f658]
mov rcx, qword [rsp + 0x60]
add r9w, ax
mov eax, dword [rsp + 0x68]
movsx edx, ax
movsx r8d, cx
imul r8d, edx
movsx eax, r11w
movsx ecx, r8w
imul ecx, eax
mov eax, 0x5941
cwde
movsx edx, cx
mov rcx, rbx
imul edx, eax
mov eax, dword [rsp + 0x38]
add eax, 0x122
not dx
and dx, r9w
not dx
mov word [0x18004f628], dx
mov dword [rsp + 0x44], eax
mov eax, dword [rsp + 0x38]
add eax, 0x208
mov dword [rsp + 0x40], eax
mov eax, dword [rsp + 0x38]
mov edx, dword [0x1809e7d20]
add eax, 0x1af
mov dword [rsp + 0x7c], eax
movsx eax, word [0x18004f628]
cmp eax, dword [0x18004f644]
mov dword [rbp - 0x60], edx
sete cl
mov qword [0x18004f660], rcx
mov dword [rsp + 0x38], edx
movsx eax, word [0x18004f650]
movsx edx, word [rsp + 0x34]
xor edx, eax
movzx eax, word [rsp + 0x2c]
movsx ecx, al
movsx eax, byte [0x18004f618]
imul eax, ecx
lea ecx, [r15 - 0x6e]
or al, dl
mov byte [rsp + 0x20], al
mov al, byte [rsp + 0x28]
add cl, al
mov byte [rsp + 0x28], cl
mov eax, dword [rsp + 0x38]
add eax, 0x2c8
mov dword [rbp - 0x70], eax
mov eax, dword [rsp + 0x38]
add eax, 0x319
mov dword [rbp - 0x64], eax
mov eax, dword [rsp + 0x38]
add eax, 0x14f
mov dword [rsp + 0x40], eax
mov eax, dword [0x1809e7d20]
mov dword [rsp + 0x50], eax
mov eax, dword [rsp + 0x50]
add eax, 0x205
mov dword [rsp + 0x38], eax
mov eax, dword [rsp + 0x50]
add eax, 0x35c
mov dword [rsp + 0x40], eax
movzx eax, word [rsp + 0x2c]
add qword [0x18004f660], rax
movzx ecx, word [0x18004f61c]
movzx eax, word [0x18004f61c]
xor ecx, dword [0x18004f644]
add ax, cx
mov word [0x18004f61c], ax
mov eax, dword [rsp + 0x50]
add eax, 0x2e9
mov dword [rsp + 0x40], eax
mov eax, dword [0x1809e7d20]
mov dword [rsp + 0x50], eax
movzx eax, word [0x18004f61c]
test ax, ax
je 0x18001990b
mov edi, dword [0x18004f654]
mov al, byte [0x18004f5b6]
and edi, 0x48e2
sub al, r10b
mov byte [0x18004f5b6], al
mov eax, dword [rsp + 0x50]
add eax, 0x242
mov dword [rsp + 0x40], eax
mov eax, dword [rsp + 0x50]
add eax, 0x32f
mov dword [rbp - 0x28], eax
mov eax, dword [0x18004f63c]
test eax, eax
je 0x180019940
movzx eax, byte [rsp + 0x29]
mov rcx, qword [rsp + 0x70]
xor cl, al
mov byte [rsp + 0x29], cl
jmp 0x18001996e
mov rax, qword [rsp + 0x60]
imul rcx, rax, 0xf11a
movzx eax, word [0x18004f61c]
add ax, cx
mov word [0x18004f61c], ax
movabs rax, 0x17b37808a8cd3
mov qword [0x18004f658], rax
mov eax, dword [rsp + 0x50]
add eax, 0x2ce
mov dword [rsp + 0x50], eax
mov ecx, dword [rbp - 0x48]
mov eax, dword [rbp - 0x48]
sub ecx, eax
mov eax, dword [rbp - 0x48]
cmp eax, ecx
je 0x18001cf1a
movzx eax, word [0x180038940]
lea rcx, [rbp - 0x10]
movups xmm0, xmmword [str._common_discovery_]
mov word [rbp], ax
mov al, byte [0x180038942]
mov byte [rbp + 2], al
movups xmmword [rbp - 0x10], xmm0
call qword [sym.imp.KERNEL32.dll_lstrlenA]
cmp byte [rsi], 0xe9
movsxd rcx, eax
mov qword [rsp + 0x60], rcx
jne 0x180019a9e
movzx eax, word [0x18004f630]
mov edx, ebx
cmp eax, edi
mov ecx, ebx
movzx eax, word [0x18004f630]
mov r8d, 2
setb dl
cmp ax, 0x15
setb cl
cmp edx, ecx
jb 0x180019a65
mov al, byte [0x18004f535]
test al, al
je 0x180019a1c
movzx ecx, word [0x18004f650]
mov al, cl
add al, al
add cl, al
mov eax, dword [rbp - 0x50]
shl cl, 4
mov byte [0x18004f5b6], cl
mov word [0x18004f638], ax
jmp 0x180019a8a
movsx rax, word [rsp + 0x34]
cmp rax, qword [0x18004f620]
mov eax, dword [rsp + 0x4c]
setle bl
cmp ebx, eax
je 0x180019a3a
mov qword [rbp - 0x78], r8
jmp 0x180019a8a
movsx edx, byte [0x18004f54b]
movzx eax, word [0x18004f61c]
not edx
cmp eax, edx
jne 0x180019a8a
mov rax, qword [0x18004f600]
mov al, byte [0x18004f54b]
mov eax, dword [rsp + 0x68]
mov al, byte [rsp + 0x28]
jmp 0x180019a8a
mov rcx, qword [rsp + 0x70]
mov eax, 0x99ad450d
sub rcx, qword [0x18004f660]
mov qword [rsp + 0x70], rcx
mov rcx, qword [0x18004f600]
add rcx, rax
mov qword [rsp + 0x60], rcx
mov rcx, qword [rbp - 0x30]
mov eax, 1
mov qword [rcx], rax
mov eax, r8d
jmp 0x18001cf1c
mov eax, dword [rsp + 0x58]
mov edx, dword [rbp - 0x44]
imul ecx, eax, 0x1e6
add edx, ecx
mov ecx, dword [rbp - 0x80]
mov eax, dword [rsp + 0x58]
add ecx, edx
add eax, 0x288
cmp ecx, eax
je 0x18001cf1a
mov eax, dword [0x1809e7d20]
mov dword [rsp + 0x50], eax
mov eax, dword [rsp + 0x50]
add eax, 0x9b
cmp qword [0x18004f620], r15
mov dword [rbp - 0x80], eax
je 0x180019b25
mov byte [rsp + 0x29], 0x6f
mov ecx, dword [0x18004f654]
mov rax, qword [0x18004f610]
movsx edx, al
mov eax, ebx
movsx r8d, cl
imul r8d, edx
test edi, edi
cmove eax, dword [0x18004f564]
test eax, eax
mov al, byte [0x18004f618]
not al
sete r12b
xor al, r8b
add r12b, al
mov eax, dword [rsp + 0x5c]
sub r12b, al
mov eax, dword [rsp + 0x50]
mov edx, ebx
add eax, 0x99
mov r8d, 0x39
mov dword [rsp + 0x58], eax
movsx ecx, byte [0x18004f54b]
movzx eax, word [0x18004f66c]
cmp cx, ax
mov al, byte [0x18004f54b]
mov ecx, ebx
setle dl
cmp al, r8b
setle cl
cmp edx, ecx
jne 0x180019b6d
mov rax, qword [0x18004f608]
mov r14d, 0xf02c866a
mov eax, dword [rsp + 0x50]
mov r9d, 2
mov r8d, dword [rbp - 0x60]
add eax, 0x1673
mov dword [rbp - 0x80], eax
mov eax, dword [rsp + 0x58]
mov ecx, dword [rsp + 0x58]
or eax, 0x1b
add eax, 0xffffffa1
add ecx, eax
xor ecx, 0x3b2
mov dword [rbp - 0x80], ecx
mov byte [rsp + 0x20], r9b
mov rax, qword [rsp + 0x60]
imul rcx, r13, 0xb8
add rcx, rax
mov eax, dword [0x18004f54c]
mov qword [rsp + 0x60], rcx
mov dword [rsp + 0x5c], eax
movsx ecx, byte [rsp + 0x20]
sub ecx, 1
je 0x180019bf6
cmp ecx, 1
jne 0x180019c0b
movsx eax, byte [0x18004f537]
mov rcx, qword [0x18004f610]
add eax, 0x6279cc04
cdqe
sub rcx, rax
mov qword [0x18004f610], rcx
movsx edi, byte [0x18004f537]
jmp 0x180019c0b
movzx eax, word [rsp + 0x30]
mov ecx, 0x5ac2
xor ax, cx
add r8w, ax
mov dword [rbp - 0x60], r8d
mov eax, dword [0x1809e7d20]
mov edx, ebx
mov dword [rsp + 0x50], eax
mov eax, dword [0x18004f62c]
mov cl, byte [0x18004f536]
xor al, cl
and cl, al
mov eax, dword [rsp + 0x50]
add eax, 0x4d00
mov byte [0x18004f536], cl
mov dword [rsp + 0x58], eax
movzx ecx, byte [rsp + 0x29]
movzx eax, word [rsp + 0x2c]
cmp ax, cx
movzx eax, word [rsp + 0x2c]
mov ecx, ebx
setbe dl
cmp ax, 0x60
mov eax, dword [0x18004f634]
setbe cl
cmp edx, ecx
ja 0x180019c80
add al, 0x2f
mov ecx, 0x9a602f55
add byte [0x18004f563], al
movsx eax, word [0x18004f628]
sub ecx, eax
add dword [0x18004f5cc], ecx
jmp 0x180019c8e
mov al, byte [0x18004f58e]
xor al, 0x6a
mov byte [0x18004f537], al
mov eax, dword [rsp + 0x50]
mov ecx, ebx
add eax, 0xdd
mov dword [rsp + 0x48], eax
mov eax, dword [rsp + 0x50]
add eax, 0x107
mov dword [rsp + 0x48], eax
mov rax, qword [rsp + 0x70]
mov word [0x18004f638], cx
movsxd rcx, dword [rsp + 0x4c]
mov rax, qword [0x18004f600]
add eax, ecx
mov word [0x18004f628], r15w
mov dword [rsp + 0x4c], eax
mov ecx, dword [rsp + 0x58]
mov eax, dword [rsp + 0x58]
xor ecx, eax
mov eax, dword [rsp + 0x48]
or eax, 0x4659
imul eax, ecx
movzx ecx, r15b
xor eax, 0x1ff
cmp word [0x18004f618], bx
mov dword [rbp - 0x44], eax
mov eax, dword [0x1809e7d20]
mov byte [0x18004f535], r9b
mov dword [rsp + 0x50], eax
movzx eax, byte [0x18004f620]
cmovne ecx, eax
movsx eax, r12b
mov byte [0x18004f537], cl
mov dword [rsp + 0x5c], eax
mov eax, dword [rsp + 0x50]
add eax, 0x101
mov dword [rsp + 0x48], eax
mov al, byte [0x18004f535]
test al, al
movzx eax, r8w
jne 0x180019d42
movsx eax, word [rsp + 0x34]
mov word [0x18004f638], ax
lea rcx, [rbp + 8]
mov eax, dword [rsp + 0x50]
add eax, 0x269e
mov dword [rsp + 0x58], eax
movzx eax, word [0x18004f668]
add ax, 0x12
mov word [rsp + 0x2c], ax
mov eax, dword [rsp + 0x50]
movups xmm0, xmmword [str.Verbose_level_mess]
add eax, 0xf5
mov dword [rsp + 0x50], eax
movzx eax, word [0x180038958]
mov word [rbp + 0x18], ax
mov al, byte [0x18003895a]
mov byte [rbp + 0x1a], al
movups xmmword [rbp + 8], xmm0
call qword [sym.imp.KERNEL32.dll_lstrlenA]
mov byte [rsp + 0x20], al
movzx ecx, word [0x18004f638]
movzx eax, word [0x18004f630]
cmp cx, ax
jb 0x180019dcd
mov r9d, dword [0x18004f654]
mov eax, dword [rsp + 0x5c]
xor r9w, 0x12
mov dword [rbp - 0x6c], r9d
imul r13, rax
jmp 0x180019dd1
mov r9d, dword [rbp - 0x6c]
mov eax, dword [rsp + 0x48]
mov ecx, dword [rsp + 0x58]
or eax, 0xd8b
imul ecx, eax
mov eax, dword [rsp + 0x58]
imul eax, ecx
add eax, 0x1b8b6488
cmp byte [rsi], 0x90
mov dword [rsp + 0x48], eax
jne 0x180019edd
cmp byte [rsi + 1], 0xe9
jne 0x180019edd
cmp byte [0x18004f536], bl
mov edx, ebx
mov eax, dword [0x1809e7d20]
mov dword [rsp + 0x38], eax
sete dl
movsx ecx, word [rsp + 0x30]
movzx eax, word [rbp - 0x60]
not ecx
imul ecx, edx
mov edx, ebx
test ecx, ecx
mov ecx, ebx
sete dl
sub edx, eax
movsx eax, byte [0x18004f58f]
add eax, edx
sete cl
mov word [0x18004f66c], cx
mov ecx, dword [rsp + 0x38]
mov eax, dword [rbp - 0x80]
add ecx, eax
mov dword [rsp + 0x40], ecx
mov ecx, dword [rsp + 0x38]
mov eax, dword [rbp - 0x44]
add ecx, eax
mov dword [rsp + 0x40], ecx
mov eax, dword [rsp + 0x38]
add eax, 0x33a
mov dword [rsp + 0x38], eax
mov edx, dword [rsp + 0x38]
mov eax, dword [rsp + 0x48]
add edx, eax
mov ecx, dword [rsp + 0x38]
mov eax, dword [rsp + 0x38]
imul ecx, edx
cmp ecx, eax
je 0x18001cf1a
mov ecx, ebx
mov eax, edi
cmp rax, qword [0x18004f660]
setne cl
cmp edi, 0x34
setne bl
cmp ecx, ebx
jne 0x180019ebe
movzx edx, word [0x18004f628]
movsx eax, byte [0x18004f5b6]
add dx, dx
sub dx, ax
mov word [0x18004f628], dx
jmp 0x180019ecc
mov ecx, dword [rbp - 0x50]
add ecx, 0xffffff65
mov qword [rsp + 0x60], rcx
mov rcx, qword [rbp - 0x30]
mov eax, 2
mov qword [rcx], rax
jmp 0x18001cf1c
mov edx, dword [rbp - 0x58]
mov eax, dword [rbp - 0x58]
add edx, eax
mov ecx, dword [rbp - 0x58]
mov eax, dword [rsp + 0x3c]
imul ecx, edx
add eax, 0x38b
cmp ecx, eax
je 0x18001cf1a
movsx rcx, byte [rsp + 0x20]
mov rax, qword [0x18004f610]
cmp rax, rcx
jg 0x180019f2e
movsx ecx, byte [0x18004f54b]
mov r14d, ebx
movzx eax, byte [rsp + 0x28]
mov r15, qword [rsp + 0x60]
cmp eax, ecx
sete r14b
sar r15, 7
jmp 0x180019f58
movzx ecx, word [0x18004f630]
mov eax, edi
not eax
mov rdx, rbx
sub eax, ecx
cmp word [rbp - 0x60], bx
mov ecx, eax
mov rax, qword [rbp - 0x78]
sete dl
add rdx, rax
xor rdx, rcx
mov qword [0x18004f620], rdx
mov eax, dword [0x1809e7d20]
mov dword [rbp - 0x58], eax
movsx edx, byte [0x18004f5b6]
movsx eax, byte [0x18004f5b6]
mov ecx, dword [rsp + 0x68]
add eax, edx
add cl, al
mov byte [0x18004f5b6], cl
mov eax, dword [rbp - 0x58]
add eax, 0xbaba
cmp dword [0x18004f54c], r14d
mov dword [rsp + 0x3c], eax
jge 0x18001a03a
mov byte [0x18004f5b6], 2
mov rax, qword [rsp + 0x70]
movsx eax, byte [0x18004f5b6]
mov r12b, byte [0x18004f5cc]
mov ecx, eax
test al, al
je 0x18001a013
sub ecx, 1
je 0x180019ff3
mov r11d, dword [rbp - 0x68]
cmp ecx, 1
jne 0x18001a090
movzx ecx, word [0x18004f638]
sub rcx, 0xdb
mov qword [rsp + 0x70], rcx
mov ecx, dword [0x18004f5cc]
add ecx, 0xffffff1d
mov qword [0x18004f5f8], rcx
jmp 0x18001a090
mov rax, qword [rsp + 0x70]
movsx ecx, al
imul eax, ecx, 0x29
add byte [0x18004f58f], al
mov eax, dword [0x18004f54c]
sar eax, 8
mov dword [rsp + 0x5c], eax
jmp 0x18001a05f
movsx rax, word [0x18004f66c]
mov qword [0x18004f660], rax
movsxd rax, dword [rsp + 0x4c]
mov rdx, qword [0x18004f658]
xor rdx, rax
add qword [0x18004f658], rdx
jmp 0x18001a05f
mov eax, dword [0x18004f654]
not eax
test eax, eax
je 0x18001a065
mov rcx, qword [rsp + 0x60]
sub rcx, qword [0x18004f620]
mov rax, qword [rsp + 0x60]
or rax, rcx
mov qword [rsp + 0x60], rax
mov r11d, dword [rbp - 0x68]
jmp 0x18001a090
movzx eax, word [rsp + 0x2c]
mov rax, qword [0x18004f608]
movzx eax, word [0x18004f61c]
movsx eax, byte [rsp + 0x29]
imul r11d, eax, 0x56
mov qword [0x18004f658], 0xb1
mov dword [rbp - 0x68], r11d
mov eax, dword [rbp - 0x58]
add eax, 0xb7
mov dword [rsp + 0x58], eax
mov eax, dword [rbp - 0x58]
add eax, 0x4f
mov dword [rsp + 0x48], eax
movzx eax, word [0x18004f61c]
test ax, ax
jne 0x18001a0e0
movsx eax, r12b
imul eax, eax
test eax, eax
je 0x18001a0e0
mov eax, 0x168b
mov ecx, 0x5f5a
add eax, r13d
mov word [rsp + 0x34], ax
movsx eax, byte [0x18004f58e]
sub ax, cx
mov word [0x18004f630], ax
mov eax, dword [rsp + 0x58]
mov ecx, dword [rsp + 0x58]
add eax, 0x83b8
imul ecx, eax
mov eax, dword [rsp + 0x3c]
imul eax, ecx
sub eax, 0xd47282f
mov dword [rsp + 0x48], eax
movabs rax, 0x46650d51043f5
mov r10d, dword [rsp + 0x5c]
movsxd rcx, dword [0x18004f63c]
add rcx, rax
mov dword [rbp - 0x60], r10d
mov qword [rbp - 0x78], rcx
movabs rcx, 0x5fd1008511f06
mov eax, dword [0x18004f63c]
add eax, 0xa4
cmp word [0x18004f628], bx
cdqe
mov qword [0x18004f610], rax
mov eax, dword [0x1809e7d20]
mov dword [rbp - 0x58], eax
movzx eax, word [0x18004f618]
cmovne ax, word [0x18004f620]
mov word [0x18004f668], ax
mov eax, dword [rbp - 0x58]
add eax, 0x930e
mov dword [rsp + 0x3c], eax
mov rax, qword [0x18004f600]
imul rax, rcx
mov qword [0x18004f610], rax
mov eax, dword [rbp - 0x58]
add eax, 0xba
mov dword [rsp + 0x3c], eax
mov rax, qword [rsp + 0x70]
sub eax, 0x2b297238
mov dword [rsp + 0x68], eax
mov eax, dword [rbp - 0x58]
add eax, 0xfbe7
mov dword [rsp + 0x3c], eax
mov eax, dword [rsp + 0x3c]
imul ecx, eax, 0x6f
xor ecx, 0x6d3b21
mov dword [rsp + 0x3c], ecx
movzx edx, word [0x18004f638]
movsx eax, byte [0x18004f537]
cmp edx, eax
jl 0x18001a223
mov eax, dword [0x18004f654]
mov edx, ebx
test eax, eax
mov r8d, ebx
movsx eax, word [0x18004f650]
mov ecx, ebx
sete dl
cmp eax, edx
mov edx, dword [0x18004f63c]
mov eax, dword [0x18004f5cc]
not edx
setl r8b
not eax
cmp eax, edx
setb cl
cmp ecx, r8d
jne 0x18001a223
mov ecx, dword [0x18004f564]
add ecx, 0xffff4281
mov qword [rsp + 0x60], rcx
movsx eax, word [0x18004f66c]
imul eax, eax, 0x2a
movsxd r15, eax
mov eax, dword [0x1809e7d20]
mov r8, rbx
mov ecx, dword [0x18004f564]
mov r12d, 8
mov dword [rbp - 0x58], eax
mov dl, r12b
mov rax, qword [rsp + 0x70]
add rax, rcx
mov qword [rbp - 0x20], rdx
movsx rcx, byte [0x18004f54b]
movzx eax, word [0x18004f618]
sete r8b
xor rcx, qword [0x18004f658]
movzx edx, cx
lea ecx, [rdi - 0x3c494506]
imul edx, eax
add dx, r8w
mov word [rsp + 0x2c], dx
mov eax, dword [rbp - 0x58]
or qword [0x18004f5f8], rcx
add eax, 0x91e4
mov dword [rbp - 0x80], eax
mov eax, dword [rbp - 0x58]
add eax, 0x89a3
mov dword [rbp - 0x80], eax
mov eax, dword [rbp - 0x58]
add eax, 0x4516
mov dword [rsp + 0x58], eax
movsx r8d, byte [0x18004f5b6]
mov ecx, dword [rsp + 0x58]
neg r8w
mov eax, dword [rsp + 0x58]
xor ecx, eax
add ecx, 0x2f6
cmp byte [rsi], 0x8b
mov dword [rbp - 0x80], ecx
jne 0x18001a333
cmp byte [rsi + 1], 0xff
jne 0x18001a44c
cmp byte [rsi + 2], 0xe9
jne 0x18001a44c
mov al, byte [rsp + 0x28]
mov al, byte [rsp + 0x20]
mov byte [0x180b1cfe4], r14b
movsx ecx, r9w
test al, al
je 0x18001a311
not edi
imul edi, ecx
test edi, edi
je 0x18001a329
movsx eax, byte [0x18004f58e]
sub ax, word [0x18004f620]
mov word [0x18004f61c], ax
jmp 0x18001a329
imul edi, dword [0x18004f660]
not ecx
imul ecx, dword [0x18004f620]
sub ecx, edi
mov dword [0x18004f54c], ecx
mov eax, 2
jmp 0x18001cf0d
cmp byte [rsi], 0x68
jne 0x18001a44c
cmp byte [rsi + 5], 0xc3
jne 0x18001a44c
mov eax, dword [0x1809e7d20]
mov dword [rbp - 0x58], eax
mov ecx, dword [rbp - 0x58]
mov eax, dword [rsp + 0x48]
add ecx, eax
mov dword [rsp + 0x24], ecx
mov ecx, dword [rbp - 0x58]
mov eax, dword [rsp + 0x3c]
add ecx, eax
cmp r8w, word [0x18004f668]
mov dword [rsp + 0x38], ecx
jae 0x18001a37c
cmp byte [0x18004f58e], 0x41
jge 0x18001a3cf
movzx eax, r10b
cmp r15, rax
jne 0x18001a3a5
movabs rax, 0x5c2cbf5ba6c9a
mov qword [0x18004f600], rax
mov eax, dword [0x18004f564]
shr eax, 1
mov word [rsp + 0x30], ax
jmp 0x18001a3cf
movsx edx, word [rsp + 0x34]
movsx eax, byte [0x18004f54b]
not edx
cmp edx, eax
jge 0x18001a3cf
movsx eax, word [0x18004f618]
test r10b, r10b
cmovne eax, dword [0x18004f62c]
cdqe
mov qword [rsp + 0x70], rax
mov eax, dword [rbp - 0x58]
add eax, 0x3b
mov dword [rsp + 0x58], eax
mov edx, dword [rsp + 0x58]
mov eax, dword [rsp + 0x38]
add edx, eax
mov r8d, dword [rsp + 0x38]
mov eax, dword [rsp + 0x24]
imul r8d, eax
mov eax, dword [rsp + 0x58]
mov ecx, dword [rbp - 0x80]
sub ecx, eax
mov eax, dword [rsp + 0x38]
add ecx, eax
mov eax, dword [rsp + 0x24]
add eax, ecx
or r8d, edx
cmp r8d, eax
je 0x18001cf1a
mov edx, ebx
movzx eax, r10b
cmp dword [0x18004f644], eax
setle dl
cmp dword [0x18004f644], 5
setle bl
cmp edx, ebx
ja 0x18001c02e
imul rax, qword [0x18004f648], 0x7635
mov ecx, dword [rsp + 0x4c]
or ecx, eax
mov dword [rsp + 0x4c], ecx
jmp 0x18001c02e
mov ecx, dword [rbp - 0x4c]
mov eax, dword [rbp - 0x40]
imul ecx, eax
mov eax, dword [rbp - 0x40]
imul eax, ecx
imul ecx, eax, 0x85
mov eax, dword [rbp - 0x4c]
cmp ecx, eax
je 0x18001cf1a
cmp byte [0x18004f563], bl
mov r15d, 0xe7
je 0x18001a4d0
mov rcx, qword [0x18004f610]
mov edx, ebx
movzx eax, r10b
cmp rax, rcx
mov eax, ebx
sete dl
cmp r10b, 0xb
sete al
cmp edx, eax
jb 0x18001a4c4
movzx eax, r10b
lea r11d, [r9 - 0x75]
add r11b, byte [0x18004f564]
sub ax, r15w
mov word [0x18004f650], ax
mov rax, qword [0x18004f600]
add r11b, al
mov dword [rbp - 0x68], r11d
jmp 0x18001a4d0
mov eax, 0x2316
mov word [0x18004f618], ax
cmp r8w, r12w
jne 0x18001a510
mov rax, qword [0x18004f5f8]
add rax, 0xffffffffb4ef9b4e
mov qword [0x18004f658], rax
movsx eax, byte [0x18004f537]
movsx ecx, word [rsp + 0x30]
movsx r8d, cl
imul r8d, eax
mov al, byte [0x18004f537]
add r8b, al
mov byte [0x18004f537], r8b
jmp 0x18001a539
mov eax, 0x2eaa
mov ecx, 0xae
add ax, word [0x18004f564]
mov word [0x18004f638], ax
movzx eax, word [0x18004f61c]
sub ax, cx
mov word [0x18004f61c], ax
mov eax, dword [0x1809e7d20]
mov dword [rbp - 0x58], eax
mov eax, dword [0x18004f63c]
mov rcx, qword [rsp + 0x60]
imul eax, eax, 0xd69f
cdqe
sub rcx, rax
mov qword [rsp + 0x60], rcx
mov eax, dword [rbp - 0x58]
add eax, 0x105
mov dword [rsp + 0x3c], eax
movzx eax, word [rsp + 0x34]
mov eax, dword [rbp - 0x58]
movsx r12d, word [0x1809e7d20]
add eax, 0x9a
mov dword [rbp - 0x4c], eax
movsx eax, byte [0x18004f58e]
imul ecx, eax, 0x39fe
mov dword [0x18004f62c], ecx
mov eax, dword [rbp - 0x58]
add eax, 0x2cd
cmp byte [rsi], 0x90
mov dword [rbp - 0x80], eax
jne 0x18001a5cc
cmp byte [rsi + 1], 0x68
jne 0x18001a5cc
cmp byte [rsi + 6], 0xc3
jne 0x18001a5cc
movsx ecx, byte [0x18004f537]
mov eax, 3
sub cx, 0x28
add word [0x18004f668], cx
jmp 0x18001abe8
mov ecx, dword [rsp + 0x54]
mov eax, dword [rsp + 0x54]
or ecx, eax
mov eax, dword [rsp + 0x54]
imul edx, ecx, 0x48e
imul ecx, eax, 0x37e
cmp ecx, edx
je 0x18001cf1a
cmp dword [0x18004f54c], ebx
je 0x18001a61e
movsx rcx, word [0x18004f66c]
mov rax, qword [rbp - 0x78]
xor rax, rcx
mov qword [rbp - 0x78], rax
movsx eax, word [0x18004f628]
sub eax, 0xb1
cdqe
mov qword [0x18004f5f8], rax
mov eax, dword [0x1809e7d20]
mov r9, rbx
mov dword [rsp + 0x54], eax
movsx edx, byte [0x18004f537]
movsx ecx, r13b
imul edx, ecx
mov byte [0x18004f537], dl
movsxd rcx, dword [rsp + 0x4c]
mov rax, qword [rbp - 0x78]
add eax, ecx
mov dword [rsp + 0x4c], eax
mov eax, dword [rsp + 0x54]
add eax, 0x6e
mov dword [rsp + 0x3c], eax
mov rax, qword [0x18004f600]
mov word [0x18004f668], ax
mov eax, dword [rsp + 0x54]
add eax, 0xab
mov dword [rsp + 0x48], eax
movsx rax, r11b
cmp rax, qword [0x18004f660]
mov qword [rbp - 0x58], rax
ja 0x18001a6b9
movsx ecx, word [rsp + 0x34]
mov edx, ebx
mov eax, dword [rsp + 0x68]
not ecx
cmp ecx, edi
mov ecx, ebx
setb dl
test eax, eax
setne cl
test edx, ecx
je 0x18001a6b9
mov ecx, dword [0x18004f654]
mov rax, qword [0x18004f608]
sub rax, rcx
mov qword [0x18004f608], rax
mov eax, dword [rsp + 0x54]
mov edx, ebx
add eax, 0xe6
mov dword [rsp + 0x48], eax
mov eax, dword [rsp + 0x3c]
mov ecx, dword [rsp + 0x48]
or eax, 0x35e0
xor ecx, eax
mov eax, dword [0x1809e7d20]
xor ecx, 0x34ef
mov dword [rbp - 0x44], ecx
mov dword [rsp + 0x54], eax
movsx ecx, byte [0x18004f535]
mov eax, dword [0x18004f62c]
cmp ecx, eax
mov al, byte [0x18004f535]
mov ecx, ebx
sete dl
cmp al, 0x3f
sete cl
cmp edx, ecx
ja 0x18001a728
movzx eax, word [0x18004f638]
mov r10b, byte [0x18004f54c]
sub dword [rbp - 0x50], eax
add r10b, 0x47
mov dword [rbp - 0x60], r10d
jmp 0x18001a73d
mov al, byte [0x18004f5b6]
test al, al
je 0x18001a73d
mov rax, qword [rsp + 0x60]
add al, 1
mov qword [rbp - 0x20], rax
mov eax, dword [rsp + 0x54]
add eax, 0xc5
mov dword [rsp + 0x48], eax
mov eax, dword [rsp + 0x54]
add eax, 0xc054
mov dword [rsp + 0x3c], eax
movsx ecx, byte [0x18004f5b6]
mov eax, dword [rsp + 0x5c]
cmp eax, ecx
je 0x18001a76f
test r10b, r10b
je 0x18001a76f
mov eax, dword [rsp + 0x4c]
movzx eax, word [0x18004f61c]
mov edx, ebx
mov r15, qword [rsp + 0x60]
mov eax, 0x679f
add r15w, ax
mov eax, dword [rsp + 0x54]
add eax, 0xb51d
mov dword [rbp - 0x40], eax
movzx eax, byte [rsp + 0x29]
cmp qword [0x18004f658], rax
mov eax, ebx
setl dl
cmp qword [0x18004f658], 0x24
setl al
cmp edx, eax
ja 0x18001a80e
movsx ecx, byte [0x18004f537]
mov r8d, ebx
mov eax, dword [rsp + 0x4c]
sub eax, ecx
movsx ecx, byte [0x18004f536]
imul eax, ecx
neg eax
cdqe
mov qword [0x18004f5f8], rax
mov eax, dword [0x18004f63c]
test eax, eax
mov eax, dword [0x18004f5cc]
movzx edx, word [0x18004f638]
sete r8b
neg eax
sbb ecx, ecx
and ecx, 0xffffff14
lea eax, [rcx + 0xed]
add eax, r8d
add eax, edx
not eax
cdqe
mov qword [rsp + 0x70], rax
movsx edx, word [0x18004f638]
mov ecx, 0xffffea08
movsx eax, byte [0x18004f58f]
movsx ecx, cx
imul edx, ecx
mov ecx, 0x5c28
sub cx, ax
add r15w, cx
mov qword [rbp - 0x38], r15
mov word [rsp + 0x34], dx
mov ecx, dword [rbp - 0x4c]
mov eax, dword [rbp - 0x4c]
sub ecx, eax
mov eax, dword [rbp - 0x80]
mov edx, dword [rsp + 0x3c]
imul eax, ecx
imul ecx, eax, 0x8a
mov eax, dword [rsp + 0x48]
imul edx, eax
mov eax, dword [0x1809e7d20]
xor edx, 0x9402fb
sub edx, ecx
mov dword [rbp - 0x80], edx
mov dword [rsp + 0x54], eax
mov al, byte [0x18004f5b6]
test al, al
je 0x18001a936
cmp dword [0x18004f564], ebx
mov rcx, rbx
mov rax, qword [rsp + 0x70]
sete cl
cmp rax, rcx
jbe 0x18001a8c0
movzx ecx, word [rsp + 0x2c]
movsx eax, byte [0x18004f58f]
sub ecx, eax
movzx eax, word [rsp + 0x2c]
sub cx, ax
mov word [rsp + 0x2c], cx
mov rax, qword [rsp + 0x70]
mov qword [0x18004f608], rax
jmp 0x18001a969
movsx eax, byte [0x18004f54b]
test edi, edi
mov ecx, dword [0x18004f63c]
mov edx, ebx
sete dl
mov r8d, ebx
cmp eax, edx
mov edx, ebx
sete r8b
cmp ecx, r12d
setne dl
cmp edx, r8d
mov r8d, dword [rbp - 0x6c]
jae 0x18001a96d
mov al, r8b
movsx ecx, r13b
not al
mov r9, r13
movsx edx, al
mov al, byte [0x18004f535]
imul edx, ecx
mov rcx, qword [rsp + 0x70]
add cl, 1
add cl, byte [0x18004f54c]
add dl, al
movsx eax, dl
movsx edx, cl
imul edx, eax
movsx eax, byte [0x18004f537]
movsx ecx, dl
mov edx, eax
imul edx, ecx
mov byte [0x18004f563], dl
jmp 0x18001a96d
movzx ecx, word [0x18004f630]
movabs rax, 0xcc163356d39bd
cmp rcx, rax
ja 0x18001a969
mov al, r12b
xor al, 0x4f
mov byte [0x18004f535], al
mov rax, qword [rsp + 0x60]
mov rcx, qword [rsp + 0x60]
sub rcx, rax
mov qword [rsp + 0x60], rcx
mov r8d, dword [rbp - 0x6c]
mov eax, dword [rsp + 0x54]
mov edx, 1
add word [0x18004f640], dx
add eax, 0x4ea2
mov dword [rsp + 0x3c], eax
mov byte [0x18004f537], bl
mov al, byte [0x18004f537]
test al, al
jne 0x18001a9ba
movsx rax, word [0x18004f618]
mov rcx, qword [0x18004f608]
imul rcx, rax
mov eax, 0x8452
mov qword [0x18004f608], rcx
mov word [rsp + 0x2c], ax
mov eax, dword [rsp + 0x54]
add eax, 0xc0
mov dword [rsp + 0x48], eax
test r15w, r15w
je 0x18001a9f2
mov eax, edi
cmp qword [0x18004f620], rax
jle 0x18001a9e6
mov al, byte [0x1809e7d20]
mov byte [0x18004f58e], al
jmp 0x18001aa27
mov r9d, dword [0x1809e7d20]
mov r12d, ebx
jmp 0x18001aa27
cmp qword [0x18004f658], rbx
je 0x18001aa27
mov eax, dword [rsp + 0x4c]
mov word [0x180b1d11c], ax
movsxd rax, dword [0x18004f62c]
mov rdx, qword [rsp + 0x70]
add rdx, rax
mov rax, qword [rsp + 0x70]
add rax, rdx
mov edx, 1
mov qword [rsp + 0x70], rax
mov eax, dword [rsp + 0x54]
mov r15, qword [rbp - 0x20]
add eax, 0xa402
mov dword [rsp + 0x3c], eax
mov rax, qword [0x18004f610]
test rax, rax
je 0x18001aa73
movzx eax, word [0x18004f668]
mov ecx, r14d
xor ecx, edi
add ecx, eax
movsx eax, byte [0x18004f563]
add ecx, eax
movsx eax, r15b
add eax, ecx
mov qword [rsp + 0x60], rax
mov rax, qword [rbp - 0x78]
add rax, rdx
mov qword [rbp - 0x78], rax
jmp 0x18001aa82
movzx eax, word [rsp + 0x2c]
and eax, 0x3a
mov qword [0x18004f648], rax
mov ecx, dword [rsp + 0x3c]
mov eax, dword [rsp + 0x48]
add ecx, eax
xor ecx, 0xa4fe
cmp byte [rsi], 0xff
mov dword [rsp + 0x48], ecx
jne 0x18001abf8
cmp byte [rsi + 1], 0x25
jne 0x18001abf8
cmp byte [rsi + 2], bl
jne 0x18001abf8
mov eax, dword [0x1809e7d20]
mov dword [rsp + 0x54], eax
mov ecx, dword [rsp + 0x54]
mov eax, dword [rbp - 0x44]
add ecx, eax
mov dword [rsp + 0x3c], ecx
mov ecx, dword [rsp + 0x54]
mov eax, dword [rbp - 0x80]
add ecx, eax
movsxd rax, dword [0x18004f54c]
mov dword [rbp - 0x80], ecx
cmp r9, rax
jb 0x18001aaed
mov al, byte [0x1809e7d20]
mov byte [0x18004f54b], al
mov eax, dword [rsp + 0x54]
add eax, 0x8a
mov dword [rsp + 0x40], eax
mov edx, dword [rsp + 0x3c]
mov eax, dword [rsp + 0x48]
add edx, eax
mov eax, dword [rbp - 0x80]
cmp edx, eax
je 0x18001cf1a
mov edx, dword [0x18004f5cc]
not edx
movsx eax, r15b
add edx, eax
movsx eax, word [rsp + 0x34]
sub edx, eax
mov rax, rbx
add edx, 1
sete al
sub rax, r13
mov qword [0x18004f658], rax
mov rax, qword [rbp - 0x78]
cmp qword [0x18004f620], rax
jne 0x18001abd6
movsxd rcx, dword [0x18004f634]
mov edx, ebx
mov rax, qword [rsp + 0x70]
cmp rax, rcx
mov rax, qword [rsp + 0x70]
mov ecx, ebx
setne dl
cmp rax, 0x4d
setne cl
cmp edx, ecx
jae 0x18001ab85
movsx rax, byte [0x18004f563]
movabs rcx, 0xf7e1b3c570870
sub rax, rcx
jmp 0x18001abdc
cmp byte [0x18004f536], bl
je 0x18001abe3
movzx eax, word [0x18004f630]
movzx ecx, word [rsp + 0x2c]
sub cx, ax
mov word [rsp + 0x2c], cx
mov rcx, qword [rsp + 0x70]
cmp qword [0x18004f648], rcx
mov ecx, ebx
movzx edx, byte [rsp + 0x29]
mov eax, dword [rsp + 0x5c]
sete cl
imul edx, r14d
not eax
xor edx, ecx
movsx ecx, r8w
add eax, edx
add ecx, eax
add ecx, edi
sete bl
mov dword [rsp + 0x5c], ebx
jmp 0x18001abe3
mov eax, dword [0x1809e7d20]
mov qword [0x18004f648], rax
mov eax, 4
mov rcx, qword [rbp - 0x30]
mov qword [rcx], 2
jmp 0x18001cf1c
mov edx, dword [rsp + 0x24]
mov eax, dword [rsp + 0x78]
imul edx, eax
mov eax, dword [rsp + 0x24]
mov ecx, dword [rsp + 0x24]
sub edx, eax
mov eax, dword [rsp + 0x78]
imul ecx, eax
add edx, 0xfffffd58
cmp ecx, edx
je 0x18001cf1a
movsx ecx, word [rsp + 0x34]
sub ecx, 0xdc17
mov dword [0x18004f644], ecx
movsx ecx, byte [rsp + 0x20]
add cl, byte [0x18004f536]
mov eax, dword [0x1809e7d20]
mov byte [rsp + 0x20], cl
mov dword [rsp + 0x24], eax
movzx eax, word [rsp + 0x30]
test ax, ax
je 0x18001ac64
movzx eax, word [0x1809e7d20]
mov word [rsp + 0x30], ax
jmp 0x18001ac86
mov rax, qword [0x18004f600]
test rax, rax
je 0x18001ac86
mov rax, qword [0x18004f600]
add al, 0x61
mov byte [0x18004f563], al
mov byte [0x18004f537], 0x89
mov eax, dword [rsp + 0x24]
mov rcx, rbx
add eax, 0x3d5
movsx r8d, r15b
cmp dword [0x18004f564], ebx
mov edx, ebx
mov dword [rsp + 0x50], eax
mov rax, qword [rsp + 0x70]
sete cl
cmp rcx, rax
mov dword [rbp - 0x48], r8d
mov eax, dword [0x18004f62c]
mov ecx, ebx
setae dl
cmp r8d, eax
sete cl
cmp edx, ecx
je 0x18001acd9
mov rax, qword [rbp - 0x78]
mov ecx, 0x2f
sub cl, al
add byte [0x18004f536], cl
jmp 0x18001ad43
mov edx, dword [rsp + 0x5c]
mov r8, rbx
movsx rcx, byte [0x18004f537]
movsx eax, byte [0x18004f58e]
xor edx, eax
mov rax, qword [rbp - 0x78]
sub rax, rcx
mov cl, r13b
test edx, edx
cmove r8, rax
test r15b, r15b
sete al
sub cl, al
mov al, byte [rsp + 0x29]
not al
movsx edx, cl
sub al, 0x11
mov ecx, ebx
movsx eax, al
imul edx, eax
test r8, r8
not dl
movzx eax, dl
cmove ecx, eax
mov rax, qword [rsp + 0x70]
mov byte [0x18004f58f], cl
mov cl, byte [0x18004f563]
sub cl, 0x52
add al, cl
mov byte [0x18004f563], al
mov eax, dword [rsp + 0x24]
movabs rcx, 0x39afe97a0c6f7
add eax, 0x112
mov edx, 4
mov dword [rbp - 0x4c], eax
mov eax, dword [rsp + 0x24]
add rcx, qword [0x18004f660]
add eax, 0x21f
mov dword [rsp + 0x3c], eax
mov eax, dword [0x1809e7d20]
mov dword [rsp + 0x24], eax
mov word [rsp + 0x34], dx
mov qword [rsp + 0x70], rcx
movsx eax, word [rsp + 0x34]
mov ecx, eax
test eax, eax
je 0x18001adf2
sub ecx, 1
je 0x18001adcd
sub ecx, 1
je 0x18001adbb
sub ecx, 1
je 0x18001adad
mov edx, dword [rbp - 0x6c]
cmp ecx, 1
jne 0x18001ae0b
inc r13
jmp 0x18001ae0b
movsx eax, r11b
add eax, 0xc8ff
movsxd r9, eax
jmp 0x18001aded
movsx eax, r12w
shl eax, 7
cdqe
mov qword [0x18004f5f8], rax
jmp 0x18001aded
movzx edx, word [0x18004f650]
mov edi, ebx
movsx eax, word [0x18004f66c]
test dx, dx
cmove edi, eax
mov eax, dword [rsp + 0x4c]
mov byte [0x18004f5b6], bl
mov edx, dword [rbp - 0x6c]
jmp 0x18001ae0b
mov edx, dword [rbp - 0x6c]
mov eax, dword [rbp - 0x50]
test dx, dx
jne 0x18001ae04
movsx eax, byte [0x18004f54b]
mov word [0x18004f618], ax
mov eax, dword [rsp + 0x24]
add eax, 0x84
mov dword [rsp + 0x3c], eax
mov eax, 1
mov word [rsp + 0x30], ax
movsx eax, byte [0x180a63d58]
mov dword [rsp + 0x58], eax
movzx eax, byte [rsp + 0x28]
mov cl, byte [rsp + 0x28]
add cl, dl
add cl, al
mov byte [rsp + 0x28], cl
movsx eax, word [rsp + 0x30]
test eax, eax
je 0x18001ae6a
cmp eax, 1
jne 0x18001aeae
mov eax, dword [rsp + 0x68]
mov word [rsp + 0x30], ax
mov eax, 0x1a3d
movsx r9d, byte [rsp + 0x20]
add r9w, ax
mov dword [rbp - 0x6c], r9d
jmp 0x18001aeb2
movzx eax, word [rsp + 0x2c]
mov ecx, 1
not eax
mov r14d, ecx
sub eax, ecx
mov edx, 0xffff
cdqe
mov rcx, rbx
sub r9, rax
mov rax, qword [0x18004f610]
test rax, rax
mov rax, qword [rsp + 0x70]
sete cl
add rcx, rax
mov eax, dword [rsp + 0x5c]
cmp rcx, rax
cmove dx, r9w
mov word [rsp + 0x2c], dx
mov r9d, dword [rbp - 0x6c]
mov eax, dword [rsp + 0x24]
add eax, 0xd7
mov dword [rsp + 0x78], eax
movsx eax, r12w
mov dword [rbp - 0x50], eax
imul eax, eax, 0x4026
movsxd rcx, eax
mov qword [rbp - 0x78], rcx
mov eax, dword [rsp + 0x24]
add eax, 0x1756
mov dword [rsp + 0x3c], eax
movzx eax, word [0x18004f66c]
test ax, ax
je 0x18001af18
movzx eax, word [rsp + 0x2c]
mov ecx, ebx
test r14d, r14d
sete cl
add eax, ecx
mov ecx, dword [0x18004f634]
neg eax
cdqe
sub rax, qword [0x18004f5f8]
add cl, al
not cl
mov byte [0x18004f5b6], cl
jmp 0x18001af33
mov eax, dword [0x18004f634]
test eax, eax
jne 0x18001af33
mov ecx, dword [0x18004f63c]
movsx eax, r9w
imul ecx, eax
mov dword [rsp + 0x68], ecx
movsxd rcx, dword [0x18004f54c]
mov edx, ebx
mov rax, r13
not rax
cmp rax, rcx
movzx eax, word [0x18004f61c]
setne dl
cmp edx, eax
jbe 0x18001af57
mov al, byte [rsp + 0x29]
mov r15, qword [rsp + 0x70]
mov eax, 0x96cc1eb5
mov ecx, dword [rsp + 0x3c]
add r15, rax
mov eax, dword [rsp + 0x78]
xor ecx, eax
mov eax, dword [rsp + 0x78]
sub ecx, eax
add ecx, 0x5f
mov qword [rbp - 0x18], r15
xor ecx, 0x147e
mov dword [rbp - 0x44], ecx
movsx eax, byte [rsp + 0x20]
mov edx, dword [0x18004f634]
movsx ecx, byte [0x18004f5b6]
add edx, eax
mov r8d, dword [rsp + 0x5c]
movsx eax, byte [0x18004f536]
not eax
imul ecx, edx
movsx rdx, word [0x18004f650]
imul eax, eax, 0xb9
imul r8d, ecx
movsxd rcx, eax
mov rax, qword [rbp - 0x78]
imul rdx, rcx
imul rax, rdx
sub r8, rax
mov eax, dword [0x1809e7d20]
mov qword [rbp - 0x78], r8
mov dword [rsp + 0x24], eax
mov eax, dword [rsp + 0x24]
add eax, 0xc1
mov dword [rsp + 0x3c], eax
mov eax, dword [rsp + 0x24]
add eax, 0x96d6
mov dword [rsp + 0x3c], eax
movsx eax, byte [rsp + 0x20]
mov edx, dword [0x18004f634]
imul edx, eax
mov eax, dword [0x18004f634]
add eax, edx
mov dword [0x18004f634], eax
mov eax, dword [rsp + 0x24]
add eax, 0x555b
mov dword [rsp + 0x3c], eax
movzx eax, word [rsp + 0x34]
mov eax, dword [rsp + 0x3c]
xor eax, 0x57a8
mov dword [rbp - 0x40], eax
mov eax, dword [0x1809e7d20]
mov dword [rsp + 0x24], eax
mov byte [0x18004f58f], al
mov eax, dword [rsp + 0x24]
add eax, 0x79
mov dword [rsp + 0x3c], eax
mov eax, dword [rsp + 0x24]
add eax, 0x2c
mov dword [rsp + 0x78], eax
mov eax, dword [rsp + 0x24]
add eax, 0x87cc
mov dword [rsp + 0x3c], eax
movsx ecx, word [0x18004f650]
add ecx, dword [rbp - 0x50]
not ecx
mov dword [rsp + 0x68], ecx
mov ecx, dword [rsp + 0x78]
mov eax, dword [rsp + 0x78]
or ecx, eax
mov eax, dword [0x1809e7d20]
add ecx, 0x2e2
mov dword [rsp + 0x78], ecx
mov dword [rsp + 0x24], eax
mov eax, dword [rsp + 0x24]
add eax, 0x4acc
mov dword [rbp - 0x80], eax
mov al, byte [rsp + 0x20]
cmp al, r11b
jle 0x18001b0a9
mov eax, dword [rsp + 0x4c]
movzx eax, word [rsp + 0x30]
mov eax, dword [rsp + 0x24]
add eax, 0x1d03
mov dword [rsp + 0x48], eax
mov eax, dword [rsp + 0x24]
add eax, 0x82
mov dword [rsp + 0x3c], eax
mov eax, dword [0x18004f634]
not eax
xor eax, r14d
mov dword [rsp + 0x5c], eax
movsx rcx, byte [0x18004f5b6]
mov rax, qword [rsp + 0x70]
xor eax, ecx
mov dword [rsp + 0x5c], eax
mov ecx, dword [rsp + 0x3c]
mov eax, dword [rsp + 0x48]
or ecx, eax
mov edx, dword [rbp - 0x80]
mov eax, 0x6006
or edx, ecx
or edx, 0xe5
sub eax, edx
cmp byte [rsi], 0x8b
mov dword [rsp + 0x48], eax
jne 0x18001b29a
cmp byte [rsi + 1], 0xff
jne 0x18001b29a
cmp byte [rsi + 2], 0xff
jne 0x18001b29a
cmp byte [rsi + 3], 0x25
jne 0x18001b29a
mov rax, qword [rbp - 0x78]
cmp rax, qword [0x18004f648]
je 0x18001b1b0
mov rdx, qword [rbp - 0x20]
mov ecx, ebx
movsx rax, dl
cmp r15, rax
mov eax, ebx
setbe cl
cmp r15, 0x5e
setbe al
cmp ecx, eax
ja 0x18001b193
movsx edx, byte [0x18004f537]
movsx eax, word [rsp + 0x34]
sub edx, eax
mov rax, qword [rbp - 0x78]
imul ecx, eax, 0x3965b7b2
movsxd rdx, edx
add ecx, edx
mov dword [0x18004f62c], ecx
movzx eax, byte [rsp + 0x29]
mov ecx, dword [0x18004f62c]
xor ecx, eax
mov dword [0x18004f62c], ecx
jmp 0x18001b1f7
test r15, r15
je 0x18001b1f7
mov rax, qword [0x18004f608]
mov ecx, 0x28c1
sub ax, cx
mov word [0x18004f640], ax
jmp 0x18001b1f7
mov rax, qword [0x18004f658]
not r14d
movsxd rcx, r14d
not rax
cmp rcx, rax
je 0x18001b1d8
movzx eax, r10b
mov ecx, 0x79e9
add ax, cx
mov word [rsp + 0x30], ax
jmp 0x18001b1f7
mov rax, qword [0x18004f610]
test rax, rax
je 0x18001b1f7
mov ecx, dword [0x18004f5cc]
add ecx, 0x21c2
mov qword [0x18004f648], rcx
movzx eax, word [0x18004f630]
mov eax, dword [0x1809e7d20]
mov dword [rsp + 0x24], eax
movsx eax, byte [0x18004f537]
cmp r12w, ax
jg 0x18001b223
mov rax, qword [rbp - 0x78]
shr rax, 7
mov byte [0x18004f536], al
mov ecx, dword [rsp + 0x24]
mov eax, dword [rbp - 0x44]
add ecx, eax
mov dword [rsp + 0x3c], ecx
mov ecx, ebx
mov rax, qword [0x18004f610]
cmp qword [rbp - 0x58], rax
setl cl
cmp r11b, 0x55
setl bl
cmp ecx, ebx
je 0x18001b250
movzx eax, word [rsp + 0x30]
mov ecx, dword [rsp + 0x24]
mov eax, dword [rbp - 0x40]
add ecx, eax
mov dword [rbp - 0x4c], ecx
mov ecx, dword [rsp + 0x24]
mov eax, dword [rsp + 0x78]
add ecx, eax
mov dword [rsp + 0x78], ecx
mov edx, dword [rsp + 0x78]
mov eax, dword [rbp - 0x4c]
add edx, eax
mov ecx, dword [rsp + 0x3c]
add ecx, edx
mov edx, dword [rsp + 0x48]
add edx, ecx
mov ecx, dword [rsp + 0x78]
mov eax, dword [rbp - 0x4c]
sub ecx, eax
cmp ecx, edx
je 0x18001cf1a
mov eax, 4
jmp 0x18001c4d2
mov ecx, dword [rsp + 0x7c]
mov eax, dword [rsp + 0x44]
sub ecx, eax
mov eax, dword [rsp + 0x7c]
cmp eax, ecx
je 0x18001cf1a
movups xmm0, xmmword [str.pwd_url]
lea rcx, [rbp + 0xa0]
movdqu xmmword [rbp + 0xa0], xmm0
call qword [sym.imp.KERNEL32.dll_lstrlenW]
mov word [0x18004f630], ax
mov rax, qword [rbp - 0x78]
test rax, rax
je 0x18001b32a
movsx edx, byte [0x18004f58e]
movsx ecx, byte [rsp + 0x20]
not edx
add ecx, edx
je 0x18001b39f
movsx edx, word [0x18004f650]
mov r8d, dword [0x18004f63c]
movzx eax, byte [rsp + 0x29]
not r8d
movsx r9d, word [0x18004f618]
sub r8d, edx
movsx edx, word [rsp + 0x30]
add eax, r8d
sub r9d, dword [rbp - 0x50]
add edx, eax
add edx, r9d
mov dword [0x18004f62c], edx
mov r8d, dword [rbp - 0x60]
mov eax, dword [0x1809e7d20]
mov edx, ebx
mov dword [rsp + 0x24], eax
mov rcx, rbx
mov eax, dword [rsp + 0x24]
add eax, 0xc5
cmp dword [rsp + 0x58], ebx
mov dword [rsp + 0x44], eax
mov eax, dword [0x18004f644]
sete dl
not eax
mov qword [rsp + 0x60], 3
cmp eax, edx
mov rax, qword [rsp + 0x60]
sete cl
dec rax
mov qword [0x18004f660], rcx
sub rax, 1
je 0x18001b3be
cmp rax, 1
jne 0x18001b3d1
movsx eax, byte [rsp + 0x20]
add eax, 0xc272
cdqe
mov qword [0x18004f610], rax
lea eax, [r14 - 0x10]
mov byte [rsp + 0x20], al
jmp 0x18001b3d1
mov r8d, dword [rbp - 0x60]
movzx eax, r8b
cmp eax, 0x67e2
ja 0x18001b32e
sub edi, dword [0x18004f648]
mov byte [rsp + 0x20], 0x37
jmp 0x18001b32e
mov ecx, 0x2baf
movzx eax, r13w
sub ax, cx
add word [0x18004f628], ax
mov eax, dword [rsp + 0x24]
add eax, 0xd8dd
movsx r11, r12w
mov dword [rsp + 0x44], eax
mov eax, dword [rsp + 0x24]
add eax, 0xdb53
mov dword [rsp + 0x3c], eax
movsx eax, r12w
sub eax, 0x4adeb20
mov dword [0x18004f634], eax
mov rax, qword [0x18004f5f8]
shl rax, 2
mov dword [0x18004f63c], eax
mov eax, dword [rsp + 0x44]
imul ecx, eax, 0x2f
mov rax, qword [rbp - 0x38]
xor ecx, 0x27d2e9
mov dword [rsp + 0x48], ecx
mov ecx, 0x6274
movzx edx, word [0x18004f630]
sub ax, cx
add word [0x18004f668], ax
mov eax, dword [0x1809e7d20]
movzx ecx, r15w
imul edx, ecx
cmp qword [0x18004f660], rbx
mov word [0x18004f630], dx
mov dword [rsp + 0x24], eax
je 0x18001b480
cmp byte [0x18004f563], bl
je 0x18001b487
mov ecx, dword [rsp + 0x68]
mov rax, qword [0x18004f610]
movzx r14d, word [0x180aba200]
sub cl, al
not cl
mov byte [rsp + 0x20], cl
jmp 0x18001b487
mov qword [0x18004f5f8], rax
mov eax, dword [rsp + 0x24]
mov edx, ebx
add eax, 0x74
movzx r9d, r8b
mov dword [rsp + 0x44], eax
movzx ecx, byte [rsp + 0x28]
mov al, byte [rsp + 0x28]
sub ecx, r9d
sub cl, al
mov byte [rsp + 0x28], cl
mov eax, dword [rsp + 0x24]
add eax, 0x3eeb
mov dword [rsp + 0x44], eax
movzx eax, byte [rsp + 0x29]
movzx ecx, byte [rsp + 0x28]
sub ax, 0x3d
add cx, ax
mov eax, dword [rsp + 0x24]
add eax, 0x10bf
mov word [0x18004f618], cx
mov dword [rsp + 0x44], eax
movsx rax, byte [0x18004f5b6]
cmp r13, rax
mov eax, ebx
setae dl
cmp r13, 0xb
setae al
cmp edx, eax
jae 0x18001b567
movsx rax, word [rsp + 0x34]
mov r8d, 1
cmp r15, rax
jne 0x18001b52e
movzx eax, word [0x18004f66c]
sub ax, r8w
mov word [0x18004f66c], ax
mov eax, dword [rbp - 0x48]
add eax, 0x85958b86
movsxd rcx, eax
mov qword [0x18004f608], rcx
jmp 0x18001b583
movzx eax, word [0x18004f638]
test ax, ax
je 0x18001b583
movzx ecx, word [0x18004f638]
mov al, byte [0x18004f54b]
add cl, 0x46
xor cl, al
movsx eax, word [0x18004f618]
mov byte [0x18004f54b], cl
imul ecx, eax, 0x4427a5ff
mov dword [0x18004f634], ecx
jmp 0x18001b583
movzx edx, r8b
mov ecx, 0xffffb11b
movsx ecx, cx
mov r8d, 1
imul edx, ecx
mov word [0x18004f618], dx
mov r13d, dword [rsp + 0x4c]
imul r13d, dword [0x18004f5cc]
mov eax, dword [rsp + 0x44]
sub eax, 0xf45
mov dword [rbp - 0x80], eax
mov eax, dword [0x1809e7d20]
mov qword [rbp - 0x38], r13
mov dword [rsp + 0x24], eax
cmp word [rbp - 0x6c], bx
jne 0x18001b5c2
mov rax, qword [0x18004f600]
shl rax, 4
mov word [0x18004f668], ax
mov eax, dword [rsp + 0x24]
add eax, 0xb0e7
mov dword [rsp + 0x44], eax
movzx eax, byte [rsp + 0x28]
cmp rax, r15
je 0x18001b600
mov rax, qword [rbp - 0x78]
test rax, rax
je 0x18001b600
mov rax, qword [0x18004f600]
mov ecx, r14d
sub ecx, edi
not ecx
imul ecx, eax
mov dword [0x18004f54c], ecx
mov dword [0x18004f63c], r8d
mov eax, dword [rsp + 0x24]
add eax, 0x7d
mov dword [rsp + 0x44], eax
mov eax, dword [rsp + 0x24]
add eax, 0x6a33
mov dword [rsp + 0x7c], eax
movsx eax, word [0x18004f66c]
movsx ecx, word [rsp + 0x34]
imul ecx, eax
mov eax, r14d
not eax
movsxd rdx, ecx
movsxd rcx, eax
mov rax, qword [rsp + 0x70]
sub rcx, rax
imul rcx, rdx
mov edx, ebx
mov qword [0x18004f610], rcx
lea ecx, [rdi + 0xbd]
mov qword [rsp + 0x60], rcx
mov ecx, 0x3c5
mov eax, dword [rsp + 0x7c]
sub ecx, eax
mov eax, dword [rsp + 0x7c]
add eax, ecx
mov dword [rbp - 0x44], eax
mov eax, dword [0x1809e7d20]
mov dword [rsp + 0x24], eax
mov eax, dword [rsp + 0x24]
add eax, 0xbd32
mov dword [rsp + 0x3c], eax
mov eax, dword [rsp + 0x24]
movsx rcx, byte [0x18004f563]
add eax, 0x21
cmp rcx, r15
mov dword [rsp + 0x44], eax
mov eax, ebx
mov r15d, 4
seta dl
cmp cl, 0x29
setg al
cmp edx, eax
je 0x18001b6c9
mov rax, qword [rsp + 0x70]
mov ecx, 0xffffdcad
movsx ecx, cx
movsx edx, ax
imul edx, ecx
mov byte [0x18004f536], r15b
mov word [rsp + 0x30], dx
jmp 0x18001b6d5
movzx eax, word [0x18004f66c]
movzx eax, word [rsp + 0x34]
mov eax, dword [rsp + 0x24]
mov rdx, qword [rbp - 0x58]
add eax, 0x4b
mov dword [rsp + 0x44], eax
mov al, byte [rsp + 0x28]
test al, al
jne 0x18001b6f0
mov rdx, qword [rbp - 0x78]
cmp qword [0x18004f620], rbx
mov eax, dword [rbp - 0x68]
movsx r10d, al
mov byte [0x18004f5b6], dl
je 0x18001b71d
movsxd rax, r14d
movabs rcx, 0xc40ca366b0e
sub rcx, rax
add qword [0x18004f658], rcx
mov ecx, dword [rbp - 0x4c]
mov eax, dword [rsp + 0x50]
sub ecx, eax
mov r8d, dword [rbp - 0x4c]
mov eax, dword [rsp + 0x50]
add r8d, eax
mov edx, dword [rsp + 0x50]
mov eax, dword [rsp + 0x50]
xor edx, eax
imul r8d, ecx
mov ecx, dword [rsp + 0x44]
mov eax, dword [rsp + 0x3c]
imul eax, ecx
imul edx, r8d
add eax, 0xffc89492
add eax, edx
mov dword [rbp - 0x4c], eax
mov eax, dword [0x1809e7d20]
mov dword [rsp + 0x24], eax
movzx ecx, word [0x18004f638]
movzx eax, byte [rsp + 0x28]
sub cx, ax
mov word [0x18004f638], cx
mov eax, dword [rsp + 0x24]
add eax, 0xe5d7
mov dword [rsp + 0x44], eax
mov byte [0x18004f537], bl
movzx eax, word [0x18004f638]
imul eax, eax, 0x68a66e67
mov dword [rsp + 0x68], eax
movsx rcx, word [rsp + 0x34]
mov al, byte [0x18004f537]
xor rcx, r11
mov qword [0x18004f620], rcx
test al, al
jne 0x18001b7c4
movzx eax, word [rsp + 0x30]
add ax, r13w
mov word [rsp + 0x30], ax
mov eax, dword [rsp + 0x24]
mov ecx, ebx
add eax, 0x6c
mov edx, r10d
mov dword [rsp + 0x44], eax
mov al, byte [0x18004f535]
test al, al
movzx eax, byte [rsp + 0x29]
sete cl
sub edx, ecx
add eax, edx
mov dword [rsp + 0x5c], eax
mov eax, dword [rsp + 0x24]
add eax, 0x2f
cmp word [0x18004f668], bx
mov dword [rsp + 0x44], eax
je 0x18001b861
mov rax, qword [rbp - 0x78]
not rax
test rax, rax
jne 0x18001b844
mov eax, dword [rsp + 0x68]
sub rax, r13
jne 0x18001b844
movzx ecx, word [0x18004f630]
test r12w, r12w
sete al
add cl, 0x2b
sub al, byte [0x18004f658]
add al, cl
mov dword [rbp - 0x68], eax
mov eax, dword [0x18004f63c]
sub eax, 0xeff5
cdqe
mov qword [rbp - 0x78], rax
jmp 0x18001b87b
imul eax, r10d, 0xa743
movsxd r13, eax
movsx eax, word [0x18004f650]
add dword [0x18004f564], eax
mov qword [rbp - 0x38], r13
jmp 0x18001b87b
imul r9d, dword [0x18004f5cc]
test r9d, r9d
je 0x18001b87b
mov eax, dword [rsp + 0x4c]
add eax, 0xbc0
mov dword [rsp + 0x68], eax
mov eax, dword [rsp + 0x44]
mov ecx, ebx
add eax, 0x43e1
or eax, 0x951a50
sub eax, 0x955cab
mov dword [rbp - 0x40], eax
mov eax, dword [0x1809e7d20]
mov dword [rsp + 0x24], eax
movzx eax, word [0x18004f638]
test ax, ax
movzx eax, r13w
not ax
sete cl
add cx, ax
movzx eax, word [0x18004f638]
not ax
movsx ecx, cx
cwde
imul eax, ecx
mov dword [rsp + 0x78], eax
mov eax, dword [rsp + 0x24]
add eax, 0x96
mov dword [rsp + 0x3c], eax
mov eax, dword [rsp + 0x4c]
not eax
movsxd rcx, eax
mov rax, qword [0x18004f648]
not rax
cmp rcx, rax
jl 0x18001b8fe
movzx eax, word [0x18004f630]
test ax, ax
jne 0x18001b8fe
mov eax, ebx
jmp 0x18001b903
mov eax, 1
mov edi, dword [rbp - 0x48]
cmp eax, edi
jle 0x18001b933
movsx ecx, byte [0x18004f5b6]
mov al, byte [0x18004f5b6]
imul ecx, r14d
add al, cl
mov byte [0x18004f5b6], al
mov al, byte [0x18004f644]
add al, 0x43
mov byte [0x18004f5b6], al
jmp 0x18001b937
mov byte [rbp - 0x60], 0xf8
mov eax, dword [rsp + 0x24]
lea rcx, [rbp + 0x78]
add eax, 0xfd3a
mov byte [0x18004f563], 0x57
mov dword [rsp + 0x44], eax
mov eax, dword [rsp + 0x24]
movups xmm0, xmmword [str.Windows.System.Thr]
add eax, 0x6a
movups xmm1, xmmword [0x180038980]
mov dword [rsp + 0x44], eax
mov eax, dword [0x180038990]
mov dword [rbp + 0x98], eax
movzx eax, word [0x180038994]
mov word [rbp + 0x9c], ax
movups xmmword [rbp + 0x78], xmm0
movups xmmword [rbp + 0x88], xmm1
call qword [sym.imp.KERNEL32.dll_lstrlenW]
mov r8d, dword [rbp - 0x60]
mov ecx, 0x307
mov byte [0x18004f537], al
mov eax, dword [rsp + 0x44]
sub ecx, eax
mov eax, dword [rsp + 0x3c]
sub ecx, eax
mov eax, dword [0x1809e7d20]
mov dword [rsp + 0x58], ecx
mov dword [rsp + 0x24], eax
mov eax, dword [rsp + 0x24]
add eax, 0x25
movzx r11d, r8b
mov dword [rsp + 0x54], eax
mov ecx, r11d
mov eax, dword [rsp + 0x24]
add eax, 0x10a
mov dword [rbp - 0x58], r11d
mov dword [rsp + 0x44], eax
mov eax, dword [rsp + 0x24]
add eax, 0x625f
mov byte [0x18004f563], r15b
mov dword [rsp + 0x44], eax
mov eax, 0x183c
imul ecx, eax
mov word [rsp + 0x2c], cx
mov r9, qword [0x18004f610]
movsx ecx, byte [0x18004f563]
neg r9d
mov dword [0x18004f63c], 0xd6
test ecx, ecx
je 0x18001baed
sub ecx, 1
je 0x18001bad2
sub ecx, 1
je 0x18001bab6
mov r10d, dword [rbp - 0x68]
sub ecx, 1
je 0x18001ba9f
cmp ecx, 1
jne 0x18001bb00
movsx rdx, word [0x18004f650]
movsx rax, word [0x18004f650]
mov rcx, qword [rsp + 0x60]
add rax, rdx
add cx, ax
movsx eax, r9b
mov word [0x18004f650], cx
imul ecx, eax, 0x22
mov al, byte [0x18004f537]
sub al, cl
cmp qword [0x18004f5f8], rbx
sete cl
sub al, byte [0x18004f628]
add cl, byte [0x18004f620]
movsx ecx, cl
movsx eax, al
imul ecx, eax
mov byte [0x18004f58e], cl
jmp 0x18001bb00
mov eax, dword [rsp + 0x4c]
movsx ecx, r10b
imul ecx, eax
mov eax, dword [rsp + 0x4c]
sub eax, ecx
mov dword [rsp + 0x4c], eax
jmp 0x18001bb00
mov rax, qword [0x18004f610]
add al, 0x7b
mov byte [0x18004f536], al
mov eax, dword [rsp + 0x4c]
sar eax, 6
mov byte [rsp + 0x20], al
jmp 0x18001bafc
mov al, byte [rsp + 0x28]
add al, dil
mov byte [rsp + 0x28], al
movsx ecx, byte [0x18004f5b6]
sar ecx, 2
mov dword [rsp + 0x68], ecx
jmp 0x18001bafc
mov rax, qword [rbp - 0x78]
xor eax, 0xc3cae94c
mov dword [0x18004f62c], eax
mov r10d, dword [rbp - 0x68]
mov edx, dword [rsp + 0x54]
mov r9d, 0xd5
mov eax, dword [rsp + 0x54]
xor edx, eax
mov ecx, dword [rsp + 0x54]
mov eax, 0x309
xor ecx, 0xbc15
imul ecx, edx
sub eax, ecx
mov dword [rsp + 0x54], eax
mov rax, qword [rsp + 0x60]
dec rax
mov qword [rsp + 0x60], rax
mov rcx, qword [rsp + 0x70]
mov rax, qword [0x18004f660]
add rax, 0xc8
add rcx, rax
mov qword [rsp + 0x70], rcx
mov rax, qword [0x18004f610]
xor rax, 0xef
mov qword [0x18004f648], rax
mov eax, dword [0x1809e7d20]
mov dword [rsp + 0x24], eax
mov eax, dword [rsp + 0x24]
add eax, 0x504f
mov dword [rsp + 0x7c], eax
movsx edx, byte [0x18004f5b6]
movsx ecx, word [rsp + 0x34]
not edx
mov eax, dword [0x18004f62c]
and edx, r11d
imul eax, ecx
mov ecx, ebx
sub eax, edx
cmp dword [0x18004f564], ebx
not eax
sete cl
add ecx, eax
mov eax, dword [rsp + 0x4c]
sub ecx, eax
mov rax, rbx
add ecx, 0x6623
sete al
mov qword [0x18004f658], rax
mov eax, dword [rsp + 0x24]
add eax, 0xadf0
mov dword [rsp + 0x44], eax
mov eax, dword [rsp + 0x24]
add eax, 0x67
mov dword [rsp + 0x44], eax
movzx eax, word [rsp + 0x34]
mov edi, dword [0x18004f644]
mov byte [rsp + 0x29], al
mov eax, dword [0x18004f5cc]
mov qword [rsp + 0x60], rax
mov ecx, dword [rsp + 0x7c]
mov eax, dword [rsp + 0x7c]
imul ecx, eax
mov eax, 0x19317b08
sub eax, ecx
mov dword [rsp + 0x7c], eax
mov eax, dword [0x1809e7d20]
mov dword [rsp + 0x24], eax
mov eax, dword [rsp + 0x24]
add eax, r9d
mov dword [rsp + 0x44], eax
movsx ecx, word [rsp + 0x30]
mov eax, dword [0x18004f634]
sub eax, ecx
mov dword [0x18004f634], eax
mov al, byte [0x1809e7d20]
mov byte [0x18004f535], al
mov eax, dword [rsp + 0x24]
add eax, 0xed
mov dword [rsp + 0x3c], eax
mov eax, dword [rsp + 0x24]
add eax, 0x3371
mov dword [rsp + 0x24], eax
test r13, r13
je 0x18001bc6a
mov rax, qword [0x18004f648]
shl rax, 2
mov qword [rbp - 0x38], rax
jmp 0x18001bca0
mov ecx, dword [rsp + 0x68]
movsx eax, byte [0x18004f58e]
not ecx
cmp ecx, eax
jbe 0x18001bc8c
cmp qword [0x18004f658], rbx
mov eax, ebx
sete al
cmp eax, r14d
jne 0x18001bca0
movsx ecx, byte [0x18004f5b6]
mov eax, 0x2e16
add cx, ax
mov word [rsp + 0x30], cx
mov ecx, dword [rsp + 0x44]
mov eax, dword [rsp + 0x3c]
or ecx, 0x7a
add eax, 0x113
add ecx, eax
cmp byte [rsi], 0xb8
mov dword [rsp + 0x3c], ecx
jne 0x18001bffc
mov al, byte [rsi + 5]
cmp al, 0xff
jne 0x18001bdf7
cmp byte [rsi + 6], 0xe0
jne 0x18001c03f
mov edx, dword [0x18004f654]
mov r9d, 1
mov rcx, qword [0x18004f620]
movsx rax, word [rsp + 0x78]
add rax, r9
imul rcx, rax
cmp word [0x18004f640], bx
mov eax, dword [0x1809e7d20]
mov qword [0x18004f620], rcx
mov dword [rsp + 0x24], eax
mov rax, qword [rbp - 0x78]
jne 0x18001bd16
mov rax, qword [rbp - 0x38]
mov dword [0x18004f654], eax
movzx ecx, word [0x18004f66c]
movzx eax, word [0x18004f650]
sub cx, ax
movzx eax, word [0x18004f66c]
or cx, ax
mov word [0x18004f66c], cx
mov ecx, dword [rsp + 0x24]
mov eax, dword [rsp + 0x48]
add ecx, eax
mov dword [rsp + 0x44], ecx
mov al, byte [rsp + 0x28]
test al, al
jne 0x18001bd60
mov eax, dword [0x18004f654]
add al, 0x78
mov byte [rsp + 0x28], al
mov ecx, dword [rsp + 0x24]
mov eax, dword [rbp - 0x80]
add ecx, eax
mov dword [rsp + 0x78], ecx
mov ecx, 0x6b3e
mov eax, dword [rsp + 0x68]
add eax, 0xa0
mov qword [0x18004f660], rax
mov rax, qword [rsp + 0x70]
add ax, cx
mov word [0x18004f61c], ax
movsx eax, dx
add dword [0x18004f5cc], eax
mov eax, dword [rsp + 0x24]
add eax, 0x1ce
mov dword [rsp + 0x7c], eax
mov eax, dword [rsp + 0x7c]
mov ecx, dword [rsp + 0x78]
mov edx, dword [rsp + 0x44]
sub ecx, eax
mov r8d, dword [rbp - 0x44]
add edx, ecx
add r8d, edx
mov edx, dword [rsp + 0x7c]
mov ecx, dword [rbp - 0x4c]
sub edx, ecx
mov ecx, dword [rsp + 0x78]
imul ecx, edx
cmp r8d, ecx
je 0x18001cf1a
mov cl, byte [0x18004f658]
add cl, 0x6b
mov byte [0x18004f536], cl
mov rcx, qword [rbp - 0x30]
mov qword [rcx], r9
mov eax, 3
jmp 0x18001cf1c
cmp al, 0x50
jne 0x18001c03f
cmp byte [rsi + 6], 0xc3
jne 0x18001c03f
movsx ecx, word [0x18004f66c]
mov edx, ebx
add ecx, 0x6c
mov dword [0x18004f54c], ecx
movsx rcx, byte [rsp + 0x20]
mov rax, qword [rbp - 0x78]
sub cl, al
mov byte [rsp + 0x20], cl
movzx eax, word [rsp + 0x2c]
movsx ecx, byte [0x18004f58e]
imul ecx, eax
mov eax, dword [0x1809e7d20]
movsxd r8, ecx
add r8, qword [0x18004f660]
mov dword [rsp + 0x24], eax
mov eax, dword [0x18004f654]
sub eax, dword [0x18004f54c]
mov dword [0x18004f62c], eax
mov eax, dword [0x1809e7d20]
mov dword [0x18004f62c], eax
mov ecx, dword [rsp + 0x24]
mov eax, dword [rbp - 0x40]
add ecx, eax
mov dword [rsp + 0x44], ecx
movsx rcx, byte [0x18004f54b]
mov rax, qword [rsp + 0x70]
cmp rax, rcx
mov rax, qword [rsp + 0x70]
mov ecx, ebx
sete dl
cmp rax, 0x38
sete cl
cmp edx, ecx
jbe 0x18001beaf
mov al, byte [rsp + 0x29]
movzx ecx, word [rsp + 0x2c]
add cl, al
mov byte [rsp + 0x29], cl
jmp 0x18001beca
test edi, edi
je 0x18001beca
mov rax, qword [0x18004f610]
mov ecx, 0x689
movzx edx, ax
imul edx, ecx
mov word [rsp + 0x2c], dx
mov ecx, dword [rsp + 0x24]
mov eax, dword [rsp + 0x58]
add ecx, eax
mov dword [rsp + 0x40], ecx
mov al, byte [0x18004f54b]
sub al, 1
mov byte [0x18004f54b], al
mov ecx, dword [rsp + 0x24]
mov eax, dword [rsp + 0x54]
add ecx, eax
mov dword [rsp + 0x48], ecx
mov eax, dword [rsp + 0x44]
sub r9d, eax
mov edx, dword [rsp + 0x3c]
mov ecx, dword [rsp + 0x48]
add edx, 0x388
mov eax, dword [rsp + 0x7c]
xor edx, r9d
add ecx, eax
cmp ecx, edx
je 0x18001cf1a
add r8w, word [0x18004f5f8]
mov word [0x18004f638], r8w
mov cl, byte [0x18004f535]
mov al, byte [0x18004f535]
cmp cl, al
jl 0x18001c02e
movsx rcx, byte [0x18004f58f]
mov edx, ebx
mov rax, qword [0x18004f610]
mov r8d, dword [rbp - 0x50]
cmp rcx, rax
mov ecx, ebx
mov eax, r8d
setge dl
not eax
test eax, eax
setne cl
or edx, ecx
je 0x18001bf81
mov al, byte [rsp + 0x20]
sub r10b, al
mov al, byte [rsp + 0x20]
add r10b, al
mov byte [rsp + 0x20], r10b
jmp 0x18001c02e
cmp word [0x18004f640], bx
je 0x18001bfe4
cmp byte [rbp - 0x20], bl
je 0x18001bfe4
movsx rdx, byte [0x18004f535]
mov rax, qword [0x18004f600]
mov rcx, qword [0x18004f648]
not rcx
imul rax, rcx
add rax, rdx
mov rdx, rbx
movzx eax, word [rsp + 0x2c]
sete dl
add eax, r8d
movsxd rcx, eax
movzx eax, word [0x18004f650]
test ax, ax
movzx eax, word [0x18004f660]
sete bl
sub ax, bx
add ax, cx
xor ax, dx
mov word [rsp + 0x30], ax
jmp 0x18001c02e
cmp byte [0x18004f58e], bl
je 0x18001c02e
movzx eax, word [0x1809e7d20]
mov word [0x18004f650], ax
jmp 0x18001c02e
cmp byte [rsi], 0xa1
jne 0x18001c03f
cmp byte [rsi + 5], 0xff
jne 0x18001c03f
cmp byte [rsi + 6], 0xe0
jne 0x18001c03f
mov eax, dword [rsp + 0x5c]
cmp qword [rbp - 0x18], rax
jb 0x18001c020
movzx eax, word [0x18004f650]
jmp 0x18001c02e
mov al, byte [0x18004f640]
add al, 0x11
mov byte [0x18004f535], al
mov rcx, qword [rbp - 0x30]
mov eax, 1
mov qword [rcx], rax
jmp 0x18001bded
mov edx, dword [rbp - 0x70]
mov ecx, 0x1ae
mov eax, dword [rbp - 0x70]
sub edx, eax
mov eax, dword [rbp - 0x64]
sub ecx, eax
cmp edx, ecx
je 0x18001cf1a
mov al, byte [0x18004f644]
mov ecx, 0xe1
add byte [0x18004f563], al
mov eax, dword [0x1809e7d20]
mov dword [rsp + 0x24], eax
movzx eax, word [rsp + 0x34]
mov r13d, dword [rbp - 0x48]
mov al, bl
add al, r12b
add al, byte [0x18004f564]
mov byte [0x18004f536], al
mov eax, dword [rsp + 0x24]
add eax, 0xce35
mov dword [rsp + 0x44], eax
mov eax, dword [0x18004f63c]
add ax, cx
mov ecx, dword [rbp - 0x50]
mov word [0x18004f640], ax
mov eax, dword [rsp + 0x24]
add eax, 0x30
mov dword [rbp - 0x64], eax
mov eax, dword [rsp + 0x24]
add eax, 0x111
mov dword [rbp - 0x64], eax
mov eax, dword [0x18004f654]
add eax, 0xd3d82f01
add ecx, eax
mov dword [0x18004f654], ecx
mov ecx, dword [rbp - 0x64]
mov eax, dword [rsp + 0x44]
imul ecx, eax
mov eax, 0xdbe7ea
sub eax, ecx
mov ecx, 0x73a3
mov dword [rsp + 0x44], eax
mov eax, dword [0x1809e7d20]
mov dword [rsp + 0x24], eax
movzx eax, word [rsp + 0x2c]
sub ax, r11w
mov word [rsp + 0x2c], ax
mov eax, 0x7892
add ax, word [0x18004f5cc]
mov word [rsp + 0x2c], ax
mov eax, dword [rsp + 0x24]
add eax, 0x91
mov dword [rbp - 0x64], eax
mov eax, dword [rsp + 0x24]
add eax, 0x1b4f
mov qword [0x18004f660], 0x6d
mov dword [rbp - 0x64], eax
mov eax, dword [rsp + 0x24]
add eax, 0x5a
mov dword [rbp - 0x64], eax
mov dword [rsp + 0x3c], 0x1f7
movzx eax, byte [rsp + 0x29]
sub r12w, ax
mov eax, dword [0x1809e7d20]
mov dword [rsp + 0x24], eax
mov eax, dword [rsp + 0x24]
add eax, 0xb0d9
mov dword [rbp - 0x64], eax
mov al, byte [rsp + 0x20]
test al, al
mov eax, dword [rsp + 0x24]
cmovne edi, ecx
add eax, 0x97bf
mov dword [rbp - 0x64], eax
movsx rax, word [0x18004f628]
cmp rax, qword [0x18004f660]
ja 0x18001c1c4
movsx eax, byte [0x18004f58f]
mov ecx, r13d
sub ecx, eax
mov eax, ebx
add ecx, dword [0x18004f564]
sete al
mov dword [rsp + 0x5c], eax
mov cl, byte [0x18004f537]
movzx eax, word [rsp + 0x34]
sub cl, al
mov byte [0x18004f537], cl
jmp 0x18001c1ec
cmp qword [0x18004f5f8], rbx
je 0x18001c1ec
test r12w, r12w
jne 0x18001c1ec
mov rcx, qword [rsp + 0x60]
movzx eax, r8b
sub rcx, rax
mov rax, qword [rsp + 0x60]
sub rcx, rax
mov qword [rsp + 0x60], rcx
mov eax, dword [rsp + 0x24]
add eax, 0xacb1
mov dword [rsp + 0x48], eax
mov al, byte [0x18004f58e]
add al, 0x66
mov byte [0x18004f5b6], al
movzx eax, byte [rsp + 0x29]
sub al, byte [0x18004f58e]
sub al, 0x4a
mov byte [rsp + 0x29], al
mov eax, dword [rbp - 0x64]
xor eax, 0x961a
mov dword [rbp - 0x64], eax
mov eax, dword [0x1809e7d20]
mov dword [rsp + 0x24], eax
mov eax, 4
cmp edi, eax
jae 0x18001c273
movzx ecx, byte [rsp + 0x28]
mov eax, dword [0x18004f63c]
cmp ecx, eax
jl 0x18001c256
mov eax, dword [0x18004f54c]
imul eax, eax
mov dword [0x18004f54c], eax
jmp 0x18001c273
movzx ecx, word [0x18004f630]
sub ecx, dword [0x18004f5cc]
mov dword [0x18004f644], 0xab
mov dword [0x18004f654], ecx
mov eax, dword [rsp + 0x24]
add eax, 0x9f57
mov dword [rsp + 0x48], eax
movzx ecx, word [0x18004f61c]
movsx eax, r12w
cmp ecx, eax
jne 0x18001c2a2
movsx ecx, byte [0x18004f537]
add cl, byte [0x18004f640]
mov byte [0x18004f537], cl
mov eax, dword [rsp + 0x24]
mov ecx, 0xffff9e88
add eax, 0x1e
movsx ecx, cx
mov dword [rsp + 0x7c], eax
mov rax, qword [0x18004f600]
movsx edx, ax
mov eax, dword [0x1809e7d20]
imul edx, ecx
lea rcx, [rbp + 0xb0]
mov qword [rbp - 0x38], rax
mov word [0x18004f650], dx
mov eax, dword [rsp + 0x24]
movups xmm0, xmmword [str.._AVJsonValue__]
add eax, 0xc93e
movups xmm1, xmmword [0x1800389a8]
mov dword [rbp - 0x70], eax
movups xmmword [rbp + 0xb0], xmm0
movups xmmword [rbp + 0xc0], xmm1
call qword [sym.imp.KERNEL32.dll_lstrlenW]
mov r8d, dword [rbp - 0x70]
mov ecx, dword [rsp + 0x7c]
xor r8d, ecx
mov edx, dword [rbp - 0x70]
mov ecx, dword [rsp + 0x7c]
or edx, ecx
imul edx, r8d
mov ecx, 0x9e1ad6c5
mov r9d, eax
sub ecx, edx
cmp byte [rsi], 0xa1
mov dword [rsp + 0x48], ecx
jne 0x18001c46d
cmp byte [rsi + 5], 0x50
jne 0x18001c46d
cmp byte [rsi + 6], 0xc3
jne 0x18001c46d
movzx ecx, byte [rsp + 0x29]
movsx eax, byte [0x18004f536]
mov rdx, qword [rbp - 0x20]
sub ecx, eax
mov al, byte [rsp + 0x29]
sub cl, al
movsx eax, byte [0x18004f563]
mov byte [rsp + 0x29], cl
movzx ecx, word [0x18004f668]
add cx, cx
add cx, ax
mov eax, dword [0x1809e7d20]
mov word [0x18004f668], cx
cmp r13d, r9d
mov ecx, ebx
mov dword [rsp + 0x24], eax
setbe cl
mov eax, ebx
cmp dl, 0x20
setle al
cmp ecx, eax
jne 0x18001c3d1
movzx eax, word [0x18004f638]
mov eax, dword [rsp + 0x68]
mov rax, qword [rbp - 0x78]
mov al, byte [0x18004f535]
mov al, byte [0x18004f54b]
mov dword [0x18004f644], ebx
cmp dword [0x18004f644], ebx
jne 0x18001c400
mov al, byte [0x18004f54b]
jmp 0x18001c400
mov rax, qword [rbp - 0x78]
test rax, rax
jne 0x18001c400
movzx eax, word [rsp + 0x34]
mov ecx, 8
sub cl, al
mov eax, edi
mov byte [rsp + 0x28], cl
movabs rcx, 0x403a48fc8e13a
xor rax, rcx
mov qword [0x18004f648], rax
mov ecx, dword [rsp + 0x24]
mov eax, dword [rsp + 0x44]
add ecx, eax
mov dword [rsp + 0x40], ecx
mov ecx, dword [rsp + 0x24]
mov eax, dword [rsp + 0x3c]
add ecx, eax
mov dword [rsp + 0x44], ecx
mov ecx, dword [rsp + 0x24]
mov eax, dword [rbp - 0x64]
add ecx, eax
mov dword [rsp + 0x24], ecx
mov edx, dword [rsp + 0x24]
mov eax, dword [rsp + 0x24]
sub edx, eax
mov ecx, dword [rsp + 0x44]
mov eax, dword [rsp + 0x48]
add ecx, eax
mov eax, dword [rsp + 0x24]
imul ecx, edx
cmp eax, ecx
je 0x18001cf1a
mov eax, dword [0x1809e7d20]
mov dword [rsp + 0x68], eax
movzx eax, word [0x18004f668]
add eax, 0xcda1
mov dword [0x18004f62c], eax
jmp 0x18001c02e
mov edx, dword [rsp + 0x38]
mov eax, dword [rsp + 0x38]
mov ecx, dword [rsp + 0x38]
imul edx, eax
mov eax, dword [rsp + 0x38]
or ecx, eax
add edx, 0x3c6
cmp ecx, edx
je 0x18001cf1a
cmp byte [rsi], 0x90
jne 0x18001c4e3
cmp byte [rsi + 1], 0x90
jne 0x18001c4e3
cmp byte [rsi + 3], 0xe9
jne 0x18001c4e3
mov eax, dword [0x18004f634]
mov ecx, edi
sub qword [0x18004f658], r9
sub ecx, eax
movzx eax, word [0x180aba9ac]
or edi, ecx
xor di, 0x7f
xor word [0x18004f640], ax
mov eax, 3
mov word [0x18004f668], di
mov rcx, qword [rbp - 0x30]
mov edx, 4
mov qword [rcx], rdx
jmp 0x18001cf1c
mov ecx, dword [rbp - 0x28]
mov eax, dword [rsp + 0x40]
cmp eax, ecx
je 0x18001cf1a
cmp dword [0x18004f644], ebx
jne 0x18001c50a
mov rax, qword [rsp + 0x70]
shr rax, 2
mov qword [0x18004f658], rax
mov eax, dword [0x1809e7d20]
mov edx, ebx
movsx ecx, byte [0x18004f563]
mov dword [rsp + 0x24], eax
mov eax, dword [rsp + 0x68]
cmp ecx, eax
mov eax, ebx
sete dl
cmp byte [0x18004f563], 0x43
sete al
cmp edx, eax
jne 0x18001c559
mov eax, dword [0x18004f654]
test eax, eax
je 0x18001c559
movsx eax, byte [rsp + 0x20]
movsx edx, byte [0x18004f536]
imul edx, eax
mov al, byte [rsp + 0x20]
add al, dl
mov byte [rsp + 0x20], al
mov eax, dword [rsp + 0x24]
mov r10, qword [rbp - 0x38]
add eax, 0x8e5b
mov dword [rsp + 0x40], eax
mov rax, qword [0x18004f600]
cmp rax, r10
jae 0x18001c5d3
movsxd rcx, dword [0x18004f634]
mov edx, ebx
mov rax, qword [rsp + 0x60]
cmp rax, rcx
mov rax, qword [rsp + 0x60]
mov ecx, ebx
setne dl
cmp rax, 0x4c
setne cl
cmp edx, ecx
ja 0x18001c5c2
mov rax, qword [0x18004f648]
shl rax, 2
mov qword [0x18004f648], rax
mov rax, qword [rsp + 0x70]
sub rax, 0x2dbf4d21
mov qword [0x18004f610], rax
jmp 0x18001c5e3
movsx r9d, byte [0x18004f563]
sub r9d, 0x6440
jmp 0x18001c5e3
mov ecx, dword [rbp - 0x58]
add ecx, 0x6bc4
mov qword [0x18004f610], rcx
mov eax, dword [rsp + 0x24]
mov r11d, 0x39
add eax, 0x85
mov dword [rsp + 0x40], eax
mov eax, dword [rsp + 0x24]
add eax, 0x2c
mov dword [rsp + 0x40], eax
mov rax, qword [rsp + 0x70]
imul r13d, eax, 0xf48c
mov eax, dword [0x18004f634]
sub al, 9
mov byte [0x18004f58f], al
mov eax, dword [0x18004f644]
add eax, 0x8e55ce3f
mov dword [rsp + 0x5c], eax
mov ecx, dword [rsp + 0x40]
movsx eax, word [rsp + 0x78]
xor ecx, 0x5232
and eax, 0x535e6232
sub dword [0x18004f5cc], eax
mov eax, 0x5506
sub eax, ecx
mov dword [rbp - 0x28], eax
mov eax, dword [0x1809e7d20]
mov dword [rsp + 0x24], eax
mov eax, dword [rsp + 0x24]
add eax, r11d
mov dword [rsp + 0x40], eax
movsx rcx, word [rsp + 0x30]
mov rax, qword [rbp - 0x78]
cmp rcx, rax
je 0x18001c72b
mov rax, qword [0x18004f608]
test rax, rax
je 0x18001c6a0
mov rax, qword [rsp + 0x60]
test rax, rax
je 0x18001c6a0
mov al, byte [0x1809e7d20]
mov byte [rsp + 0x28], al
mov byte [rsp + 0x29], 0xa0
jmp 0x18001c740
mov al, byte [rsp + 0x29]
cmp al, 0xe7
ja 0x18001c6c7
movsx eax, word [rsp + 0x34]
add eax, 0x48479262
cdqe
mov qword [0x18004f660], rax
mov al, byte [0x1809e7d20]
mov byte [rsp + 0x29], al
jmp 0x18001c740
cmp qword [0x18004f658], rbx
je 0x18001c6df
mov al, byte [rsp + 0x20]
test al, al
je 0x18001c6df
mov ecx, 1
jmp 0x18001c6e1
mov ecx, ebx
mov eax, dword [0x18004f634]
mov r9, qword [rbp - 0x18]
cmp eax, ecx
je 0x18001c704
movzx ecx, word [0x18004f630]
sub ecx, 0xefa1
mov dword [0x18004f5cc], ecx
jmp 0x18001c744
movsxd rax, dword [0x18004f634]
cmp r9, rax
jne 0x18001c744
movzx r12d, word [rsp + 0x2c]
movzx eax, word [0x18004f620]
sub r12w, 0x20
mov word [0x18004f668], ax
jmp 0x18001c744
movzx eax, word [0x18004f650]
test ax, ax
cmovne r9w, r14w
mov word [rsp + 0x30], r9w
mov r9, qword [rbp - 0x18]
mov eax, dword [rsp + 0x24]
and r14d, 0x5a1d919a
add eax, 0x73ba
mov dword [rbp - 0x70], eax
mov eax, dword [rsp + 0x24]
add eax, 0xc5
mov dword [rsp + 0x40], eax
mov eax, 3
mov word [0x18004f66c], ax
mov rdi, qword [rsp + 0x70]
movsx eax, word [0x18004f66c]
mov ecx, eax
test eax, eax
je 0x18001c80e
sub ecx, 1
je 0x18001c7f0
sub ecx, 1
je 0x18001c7db
cmp ecx, 1
jne 0x18001c859
mov rax, qword [rsp + 0x60]
mov cl, r12b
add eax, 0xd592
mov dword [0x18004f654], eax
mov rax, qword [rbp - 0x78]
mov dl, byte [0x18004f5f8]
sub dl, al
movzx eax, word [rsp + 0x34]
sub dl, 0x1e
add dl, al
movzx eax, word [0x18004f650]
sub cl, al
mov al, byte [rsp + 0x20]
add al, cl
xor al, dl
mov byte [0x18004f58f], al
jmp 0x18001c859
mov al, byte [0x180b0cd30]
add byte [0x18004f58e], al
mov byte [0x18004f536], 0x84
jmp 0x18001c859
movsx rax, word [0x18004f640]
movabs rcx, 0x3b99771ede862
add rax, rcx
mov qword [0x18004f660], rax
jmp 0x18001c859
movzx ecx, word [0x18004f61c]
movzx eax, byte [rsp + 0x29]
mov r8d, dword [rsp + 0x68]
sub ecx, eax
not ecx
add r8d, ecx
movsx ecx, byte [rsp + 0x20]
not ecx
movsxd rdx, ecx
movzx ecx, byte [rsp + 0x28]
sub rdx, r8
mov rax, qword [rbp - 0x78]
add rcx, rdx
add eax, ecx
mov dword [0x18004f63c], eax
mov rax, qword [0x18004f660]
add rax, 0x2d
mov qword [0x18004f608], rax
mov edx, dword [rsp + 0x40]
mov eax, dword [rbp - 0x70]
or edx, eax
mov eax, dword [rbp - 0x70]
imul ecx, eax, 0x9111
add ecx, edx
xor ecx, 0x41947d25
mov dword [rbp - 0x64], ecx
mov ecx, ebx
movzx eax, word [rsp + 0x2c]
mov dword [0x180a63fd8], eax
mov eax, dword [0x1809e7d20]
mov qword [0x18004f660], 0x56b4a7c5
mov dword [rsp + 0x24], eax
movsx eax, byte [0x18004f58e]
cmp r12w, ax
mov eax, ebx
sete cl
cmp r12w, 0x18
sete al
cmp ecx, eax
jbe 0x18001c8e4
movsx eax, byte [0x18004f5b6]
cmp r13d, eax
ja 0x18001c8f9
cmp byte [0x18004f563], bl
jne 0x18001c8f9
cmp qword [0x18004f620], rbx
je 0x18001c8f9
movzx eax, word [0x18004f650]
sar ax, 2
mov byte [0x18004f537], al
jmp 0x18001c8f9
movzx eax, word [0x18004f638]
movzx eax, word [rsp + 0x2c]
movsx eax, word [rsp + 0x34]
mov dword [rsp + 0x4c], eax
mov eax, dword [rsp + 0x24]
xor r9, 0x694b
add eax, 0x6af3
mov dword [rsp + 0x7c], eax
movsx ecx, byte [rsp + 0x20]
add ecx, 0xbf21
mov dword [0x18004f54c], ecx
mov ecx, 0x3b84
mov qword [rbp - 0x78], r9
mov eax, dword [rsp + 0x24]
add eax, 0x86
mov dword [rsp + 0x40], eax
mov al, byte [rsp + 0x28]
mov eax, dword [rsp + 0x24]
add eax, 0x19
mov dword [rbp - 0x70], eax
mov edx, dword [rbp - 0x70]
movzx eax, word [0x18004f564]
sub ax, cx
or r12w, ax
mov eax, dword [rsp + 0x7c]
mov ecx, dword [rbp - 0x70]
xor edx, eax
mov eax, dword [rsp + 0x7c]
add ecx, eax
or ecx, edx
xor ecx, 0x68f0
mov dword [rsp + 0x44], ecx
movzx eax, word [0x18004f650]
test ax, ax
je 0x18001c9b7
mov eax, dword [0x1800389c8]
lea rcx, [rbp + 0x38]
movups xmm0, xmmword [str.x_iscii_de]
mov dword [rbp + 0x48], eax
movzx eax, word [0x1800389cc]
movups xmmword [rbp + 0x38], xmm0
mov word [rbp + 0x4c], ax
call qword [sym.imp.KERNEL32.dll_lstrlenW]
mov r10, qword [rbp - 0x38]
mov r11d, 0x39
movsxd rcx, eax
mov qword [rsp + 0x70], rcx
jmp 0x18001c9d2
movzx eax, word [rsp + 0x34]
mov ecx, 0x655d
movzx eax, word [0x18004f630]
sub ax, cx
mov word [0x18004f668], ax
mov eax, dword [0x1809e7d20]
mov dword [rsp + 0x24], eax
movsx eax, word [rsp + 0x34]
movsx edx, byte [0x18004f536]
sub edx, eax
mov byte [0x18004f58f], 3
movzx eax, word [rsp + 0x34]
add ax, dx
mov word [rsp + 0x34], ax
mov r9b, byte [0x18004f537]
add r9b, byte [0x18004f668]
movsx ecx, byte [0x18004f58f]
test ecx, ecx
je 0x18001cab6
sub ecx, 1
je 0x18001ca53
sub ecx, 1
je 0x18001ca42
cmp ecx, 1
jne 0x18001cabd
movzx eax, word [rsp + 0x2c]
lea r14d, [rcx + 1]
add ax, r13w
mov word [rsp + 0x2c], ax
jmp 0x18001cabd
movzx eax, byte [0x18004f537]
movzx r9d, r9b
imul r9d, eax
jmp 0x18001cabd
mov rax, qword [0x18004f608]
mov rcx, rbx
cmp dword [0x18004f5cc], ebx
sete cl
sub rcx, rax
mov eax, 0xd2e1
sub eax, dword [0x18004f644]
movsxd r8, eax
movzx eax, word [0x18004f638]
xor r8, rcx
mov rdx, qword [0x18004f600]
mov ecx, ebx
add rdx, rax
not r8
mov eax, dword [0x18004f564]
add rax, rdx
add rax, r10
sete cl
sub r8d, ecx
mov dword [0x18004f62c], r8d
mov qword [0x18004f600], 0x7d
jmp 0x18001cabd
mov byte [0x18004f537], 0xd
mov eax, dword [rsp + 0x24]
mov edx, ebx
add eax, 0x3d0e
mov dword [rsp + 0x40], eax
movzx ecx, word [0x18004f630]
movzx eax, word [0x18004f61c]
cmp cx, ax
movzx eax, word [0x18004f630]
mov ecx, ebx
setb dl
cmp ax, r11w
setb cl
cmp edx, ecx
je 0x18001cb11
mov rcx, qword [0x18004f608]
mov rax, qword [0x18004f600]
not cl
add al, r12b
add al, cl
mov byte [0x18004f58f], al
jmp 0x18001cb34
movzx eax, word [rsp + 0x30]
test ax, ax
je 0x18001cb34
lea eax, [r10 - 0x32886f54]
mov dword [0x18004f62c], eax
mov eax, dword [0x18004f62c]
mov byte [0x180aa351e], al
mov eax, dword [rsp + 0x24]
add eax, 0xf8
mov dword [rsp + 0x40], eax
test r9b, r9b
jne 0x18001cb77
mov rcx, qword [rbp - 0x78]
mov rax, qword [rsp + 0x60]
add rcx, rax
je 0x18001cb77
mov eax, dword [0x18004f634]
movzx r15d, word [0x18004f620]
sub r15w, ax
mov eax, 0x7951
sub r15w, ax
mov rax, qword [rbp - 0x78]
add r15w, ax
mov eax, dword [rsp + 0x24]
lea rcx, [rbp + 0x20]
movups xmm0, xmmword [str.._AV_lambda_f870e7]
add eax, 0x38
mov dword [rbp - 0x70], eax
movzx eax, word [0x1800389e0]
mov word [rbp + 0x30], ax
mov al, byte [0x1800389e2]
mov byte [rbp + 0x32], al
movups xmmword [rbp + 0x20], xmm0
call qword [sym.imp.KERNEL32.dll_lstrlenA]
mov edx, dword [rbp - 0x70]
movsxd rcx, eax
mov eax, dword [rsp + 0x40]
xor edx, eax
mov qword [0x18004f5f8], rcx
mov eax, 0x7bdc
mov ecx, dword [rbp - 0x70]
add ecx, 0x795b
or ecx, edx
mov edx, 4
sub eax, ecx
mov dword [rsp + 0x3c], eax
mov eax, dword [0x1809e7d20]
mov dword [rsp + 0x24], eax
mov eax, dword [rsp + 0x24]
add eax, 0x1ac5
mov dword [rsp + 0x40], eax
mov eax, dword [rsp + 0x24]
movzx ecx, word [0x18004f620]
add eax, 0x5644
mov dword [rsp + 0x40], eax
mov eax, 0x5597
imul ecx, eax
mov eax, 0xffff87c0
mov qword [0x18004f5f8], rdx
mov word [rsp + 0x2c], cx
movzx ecx, word [0x18004f638]
mov word [0x18004f640], ax
shl rcx, 5
mov qword [0x18004f610], rcx
mov eax, dword [rsp + 0x24]
add eax, 0xebcf
mov dword [rsp + 0x48], eax
mov qword [rsp + 0x70], rbx
mov rax, qword [0x18004f610]
mov rax, qword [rsp + 0x60]
mov rax, qword [rsp + 0x70]
cmp qword [0x18004f658], rbx
mov eax, dword [0x18004f54c]
cmovne eax, r14d
mov dword [rsp + 0x68], eax
movzx eax, word [0x1809e7d20]
mov word [0x18004f630], ax
mov eax, dword [rsp + 0x40]
sub eax, 0x5338
cmp byte [rsi + 5], 0xff
mov dword [rsp + 0x48], eax
jne 0x18001ce68
cmp byte [rsi + 6], 0x25
jne 0x18001ce68
mov eax, dword [0x1809e7d20]
mov ecx, 0x80a1c3d1
mov dword [rsp + 0x24], eax
movzx eax, word [0x18004f668]
xor rax, rcx
mov qword [0x18004f660], rdx
mov qword [0x18004f600], rax
mov eax, dword [rsp + 0x4c]
movsx ecx, r12w
imul ecx, eax
mov eax, dword [rsp + 0x4c]
sub eax, ecx
mov dword [rsp + 0x4c], eax
mov rax, qword [0x18004f660]
test rax, rax
je 0x18001cda3
sub rax, 1
je 0x18001cd7d
sub rax, 1
je 0x18001cd61
sub rax, 1
je 0x18001cd3c
cmp rax, 1
jne 0x18001cdb3
mov ecx, dword [0x18004f63c]
lea r9d, [rdx - 3]
movzx eax, r15w
imul ecx, eax
cmp word [0x18004f640], bx
mov dword [0x18004f63c], ecx
je 0x18001cd34
movzx edi, word [0x18004f564]
jmp 0x18001cdb9
mov edi, dword [0x18004f63c]
jmp 0x18001cdb9
mov edi, dword [0x18004f62c]
mov ecx, 0x8d
add di, cx
movsx eax, r15w
movsx ecx, word [0x18004f618]
imul ecx, eax
mov word [0x18004f618], cx
jmp 0x18001cdb3
mov rax, qword [rsp + 0x60]
mov ecx, 0x235b
movsx ecx, cx
movsx edx, ax
imul edx, ecx
mov word [0x18004f618], dx
jmp 0x18001cdb3
mov ecx, dword [0x18004f63c]
mov r9d, 1
mov rax, qword [rsp + 0x60]
add cx, ax
add cx, r9w
mov word [0x18004f640], cx
mov byte [rsp + 0x29], 0x83
jmp 0x18001cdb9
movzx eax, word [0x18004f668]
sub eax, 0x9c5e
mov dword [rsp + 0x4c], eax
mov r9d, 1
mov ecx, dword [rsp + 0x24]
mov eax, dword [rbp - 0x28]
add ecx, eax
mov dword [rsp + 0x40], ecx
mov ecx, dword [rsp + 0x24]
mov eax, dword [rbp - 0x64]
add ecx, eax
mov dword [rsp + 0x40], ecx
movzx ecx, word [0x18004f638]
add ecx, 0x6bc5d3cf
movsx eax, di
mov dword [0x18004f62c], ecx
mov dword [rsp + 0x5c], eax
mov ecx, dword [rsp + 0x24]
mov eax, dword [rsp + 0x44]
add ecx, eax
mov dword [rbp - 0x70], ecx
mov edx, dword [rbp - 0x70]
mov eax, dword [rsp + 0x3c]
add edx, eax
mov r8d, dword [rbp - 0x70]
mov eax, dword [rsp + 0x40]
mov ecx, dword [rsp + 0x48]
imul r8d, edx
sub ecx, eax
cmp r8d, ecx
je 0x18001cf1a
movzx ecx, word [0x18004f61c]
mov eax, dword [0x18004f634]
cmp ecx, eax
mov rcx, qword [0x18004f610]
setle bl
not rcx
cmp rcx, rbx
jl 0x18001ce4f
movsx ecx, byte [0x18004f658]
imul edx, ecx, 7
mov byte [0x18004f5b6], dl
mov cl, byte [0x18004f5b6]
mov eax, r9d
mov rcx, qword [rbp - 0x30]
mov qword [rcx], 7
jmp 0x18001cf1c
cmp byte [rsi], 0x48
jne 0x18001cf1a
cmp byte [rsi + 1], 0xff
jne 0x18001cf1a
cmp byte [rsi + 2], 0x25
jne 0x18001cf1a
mov cl, byte [0x18004f5b6]
mov al, byte [0x18004f5b6]
cmp cl, al
jge 0x18001ceb2
mov rax, qword [rsp + 0x60]
test rax, rax
je 0x18001ceb2
mov eax, dword [rsp + 0x5c]
mov ecx, 0xf3848193
xor rax, rcx
mov qword [0x18004f600], rax
mov al, byte [rsp + 0x28]
test al, al
jne 0x18001cf08
movsx ecx, word [0x18004f618]
mov eax, dword [0x18004f62c]
cmp ecx, eax
jge 0x18001cf08
movzx eax, word [0x18004f66c]
test ax, ax
movsx eax, word [0x18004f640]
jne 0x18001cee5
movzx eax, word [0x18004f638]
mov rcx, qword [rsp + 0x60]
cdqe
mov qword [0x18004f5f8], rax
mov rax, qword [rsp + 0x60]
sub rcx, rax
mov rax, qword [rsp + 0x60]
add rax, rcx
mov qword [rsp + 0x60], rax
mov eax, 1
mov rcx, qword [rbp - 0x30]
mov qword [rcx], 3
jmp 0x18001cf1c
xor eax, eax
mov rcx, qword [rbp + 0xd0]
xor rcx, rsp
call fcn.18002c480
lea r11, [rsp + 0x1e0]
mov rbx, qword [r11 + 0x30]
mov rsi, qword [r11 + 0x40]
mov rdi, qword [r11 + 0x48]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rbp
ret