Function at 0x10005c40
Capabilities:
Get graphical window text
Terminate process

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
sub esp, 0x138
mov esi, dword [ebp + 8]
mov dword [ebp - 0x44], 0
lea eax, [ebp - 0x44]
push eax
push esi
call sub.user32.dll_GetWindowThreadProcessId
pxor xmm0, xmm0
movdqu xmmword [ebp - 0x54], xmm0
movdqu xmmword [ebp - 0x64], xmm0
movdqu xmmword [ebp - 0x74], xmm0
movdqu xmmword [ebp - 0x84], xmm0
movdqu xmmword [ebp - 0x94], xmm0
movdqu xmmword [ebp - 0xa4], xmm0
movdqu xmmword [ebp - 0xb4], xmm0
movdqu xmmword [ebp - 0xc4], xmm0
movdqu xmmword [ebp - 0xd4], xmm0
movdqu xmmword [ebp - 0xe4], xmm0
movdqu xmmword [ebp - 0xf4], xmm0
movdqu xmmword [ebp - 0x104], xmm0
movdqu xmmword [ebp - 0x114], xmm0
movdqu xmmword [ebp - 0x124], xmm0
movdqu xmmword [ebp - 0x134], xmm0
movdqu xmmword [ebp - 0x144], xmm0
lea edi, [ebp - 0x144]
push 0x100
push edi
push esi
call sub.user32.dll_GetWindowTextA
test eax, eax
jle 0x100077e9
cmp eax, 0x101
jae 0x100077fb
lea ebx, [ebp - 0x2c]
push eax
push edi
push ebx
call sym.alloc::string::String::from_utf8_lossy::h9a8f1a36ad8c7b98
add esp, 0xc
mov edi, dword [ebp - 0x28]
lea eax, [ebp - 0x38]
push dword [ebp - 0x24]
push edi
push eax
call sym.alloc::str::__LT_impl_u20_str_GT_::to_lowercase::h021d04b0bdeb3b29
add esp, 0xc
mov eax, dword [ebp - 0x2c]
test eax, 0x7fffffff
je 0x10005d37
push 1
push eax
push edi
call sym.___rust_dealloc
add esp, 0xc
lea eax, [0x1010fea9]
lea ecx, [ebp - 0x10]
mov dword [ebp - 0x10], eax
lea eax, [ebp - 0x10]
mov eax, dword [ebp - 0x10]
mov dword [ebp - 0x10], 0x51c26078
push dword [ebp - 0x10]
push eax
call sym.obfstr::xref::inner::h0756b64c5b59c188
add esp, 8
mov ecx, 0x38830c35
mov edx, 0x79b59657
xor ecx, dword [eax]
xor edx, dword [eax + 4]
cmp dword [ebp - 0x30], 8
mov dword [ebp - 0x28], edx
mov dword [ebp - 0x2c], ecx
jne 0x10005d8d
mov eax, dword [ebp - 0x34]
mov ecx, dword [eax]
mov eax, dword [eax + 4]
xor ecx, dword [ebp - 0x2c]
xor eax, dword [ebp - 0x28]
or eax, ecx
je 0x100077b8
lea eax, [0x10118e10]
lea ecx, [ebp - 0x10]
mov dword [ebp - 0x10], eax
lea eax, [ebp - 0x10]
mov eax, dword [ebp - 0x10]
mov dword [ebp - 0x10], 0x372b2dbd
push dword [ebp - 0x10]
push eax
call sym.obfstr::xref::inner::h87c79a6d21bdfbce
add esp, 8
mov ecx, 0xea879daf
mov edx, 0x3f7c57f6
mov esi, 0x5db6bd7
xor ecx, dword [eax]
xor edx, dword [eax + 4]
xor esi, dword [eax + 8]
movzx eax, byte [eax + 0xc]
xor al, 0x67
cmp dword [ebp - 0x30], 0xd
mov dword [ebp - 0x2c], ecx
mov dword [ebp - 0x28], edx
mov dword [ebp - 0x24], esi
mov byte [ebp - 0x20], al
jne 0x10005df7
push 0xd
push ebx
push dword [ebp - 0x34]
call sub.msvcrt.dll_memcmp
add esp, 0xc
test eax, eax
je 0x100077b8
lea eax, [0x10116d8b]
lea ecx, [ebp - 0x10]
mov dword [ebp - 0x10], eax
lea eax, [ebp - 0x10]
mov eax, dword [ebp - 0x10]
mov dword [ebp - 0x10], 0xc61c7273
push dword [ebp - 0x10]
push eax
call sym.obfstr::xref::inner::h96195de4c324d05e
add esp, 8
mov ecx, 0xde38fef7
mov edx, 0xfd29be84
xor ecx, dword [eax]
xor edx, dword [eax + 4]
movzx eax, byte [eax + 8]
xor al, 0xf8
cmp dword [ebp - 0x30], 9
mov dword [ebp - 0x2c], ecx
mov dword [ebp - 0x28], edx
mov byte [ebp - 0x24], al
jne 0x10005e56
push 9
push ebx
push dword [ebp - 0x34]
call sub.msvcrt.dll_memcmp
add esp, 0xc
test eax, eax
je 0x100077b8
lea eax, [0x1011bcdb]
lea ecx, [ebp - 0x10]
mov dword [ebp - 0x10], eax
lea eax, [ebp - 0x10]
mov eax, dword [ebp - 0x10]
mov dword [ebp - 0x10], 0xe1190bc3
push dword [ebp - 0x10]
push eax
call sym.obfstr::xref::inner::hf8888d4b8b2cdc54
add esp, 8
mov ecx, 0xc81352a3
xor ecx, dword [eax]
movzx eax, byte [eax + 4]
add al, 0x80
cmp dword [ebp - 0x30], 5
mov dword [ebp - 0x2c], ecx
mov byte [ebp - 0x28], al
jne 0x10005eae
mov eax, dword [ebp - 0x34]
mov ecx, dword [eax]
movzx eax, byte [eax + 4]
xor al, byte [ebp - 0x28]
xor ecx, dword [ebp - 0x2c]
movzx eax, al
or eax, ecx
je 0x100077b8
lea eax, [0x10112c5f]
lea ecx, [ebp - 0x10]
mov dword [ebp - 0x10], eax
lea eax, [ebp - 0x10]
mov eax, dword [ebp - 0x10]
mov dword [ebp - 0x10], 0x7de4426c
push dword [ebp - 0x10]
push eax
call sym.obfstr::xref::inner::h8d13142bb901b76e
add esp, 8
mov ecx, 0x74ff43d5
mov edx, 0xc301f77
xor ecx, dword [eax]
xor edx, dword [eax + 4]
movzx eax, byte [eax + 8]
xor al, 0x98
cmp dword [ebp - 0x30], 9
mov dword [ebp - 0x2c], ecx
mov dword [ebp - 0x28], edx
mov byte [ebp - 0x24], al
jne 0x10005f0d
push 9
push ebx
push dword [ebp - 0x34]
call sub.msvcrt.dll_memcmp
add esp, 0xc
test eax, eax
je 0x100077b8
lea eax, [0x1011d9a0]
lea ecx, [ebp - 0x10]
mov dword [ebp - 0x10], eax
lea eax, [ebp - 0x10]
mov eax, dword [ebp - 0x10]
mov dword [ebp - 0x10], 0xcdd4117d
push dword [ebp - 0x10]
push eax
call sym.obfstr::xref::inner::hc73de7a7f78683b3
add esp, 8
mov ecx, 0x3d8dfde4
xor ecx, dword [eax]
movzx eax, byte [eax + 4]
xor al, 0x7c
cmp dword [ebp - 0x30], 5
mov dword [ebp - 0x2c], ecx
mov byte [ebp - 0x28], al
jne 0x10005f65
mov eax, dword [ebp - 0x34]
mov ecx, dword [eax]
movzx eax, byte [eax + 4]
xor al, byte [ebp - 0x28]
xor ecx, dword [ebp - 0x2c]
movzx eax, al
or eax, ecx
je 0x100077b8
lea eax, [0x101182d8]
lea ecx, [ebp - 0x10]
mov dword [ebp - 0x10], eax
lea eax, [ebp - 0x10]
mov eax, dword [ebp - 0x10]
mov dword [ebp - 0x10], 0x965ab2bf
push dword [ebp - 0x10]
push eax
call sym.obfstr::xref::inner::hd9651bec26d1e679
add esp, 8
mov ecx, 0xecaf0703
xor ecx, dword [eax]
movzx eax, word [eax + 4]
xor al, 0xa4
xor ah, 0x45
cmp dword [ebp - 0x30], 6
mov dword [ebp - 0x2c], ecx
mov byte [ebp - 0x28], al
mov byte [ebp - 0x27], ah
jne 0x10005fc4
mov eax, dword [ebp - 0x34]
mov ecx, dword [eax]
movzx eax, word [eax + 4]
xor ax, word [ebp - 0x28]
xor ecx, dword [ebp - 0x2c]
movzx eax, ax
or eax, ecx
je 0x100077b8
lea eax, [0x101124e7]
lea ecx, [ebp - 0x10]
mov dword [ebp - 0x10], eax
lea eax, [ebp - 0x10]
mov eax, dword [ebp - 0x10]
mov dword [ebp - 0x10], 0xc8e1c9d3
push dword [ebp - 0x10]
push eax
call sym.obfstr::xref::inner::h229445ea360f3a2a
add esp, 8
mov ecx, 0x29d8678
mov edx, 0xf8093571
xor ecx, dword [eax]
xor edx, dword [eax + 4]
movzx ebx, byte [eax + 0xa]
movzx eax, word [eax + 8]
xor al, 0x62
xor ah, 0x3e
xor bl, 0x48
cmp dword [ebp - 0x30], 0xb
mov dword [ebp - 0x2c], ecx
mov dword [ebp - 0x28], edx
mov byte [ebp - 0x24], al
mov byte [ebp - 0x23], ah
mov byte [ebp - 0x22], bl
jne 0x10006037
push 0xb
lea edi, [ebp - 0x2c]
push edi
push dword [ebp - 0x34]
call sub.msvcrt.dll_memcmp
add esp, 0xc
test eax, eax
jne 0x1000603a
jmp 0x100077b8
lea edi, [ebp - 0x2c]
lea eax, [0x10111c33]
lea ecx, [ebp - 0x10]
mov dword [ebp - 0x10], eax
lea eax, [ebp - 0x10]
mov eax, dword [ebp - 0x10]
mov dword [ebp - 0x10], 0x2cefe225
push dword [ebp - 0x10]
push eax
call sym.obfstr::xref::inner::hd7ddd0358625bae8
add esp, 8
mov ecx, 0xe4671be6
mov edx, 0xe460d50b
mov esi, 0x26f8870b
xor ecx, dword [eax]
xor edx, dword [eax + 4]
xor esi, dword [eax + 8]
movzx eax, word [eax + 0xc]
xor al, 0xe7
xor ah, 0x7c
cmp dword [ebp - 0x30], 0xe
mov dword [ebp - 0x2c], ecx
mov dword [ebp - 0x28], edx
mov dword [ebp - 0x24], esi
mov byte [ebp - 0x20], al
mov byte [ebp - 0x1f], ah
jne 0x100060aa
push 0xe
push edi
push dword [ebp - 0x34]
call sub.msvcrt.dll_memcmp
add esp, 0xc
test eax, eax
je 0x100077b8
lea eax, [0x1011cb13]
lea ecx, [ebp - 0x10]
mov dword [ebp - 0x10], eax
lea eax, [ebp - 0x10]
mov eax, dword [ebp - 0x10]
mov dword [ebp - 0x10], 0x2a0b985a
push dword [ebp - 0x10]
push eax
call sym.obfstr::xref::inner::hd34ee4a4ea17a818
add esp, 8
mov ecx, 0x38d3683b
xor ecx, dword [eax]
movzx eax, word [eax + 4]
xor al, 0xf1
xor ah, 0x78
cmp dword [ebp - 0x30], 6
mov dword [ebp - 0x2c], ecx
mov byte [ebp - 0x28], al
mov byte [ebp - 0x27], ah
jne 0x10006109
mov eax, dword [ebp - 0x34]
mov ecx, dword [eax]
movzx eax, word [eax + 4]
xor ax, word [ebp - 0x28]
xor ecx, dword [ebp - 0x2c]
movzx eax, ax
or eax, ecx
je 0x100077b8
lea eax, [0x10118ce9]
lea ecx, [ebp - 0x10]
mov dword [ebp - 0x10], eax
lea eax, [ebp - 0x10]
mov eax, dword [ebp - 0x10]
mov dword [ebp - 0x10], 0xd2232898
push dword [ebp - 0x10]
push eax
call sym.obfstr::xref::inner::h8063a3700b8df21c
add esp, 8
mov ecx, 0x2bb06765
mov edx, 0xccc64dab
mov esi, 0xab16cd52
xor ecx, dword [eax]
xor edx, dword [eax + 4]
xor esi, dword [eax + 8]
movzx eax, byte [eax + 0xc]
xor al, 0x8c
cmp dword [ebp - 0x30], 0xd
mov dword [ebp - 0x2c], ecx
mov dword [ebp - 0x28], edx
mov dword [ebp - 0x24], esi
mov byte [ebp - 0x20], al
jne 0x10006173
push 0xd
push edi
push dword [ebp - 0x34]
call sub.msvcrt.dll_memcmp
add esp, 0xc
test eax, eax
je 0x100077b8
lea eax, [0x10119c37]
lea ecx, [ebp - 0x10]
mov dword [ebp - 0x10], eax
lea eax, [ebp - 0x10]
mov eax, dword [ebp - 0x10]
mov dword [ebp - 0x10], 0x440d2b09
push dword [ebp - 0x10]
push eax
call sym.obfstr::xref::inner::hb133d58f94a52a31
add esp, 8
mov ecx, 0x8f3c548e
xor ecx, dword [eax]
movzx eax, byte [eax + 4]
xor al, 0x58
cmp dword [ebp - 0x30], 5
mov dword [ebp - 0x2c], ecx
mov byte [ebp - 0x28], al
jne 0x100061cb
mov eax, dword [ebp - 0x34]
mov ecx, dword [eax]
movzx eax, byte [eax + 4]
xor al, byte [ebp - 0x28]
xor ecx, dword [ebp - 0x2c]
movzx eax, al
or eax, ecx
je 0x100077b8
lea eax, [0x10110c73]
lea ecx, [ebp - 0x10]
mov dword [ebp - 0x10], eax
lea eax, [ebp - 0x10]
mov eax, dword [ebp - 0x10]
mov dword [ebp - 0x10], 0xdddd88c3
push dword [ebp - 0x10]
push eax
call sym.obfstr::xref::inner::h76db034bd04e2b56
add esp, 8
mov ecx, 0xa385f7be
xor ecx, dword [eax]
movzx edx, byte [eax + 6]
movzx eax, word [eax + 4]
xor al, 0xe7
xor ah, 0x19
xor dl, 0x35
cmp dword [ebp - 0x30], 7
mov dword [ebp - 0x2c], ecx
mov byte [ebp - 0x28], al
mov byte [ebp - 0x27], ah
mov byte [ebp - 0x26], dl
jne 0x1000622f
mov eax, dword [ebp - 0x34]
mov ecx, dword [eax]
mov eax, dword [eax + 3]
xor ecx, dword [ebp - 0x2c]
xor eax, dword [ebp - 0x29]
or eax, ecx
je 0x100077b8
lea eax, [0x1011c5ab]
lea ecx, [ebp - 0x10]
mov dword [ebp - 0x10], eax
lea eax, [ebp - 0x10]
mov eax, dword [ebp - 0x10]
mov dword [ebp - 0x10], 0x57dd7f5c
push dword [ebp - 0x10]
push eax
call sym.obfstr::xref::inner::hed7a1356b9f85eb7
add esp, 8
mov ecx, 0x270552c3
mov edx, 0x26f3f9cd
mov edi, 0x6084d028
mov ebx, 0xaab40068
mov esi, 0x7d9bb3b4
xor ecx, dword [eax]
xor edx, dword [eax + 4]
xor edi, dword [eax + 8]
xor ebx, dword [eax + 0xc]
xor esi, dword [eax + 0x10]
movzx eax, word [eax + 0x14]
xor al, 2
xor ah, 0xfe
cmp dword [ebp - 0x30], 0x16
mov dword [ebp - 0x2c], ecx
mov dword [ebp - 0x28], edx
mov dword [ebp - 0x24], edi
mov dword [ebp - 0x20], ebx
mov dword [ebp - 0x1c], esi
mov byte [ebp - 0x18], al
mov byte [ebp - 0x17], ah
jne 0x100062d4
mov eax, dword [ebp - 0x34]
movdqu xmm2, xmmword [ebp - 0x2c]
movdqu xmm3, xmmword [ebp - 0x26]
lea edi, [ebp - 0x2c]
movdqu xmm0, xmmword [eax]
movdqu xmm1, xmmword [eax + 6]
pcmpeqb xmm2, xmm0
pcmpeqb xmm3, xmm1
pand xmm3, xmm2
pmovmskb eax, xmm3
cmp eax, 0xffff
jne 0x100062d7
jmp 0x100077b8
lea edi, [ebp - 0x2c]
lea eax, [0x10113c26]
lea ecx, [ebp - 0x10]
mov dword [ebp - 0x10], eax
lea eax, [ebp - 0x10]
mov eax, dword [ebp - 0x10]
mov dword [ebp - 0x10], 0x925b2ad4
push dword [ebp - 0x10]
push eax
call sym.obfstr::xref::inner::h3ab8c1e1354eb0f6
add esp, 8
mov ecx, 0xedbe3d1e
mov edx, 0x69a0ea10
mov esi, 0xe8b8dc41
xor ecx, dword [eax]
xor edx, dword [eax + 4]
xor esi, dword [eax + 8]
cmp dword [ebp - 0x30], 0xc
mov dword [ebp - 0x2c], ecx
mov dword [ebp - 0x28], edx
mov dword [ebp - 0x24], esi
jne 0x10006338
push 0xc
push edi
push dword [ebp - 0x34]
call sub.msvcrt.dll_memcmp
add esp, 0xc
test eax, eax
je 0x100077b8
lea eax, [0x1011b2b9]
lea ecx, [ebp - 0x10]
mov dword [ebp - 0x10], eax
lea eax, [ebp - 0x10]
mov eax, dword [ebp - 0x10]
mov dword [ebp - 0x10], 0xf7004006
push dword [ebp - 0x10]
push eax
call sym.obfstr::xref::inner::hfb1af3196dd1465a
add esp, 8
mov ecx, 0x6727ffe1
mov edx, 0x83a9e20c
mov esi, 0x42ef82f8
mov edi, 0xe4abafa0
mov ebx, 0xbaa306ef
xor ecx, dword [eax]
xor edx, dword [eax + 4]
xor esi, dword [eax + 8]
xor edi, dword [eax + 0xc]
xor ebx, dword [eax + 0x10]
cmp dword [ebp - 0x30], 0x14
mov dword [ebp - 0x2c], ecx
mov dword [ebp - 0x28], edx
mov dword [ebp - 0x24], esi
mov dword [ebp - 0x20], edi
mov dword [ebp - 0x1c], ebx
jne 0x100063ca
mov eax, dword [ebp - 0x34]
movdqu xmm1, xmmword [ebp - 0x2c]
movd xmm2, dword [ebp - 0x1c]
movdqu xmm0, xmmword [eax]
movd xmm3, dword [eax + 0x10]
pcmpeqb xmm1, xmm0
pcmpeqb xmm2, xmm3
pand xmm2, xmm1
pmovmskb eax, xmm2
cmp eax, 0xffff
je 0x100077b8
lea eax, [0x10110711]
lea ecx, [ebp - 0x10]
mov dword [ebp - 0x10], eax
lea eax, [ebp - 0x10]
mov eax, dword [ebp - 0x10]
mov dword [ebp - 0x10], 0x7ddba459
push dword [ebp - 0x10]
push eax
call sym.obfstr::xref::inner::he4d36970d552e1e2
add esp, 8
mov ecx, 0xb193142b
xor ecx, dword [eax]
movzx edx, byte [eax + 6]
movzx eax, word [eax + 4]
xor al, 0xa0
xor ah, 0xa9
xor dl, 0xd5
cmp dword [ebp - 0x30], 7
mov dword [ebp - 0x2c], ecx
mov byte [ebp - 0x28], al
mov byte [ebp - 0x27], ah
mov byte [ebp - 0x26], dl
jne 0x1000642e
mov eax, dword [ebp - 0x34]
mov ecx, dword [eax]
mov eax, dword [eax + 3]
xor ecx, dword [ebp - 0x2c]
xor eax, dword [ebp - 0x29]
or eax, ecx
je 0x100077b8
lea eax, [0x10114e85]
lea ecx, [ebp - 0x10]
mov dword [ebp - 0x10], eax
lea eax, [ebp - 0x10]
mov eax, dword [ebp - 0x10]
mov dword [ebp - 0x10], 0x7ca68a86
push dword [ebp - 0x10]
push eax
call sym.obfstr::xref::inner::h7c92ec16582561fe
add esp, 8
mov ecx, 0xa1650635
mov edx, 0x35d77a64
mov esi, 0x89e97209
mov edi, 0x52a83a7d
xor ecx, dword [eax]
xor edx, dword [eax + 4]
xor esi, dword [eax + 8]
xor edi, dword [eax + 0xc]
movzx eax, byte [eax + 0x10]
xor al, 0x4e
cmp dword [ebp - 0x30], 0x11
mov dword [ebp - 0x2c], ecx
mov dword [ebp - 0x28], edx
mov dword [ebp - 0x24], esi
mov dword [ebp - 0x20], edi
mov byte [ebp - 0x1c], al
jne 0x100064c4
mov eax, dword [ebp - 0x34]
movzx ecx, byte [ebp - 0x1c]
movdqu xmm1, xmmword [ebp - 0x2c]
movdqu xmm0, xmmword [eax]
movzx eax, byte [eax + 0x10]
movd xmm2, ecx
movd xmm3, eax
pcmpeqb xmm1, xmm0
pcmpeqb xmm2, xmm3
pand xmm2, xmm1
pmovmskb eax, xmm2
cmp eax, 0xffff
je 0x100077b8
lea eax, [0x101102eb]
lea ecx, [ebp - 0x10]
mov dword [ebp - 0x10], eax
lea eax, [ebp - 0x10]
mov eax, dword [ebp - 0x10]
mov dword [ebp - 0x10], 0x94d900a
push dword [ebp - 0x10]
push eax
call sym.obfstr::xref::inner::h6931b9b6427afe06
add esp, 8
mov ecx, 0x717d461
xor ecx, dword [eax]
movzx edx, byte [eax + 6]
movzx eax, word [eax + 4]
xor al, 0x2c
xor ah, 0xdf
xor dl, 0xea
cmp dword [ebp - 0x30], 7
mov dword [ebp - 0x2c], ecx
mov byte [ebp - 0x28], al
mov byte [ebp - 0x27], ah
mov byte [ebp - 0x26], dl
jne 0x10006528
mov eax, dword [ebp - 0x34]
mov ecx, dword [eax]
mov eax, dword [eax + 3]
xor ecx, dword [ebp - 0x2c]
xor eax, dword [ebp - 0x29]
or eax, ecx
je 0x100077b8
lea eax, [0x1010f611]
lea ecx, [ebp - 0x10]
mov dword [ebp - 0x10], eax
lea eax, [ebp - 0x10]
mov eax, dword [ebp - 0x10]
mov dword [ebp - 0x10], 0xe20a39ae
push dword [ebp - 0x10]
push eax
call sym.obfstr::xref::inner::h116c7dac4129f989
add esp, 8
mov ecx, 0xfcb79660
xor ecx, dword [eax]
movzx eax, byte [eax + 4]
xor al, 0xfd
cmp dword [ebp - 0x30], 5
mov dword [ebp - 0x2c], ecx
mov byte [ebp - 0x28], al
jne 0x10006580
mov eax, dword [ebp - 0x34]
mov ecx, dword [eax]
movzx eax, byte [eax + 4]
xor al, byte [ebp - 0x28]
xor ecx, dword [ebp - 0x2c]
movzx eax, al
or eax, ecx
je 0x100077b8
lea eax, [0x1011cc80]
lea ecx, [ebp - 0x10]
mov dword [ebp - 0x10], eax
lea eax, [ebp - 0x10]
mov eax, dword [ebp - 0x10]
mov dword [ebp - 0x10], 0x4f0702f3
push dword [ebp - 0x10]
push eax
call sym.obfstr::xref::inner::h4967fe1da4a179cf
add esp, 8
mov ecx, 0x642207c6
xor ecx, dword [eax]
movzx eax, byte [eax + 4]
xor al, 0xcb
cmp dword [ebp - 0x30], 5
mov dword [ebp - 0x2c], ecx
mov byte [ebp - 0x28], al
jne 0x100065d8
mov eax, dword [ebp - 0x34]
mov ecx, dword [eax]
movzx eax, byte [eax + 4]
xor al, byte [ebp - 0x28]
xor ecx, dword [ebp - 0x2c]
movzx eax, al
or eax, ecx
je 0x100077b8
lea eax, [0x10119ebc]
lea ecx, [ebp - 0x10]
mov dword [ebp - 0x10], eax
lea eax, [ebp - 0x10]
mov eax, dword [ebp - 0x10]
mov dword [ebp - 0x10], 0xc36d071f
push dword [ebp - 0x10]
push eax
call sym.obfstr::xref::inner::h90a0982cec11ac14
add esp, 8
mov ecx, 0x7a594777
mov edx, 0x4464bac
xor ecx, dword [eax]
xor edx, dword [eax + 4]
cmp dword [ebp - 0x30], 8
mov dword [ebp - 0x28], edx
mov dword [ebp - 0x2c], ecx
jne 0x1000662e
mov eax, dword [ebp - 0x34]
mov ecx, dword [eax]
mov eax, dword [eax + 4]
xor ecx, dword [ebp - 0x2c]
xor eax, dword [ebp - 0x28]
or eax, ecx
je 0x100077b8
lea eax, [0x1011a9e4]
lea ecx, [ebp - 0x10]
mov dword [ebp - 0x10], eax
lea eax, [ebp - 0x10]
mov eax, dword [ebp - 0x10]
mov dword [ebp - 0x10], 0xa5a875cd
push dword [ebp - 0x10]
push eax
call sym.obfstr::xref::inner::h9e495ac81cffd4d8
add esp, 8
mov ecx, 0xa4ce7c1e
xor ecx, dword [eax]
movzx eax, byte [eax + 4]
xor al, 0xb8
cmp dword [ebp - 0x30], 5
mov dword [ebp - 0x2c], ecx
mov byte [ebp - 0x28], al
jne 0x10006686
mov eax, dword [ebp - 0x34]
mov ecx, dword [eax]
movzx eax, byte [eax + 4]
xor al, byte [ebp - 0x28]
xor ecx, dword [ebp - 0x2c]
movzx eax, al
or eax, ecx
je 0x100077b8
lea eax, [0x101144f5]
lea ecx, [ebp - 0x10]
mov dword [ebp - 0x10], eax
lea eax, [ebp - 0x10]
mov eax, dword [ebp - 0x10]
mov dword [ebp - 0x10], 0x5ba9fe34
push dword [ebp - 0x10]
push eax
call sym.obfstr::xref::inner::h938b6c0c5e64e39b
add esp, 8
mov ecx, 0x4ecdb0aa
xor ecx, dword [eax]
movzx eax, byte [eax + 4]
xor al, 6
cmp dword [ebp - 0x30], 5
mov dword [ebp - 0x2c], ecx
mov byte [ebp - 0x28], al
jne 0x100066de
mov eax, dword [ebp - 0x34]
mov ecx, dword [eax]
movzx eax, byte [eax + 4]
xor al, byte [ebp - 0x28]
xor ecx, dword [ebp - 0x2c]
movzx eax, al
or eax, ecx
je 0x100077b8
lea eax, [0x10116397]
lea esi, [ebp - 0x2c]
mov dword [ebp - 0x2c], eax
lea eax, [ebp - 0x2c]
mov eax, dword [ebp - 0x2c]
mov dword [ebp - 0x2c], 0x7e2f0756
push dword [ebp - 0x2c]
push eax
call sym.obfstr::xref::inner::ha16bf1655d6d2c49
add esp, 8
mov ecx, 0xc62781c2
xor ecx, dword [eax]
cmp dword [ebp - 0x30], 4
mov dword [ebp - 0x10], ecx
jne 0x10006721
mov eax, dword [ebp - 0x34]
mov eax, dword [eax]
cmp eax, dword [ebp - 0x10]
je 0x100077b8
lea eax, [0x1011db97]
lea ecx, [ebp - 0x10]
mov dword [ebp - 0x10], eax
lea eax, [ebp - 0x10]
mov eax, dword [ebp - 0x10]
mov dword [ebp - 0x10], 0x358bbb16
push dword [ebp - 0x10]
push eax
call sym.obfstr::xref::inner::h32e54bbbb9f5e107
add esp, 8
mov ecx, 0xdc5a334b
mov edx, 0xdc50d412
mov edi, 0x1c8c181b
xor ecx, dword [eax]
xor edx, dword [eax + 4]
xor edi, dword [eax + 8]
movzx ebx, byte [eax + 0xe]
movzx eax, word [eax + 0xc]
xor al, 0x5c
xor ah, 0xcc
xor bl, 0x69
cmp dword [ebp - 0x30], 0xf
mov dword [ebp - 0x2c], ecx
mov dword [ebp - 0x28], edx
mov dword [ebp - 0x24], edi
mov byte [ebp - 0x20], al
mov byte [ebp - 0x1f], ah
mov byte [ebp - 0x1e], bl
jne 0x1000679b
push 0xf
push esi
push dword [ebp - 0x34]
call sub.msvcrt.dll_memcmp
add esp, 0xc
test eax, eax
je 0x100077b8
lea eax, [0x1011b14e]
lea ecx, [ebp - 0x10]
mov dword [ebp - 0x10], eax
lea eax, [ebp - 0x10]
mov eax, dword [ebp - 0x10]
mov dword [ebp - 0x10], 0x50cd6c2b
push dword [ebp - 0x10]
push eax
call sym.obfstr::xref::inner::he40dd5e8da8a384b
add esp, 8
mov ecx, 0xf58deb33
mov edx, 0x559e4786
xor ecx, dword [eax]
xor edx, dword [eax + 4]
cmp dword [ebp - 0x30], 8
mov dword [ebp - 0x28], edx
mov dword [ebp - 0x2c], ecx
jne 0x100067f1
mov eax, dword [ebp - 0x34]
mov ecx, dword [eax]
mov eax, dword [eax + 4]
xor ecx, dword [ebp - 0x2c]
xor eax, dword [ebp - 0x28]
or eax, ecx
je 0x100077b8
lea eax, [0x10119572]
lea ecx, [ebp - 0x10]
mov dword [ebp - 0x10], eax
lea eax, [ebp - 0x10]
mov eax, dword [ebp - 0x10]
mov dword [ebp - 0x10], 0xaad9e67f
push dword [ebp - 0x10]
push eax
call sym.obfstr::xref::inner::hac4ab2cb962d1ef4
add esp, 8
mov ecx, 0x495d256e
mov edx, 0x53e2e156
mov edi, 0xf6ccf0f2
xor ecx, dword [eax]
xor edx, dword [eax + 4]
xor edi, dword [eax + 8]
cmp dword [ebp - 0x30], 0xc
mov dword [ebp - 0x2c], ecx
mov dword [ebp - 0x28], edx
mov dword [ebp - 0x24], edi
jne 0x10006852
push 0xc
push esi
push dword [ebp - 0x34]
call sub.msvcrt.dll_memcmp
add esp, 0xc
test eax, eax
je 0x100077b8
lea eax, [0x10112d29]
lea ecx, [ebp - 0x2c]
mov dword [ebp - 0x2c], eax
lea eax, [ebp - 0x2c]
mov eax, dword [ebp - 0x2c]
mov dword [ebp - 0x2c], 0xaa744d54
push dword [ebp - 0x2c]
push eax
call sym.obfstr::xref::inner::h1979e62c9ca90ac4
add esp, 8
movzx ecx, byte [eax + 2]
movzx eax, word [eax]
xor al, 0x7f
xor cl, 2
xor ah, 0x67
movzx esi, ah
movzx edx, cl
movzx eax, al
mov byte [ebp - 0xe], cl
shl edx, 0x10
shl esi, 8
or esi, edx
or eax, esi
cmp dword [ebp - 0x30], 3
mov word [ebp - 0x10], ax
jne 0x100068c3
mov eax, dword [ebp - 0x34]
movzx ecx, word [eax]
movzx eax, byte [eax + 2]
xor al, byte [ebp - 0xe]
xor cx, word [ebp - 0x10]
movzx eax, al
or ax, cx
je 0x100077b8
lea eax, [0x101178ad]
lea esi, [ebp - 0x2c]
mov dword [ebp - 0x2c], eax
lea eax, [ebp - 0x2c]
mov eax, dword [ebp - 0x2c]
mov dword [ebp - 0x2c], 0x19432948
push dword [ebp - 0x2c]
push eax
call sym.obfstr::xref::inner::h252fc1ea7a81b60f
add esp, 8
movzx ecx, byte [eax + 2]
movzx eax, word [eax]
xor al, 0x1e
xor cl, 0x4f
xor ah, 0xeb
movzx edi, ah
movzx edx, cl
movzx eax, al
mov byte [ebp - 0xe], cl
shl edx, 0x10
shl edi, 8
or edi, edx
or eax, edi
cmp dword [ebp - 0x30], 3
mov word [ebp - 0x10], ax
jne 0x10006934
mov eax, dword [ebp - 0x34]
movzx ecx, word [eax]
movzx eax, byte [eax + 2]
xor al, byte [ebp - 0xe]
xor cx, word [ebp - 0x10]
movzx eax, al
or ax, cx
je 0x100077b8
lea eax, [0x1011854c]
lea ecx, [ebp - 0x10]
mov dword [ebp - 0x10], eax
lea eax, [ebp - 0x10]
mov eax, dword [ebp - 0x10]
mov dword [ebp - 0x10], 0x174e961
push dword [ebp - 0x10]
push eax
call sym.obfstr::xref::inner::hfcf19e8217079a86
add esp, 8
mov ecx, 0x8518d7b3
xor ecx, dword [eax]
movzx edx, byte [eax + 6]
movzx eax, word [eax + 4]
xor al, 0xc4
xor ah, 0xf0
xor dl, 0x31
cmp dword [ebp - 0x30], 7
mov dword [ebp - 0x2c], ecx
mov byte [ebp - 0x28], al
mov byte [ebp - 0x27], ah
mov byte [ebp - 0x26], dl
jne 0x10006998
mov eax, dword [ebp - 0x34]
mov ecx, dword [eax]
mov eax, dword [eax + 3]
xor ecx, dword [ebp - 0x2c]
xor eax, dword [ebp - 0x29]
or eax, ecx
je 0x100077b8
lea eax, [0x1011b456]
lea ecx, [ebp - 0x10]
mov dword [ebp - 0x10], eax
lea eax, [ebp - 0x10]
mov eax, dword [ebp - 0x10]
mov dword [ebp - 0x10], 0x3b3002a3
push dword [ebp - 0x10]
push eax
call sym.obfstr::xref::inner::h6f614c7f5a4aa01e
add esp, 8
mov ecx, 0xc8aec64e
xor ecx, dword [eax]
movzx eax, word [eax + 4]
xor al, 0xdd
xor ah, 0xc1
cmp dword [ebp - 0x30], 6
mov dword [ebp - 0x2c], ecx
mov byte [ebp - 0x28], al
mov byte [ebp - 0x27], ah
jne 0x100069f7
mov eax, dword [ebp - 0x34]
mov ecx, dword [eax]
movzx eax, word [eax + 4]
xor ax, word [ebp - 0x28]
xor ecx, dword [ebp - 0x2c]
movzx eax, ax
or eax, ecx
je 0x100077b8
lea eax, [0x10115cf5]
lea ecx, [ebp - 0x10]
mov dword [ebp - 0x10], eax
lea eax, [ebp - 0x10]
mov eax, dword [ebp - 0x10]
mov dword [ebp - 0x10], 0xe79bf7a1
push dword [ebp - 0x10]
push eax
call sym.obfstr::xref::inner::h8a72a606dc20d11a
add esp, 8
mov ecx, 0x139cc308
mov edx, 0xf44d5836
mov edi, 0xb63d45f3
xor ecx, dword [eax]
xor edx, dword [eax + 4]
xor edi, dword [eax + 8]
cmp dword [ebp - 0x30], 0xc
mov dword [ebp - 0x2c], ecx
mov dword [ebp - 0x28], edx
mov dword [ebp - 0x24], edi
jne 0x10006a58
push 0xc
push esi
push dword [ebp - 0x34]
call sub.msvcrt.dll_memcmp
add esp, 0xc
test eax, eax
je 0x100077b8
lea eax, [0x10112033]
lea ecx, [ebp - 0x10]
mov dword [ebp - 0x10], eax
lea eax, [ebp - 0x10]
mov eax, dword [ebp - 0x10]
mov dword [ebp - 0x10], 0x775cb99a
push dword [ebp - 0x10]
push eax
call sym.obfstr::xref::inner::hd887e44348cd5fa6
add esp, 8
mov ecx, 0x3eb9c0c
mov edx, 0x7d2ea319
xor ecx, dword [eax]
xor edx, dword [eax + 4]
movzx eax, word [eax + 8]
xor al, 0x5f
xor ah, 0x20
cmp dword [ebp - 0x30], 0xa
mov dword [ebp - 0x2c], ecx
mov dword [ebp - 0x28], edx
mov byte [ebp - 0x24], al
mov byte [ebp - 0x23], ah
jne 0x10006abd
push 0xa
push esi
push dword [ebp - 0x34]
call sub.msvcrt.dll_memcmp
add esp, 0xc
test eax, eax
je 0x100077b8
lea eax, [0x10118960]
lea ecx, [ebp - 0x10]
mov dword [ebp - 0x10], eax
lea eax, [ebp - 0x10]
mov eax, dword [ebp - 0x10]
mov dword [ebp - 0x10], 0x7ef190a2
push dword [ebp - 0x10]
push eax
call sym.obfstr::xref::inner::hb71fc988d1230405
add esp, 8
mov ecx, 0x5ce84ce9
mov edx, 0xfbdd8c33
xor ecx, dword [eax]
xor edx, dword [eax + 4]
movzx eax, word [eax + 8]
xor al, 0xde
xor ah, 0xea
cmp dword [ebp - 0x30], 0xa
mov dword [ebp - 0x2c], ecx
mov dword [ebp - 0x28], edx
mov byte [ebp - 0x24], al
mov byte [ebp - 0x23], ah
jne 0x10006b22
push 0xa
push esi
push dword [ebp - 0x34]
call sub.msvcrt.dll_memcmp
add esp, 0xc
test eax, eax
je 0x100077b8
lea eax, [0x101107b7]
lea ecx, [ebp - 0x10]
mov dword [ebp - 0x10], eax
lea eax, [ebp - 0x10]
mov eax, dword [ebp - 0x10]
mov dword [ebp - 0x10], 0x66933803
push dword [ebp - 0x10]
push eax
call sym.obfstr::xref::inner::h8591554c5025ca2a
add esp, 8
mov ecx, 0xecf8d6e7
mov edx, 0x32adf355
xor ecx, dword [eax]
xor edx, dword [eax + 4]
cmp dword [ebp - 0x30], 8
mov dword [ebp - 0x28], edx
mov dword [ebp - 0x2c], ecx
jne 0x10006b78
mov eax, dword [ebp - 0x34]
mov ecx, dword [eax]
mov eax, dword [eax + 4]
xor ecx, dword [ebp - 0x2c]
xor eax, dword [ebp - 0x28]
or eax, ecx
je 0x100077b8
lea eax, [0x1011878b]
lea ecx, [ebp - 0x10]
mov dword [ebp - 0x10], eax
lea eax, [ebp - 0x10]
mov eax, dword [ebp - 0x10]
mov dword [ebp - 0x10], 0xd391d4bf
push dword [ebp - 0x10]
push eax
call sym.obfstr::xref::inner::h58988ec6d90d8221
add esp, 8
mov ecx, 0x2a7b79ca
mov esi, 0xbbce8a8b
mov edi, 0x39642744
mov ebx, 0xc13c9c2
xor ecx, dword [eax]
mov dword [ebp - 0x40], ecx
mov ecx, 0xed01760b
xor ecx, dword [eax + 4]
mov dword [ebp - 0x3c], ecx
mov ecx, 0xd05dd9b7
xor esi, dword [eax + 8]
xor edi, dword [eax + 0xc]
xor ebx, dword [eax + 0x10]
xor ecx, dword [eax + 0x14]
movzx eax, word [eax + 0x18]
mov edx, dword [ebp - 0x40]
xor al, 0x42
mov dword [ebp - 0x2c], edx
mov edx, dword [ebp - 0x3c]
xor ah, 0x8c
cmp dword [ebp - 0x30], 0x1a
mov dword [ebp - 0x28], edx
mov dword [ebp - 0x24], esi
mov dword [ebp - 0x20], edi
mov dword [ebp - 0x1c], ebx
mov dword [ebp - 0x18], ecx
mov byte [ebp - 0x14], al
mov byte [ebp - 0x13], ah
jne 0x10006c30
mov eax, dword [ebp - 0x34]
movdqu xmm2, xmmword [ebp - 0x2c]
movdqu xmm3, xmmword [ebp - 0x22]
movdqu xmm0, xmmword [eax]
movdqu xmm1, xmmword [eax + 0xa]
pcmpeqb xmm2, xmm0
pcmpeqb xmm3, xmm1
pand xmm3, xmm2
pmovmskb eax, xmm3
cmp eax, 0xffff
je 0x100077b8
lea eax, [0x1011477e]
lea ecx, [ebp - 0x10]
mov dword [ebp - 0x10], eax
lea eax, [ebp - 0x10]
mov eax, dword [ebp - 0x10]
mov dword [ebp - 0x10], 0x1e59033f
push dword [ebp - 0x10]
push eax
call sym.obfstr::xref::inner::h1730c4a6b8228a53
add esp, 8
mov ecx, 0x81e072ec
xor ecx, dword [eax]
movzx eax, word [eax + 4]
xor al, 0x72
xor ah, 0x13
cmp dword [ebp - 0x30], 6
mov dword [ebp - 0x2c], ecx
mov byte [ebp - 0x28], al
mov byte [ebp - 0x27], ah
jne 0x10006c8f
mov eax, dword [ebp - 0x34]
mov ecx, dword [eax]
movzx eax, word [eax + 4]
xor ax, word [ebp - 0x28]
xor ecx, dword [ebp - 0x2c]
movzx eax, ax
or eax, ecx
je 0x100077b8
lea eax, [0x101137dd]
lea ecx, [ebp - 0x10]
mov dword [ebp - 0x10], eax
lea eax, [ebp - 0x10]
mov eax, dword [ebp - 0x10]
mov dword [ebp - 0x10], 0x72636876
push dword [ebp - 0x10]
push eax
call sym.obfstr::xref::inner::ha1f1b934ac82221d
add esp, 8
mov ecx, 0xde560bcc
xor ecx, dword [eax]
movzx edx, byte [eax + 6]
movzx eax, word [eax + 4]
xor al, 0x3b
xor ah, 0xf
xor dl, 0xdf
cmp dword [ebp - 0x30], 7
mov dword [ebp - 0x2c], ecx
mov byte [ebp - 0x28], al
mov byte [ebp - 0x27], ah
mov byte [ebp - 0x26], dl
jne 0x10006cf3
mov eax, dword [ebp - 0x34]
mov ecx, dword [eax]
mov eax, dword [eax + 3]
xor ecx, dword [ebp - 0x2c]
xor eax, dword [ebp - 0x29]
or eax, ecx
je 0x100077b8
lea eax, [0x1010ee4f]
lea ecx, [ebp - 0x2c]
mov dword [ebp - 0x2c], eax
lea eax, [ebp - 0x2c]
mov eax, dword [ebp - 0x2c]
mov dword [ebp - 0x2c], 0xd22a6c55
push dword [ebp - 0x2c]
push eax
call sym.obfstr::xref::inner::hca3b3431c0577489
add esp, 8
mov ecx, 0x7d512ec9
xor ecx, dword [eax]
cmp dword [ebp - 0x30], 4
mov dword [ebp - 0x10], ecx
jne 0x10006d36
mov eax, dword [ebp - 0x34]
mov eax, dword [eax]
cmp eax, dword [ebp - 0x10]
je 0x100077b8
lea eax, [0x10110855]
lea ecx, [ebp - 0x10]
mov dword [ebp - 0x10], eax
lea eax, [ebp - 0x10]
mov eax, dword [ebp - 0x10]
mov dword [ebp - 0x10], 0x751b8a14
push dword [ebp - 0x10]
push eax
call sym.obfstr::xref::inner::hc301a9a97c23ca7f
add esp, 8
mov ecx, 0xa6374d27
xor ecx, dword [eax]
movzx edx, byte [eax + 6]
movzx eax, word [eax + 4]
xor al, 0x2e
xor ah, 0xd7
xor dl, 0xe2
cmp dword [ebp - 0x30], 7
mov dword [ebp - 0x2c], ecx
mov byte [ebp - 0x28], al
mov byte [ebp - 0x27], ah
mov byte [ebp - 0x26], dl
jne 0x10006d9a
mov eax, dword [ebp - 0x34]
mov ecx, dword [eax]
mov eax, dword [eax + 3]
xor ecx, dword [ebp - 0x2c]
xor eax, dword [ebp - 0x29]
or eax, ecx
je 0x100077b8
lea eax, [0x10115332]
lea ecx, [ebp - 0x10]
mov dword [ebp - 0x10], eax
lea eax, [ebp - 0x10]
mov eax, dword [ebp - 0x10]
mov dword [ebp - 0x10], 0x20c31459
push dword [ebp - 0x10]
push eax
call sym.obfstr::xref::inner::h9af42196e5a5193f
add esp, 8
mov ecx, 0x52544437
mov edx, 0x808be29e
xor ecx, dword [eax]
xor edx, dword [eax + 4]
cmp dword [ebp - 0x30], 8
mov dword [ebp - 0x28], edx
mov dword [ebp - 0x2c], ecx
jne 0x10006df0
mov eax, dword [ebp - 0x34]
mov ecx, dword [eax]
mov eax, dword [eax + 4]
xor ecx, dword [ebp - 0x2c]
xor eax, dword [ebp - 0x28]
or eax, ecx
je 0x100077b8
lea eax, [0x1010f55f]
lea ecx, [ebp - 0x2c]
mov dword [ebp - 0x2c], eax
lea eax, [ebp - 0x2c]
mov eax, dword [ebp - 0x2c]
mov dword [ebp - 0x2c], 0xb9a2818d
push dword [ebp - 0x2c]
push eax
call sym.obfstr::xref::inner::h2348ddfa7df4e6f8
add esp, 8
mov ecx, 0x6b77c0dc
xor ecx, dword [eax]
cmp dword [ebp - 0x30], 4
mov dword [ebp - 0x10], ecx
jne 0x10006e33
mov eax, dword [ebp - 0x34]
mov eax, dword [eax]
cmp eax, dword [ebp - 0x10]
je 0x100077b8
lea eax, [0x101174f0]
lea ecx, [ebp - 0x10]
mov dword [ebp - 0x10], eax
lea eax, [ebp - 0x10]
mov eax, dword [ebp - 0x10]
mov dword [ebp - 0x10], 0x71b5f296
push dword [ebp - 0x10]
push eax
call sym.obfstr::xref::inner::hcbec703b65c82802
add esp, 8
mov ecx, 0x8f81dc10
xor ecx, dword [eax]
movzx edx, byte [eax + 6]
movzx eax, word [eax + 4]
xor al, 0x31
xor ah, 0x44
xor dl, 0x73
cmp dword [ebp - 0x30], 7
mov dword [ebp - 0x2c], ecx
mov byte [ebp - 0x28], al
mov byte [ebp - 0x27], ah
mov byte [ebp - 0x26], dl
jne 0x10006e97
mov eax, dword [ebp - 0x34]
mov ecx, dword [eax]
mov eax, dword [eax + 3]
xor ecx, dword [ebp - 0x2c]
xor eax, dword [ebp - 0x29]
or eax, ecx
je 0x100077b8
lea eax, [0x10119b34]
lea ecx, [ebp - 0x2c]
mov dword [ebp - 0x2c], eax
lea eax, [ebp - 0x2c]
mov eax, dword [ebp - 0x2c]
mov dword [ebp - 0x2c], 0xd0110d89
push dword [ebp - 0x2c]
push eax
call sym.obfstr::xref::inner::h2bb2c29fdcc4f19a
add esp, 8
movzx ecx, byte [eax + 2]
movzx eax, word [eax]
xor al, 0xac
xor cl, 0xd2
xor ah, 0xd
movzx esi, ah
movzx edx, cl
movzx eax, al
mov byte [ebp - 0xe], cl
shl edx, 0x10
shl esi, 8
or esi, edx
or eax, esi
cmp dword [ebp - 0x30], 3
mov word [ebp - 0x10], ax
jne 0x10006f08
mov eax, dword [ebp - 0x34]
movzx ecx, word [eax]
movzx eax, byte [eax + 2]
xor al, byte [ebp - 0xe]
xor cx, word [ebp - 0x10]
movzx eax, al
or ax, cx
je 0x100077b8
lea eax, [0x101158ec]
lea ecx, [ebp - 0x2c]
mov dword [ebp - 0x2c], eax
lea eax, [ebp - 0x2c]
mov eax, dword [ebp - 0x2c]
mov dword [ebp - 0x2c], 0x71aecca6
push dword [ebp - 0x2c]
push eax
call sym.obfstr::xref::inner::hb41e3f585d2f48af
add esp, 8
mov ecx, 0x9aa0d1cf
xor ecx, dword [eax]
cmp dword [ebp - 0x30], 4
mov dword [ebp - 0x10], ecx
jne 0x10006f4b
mov eax, dword [ebp - 0x34]
mov eax, dword [eax]
cmp eax, dword [ebp - 0x10]
je 0x100077b8
lea eax, [0x1011c769]
lea ecx, [ebp - 0x10]
mov dword [ebp - 0x10], eax
lea eax, [ebp - 0x10]
mov eax, dword [ebp - 0x10]
mov dword [ebp - 0x10], 0x3ed0aefb
push dword [ebp - 0x10]
push eax
call sym.obfstr::xref::inner::hcfe0a5f9f2d8c575
add esp, 8
mov ecx, 0xdeef3902
xor ecx, dword [eax]
movzx edx, byte [eax + 6]
movzx eax, word [eax + 4]
xor al, 0x45
xor ah, 0xd9
xor dl, 0x23
cmp dword [ebp - 0x30], 7
mov dword [ebp - 0x2c], ecx
mov byte [ebp - 0x28], al
mov byte [ebp - 0x27], ah
mov byte [ebp - 0x26], dl
jne 0x10006faf
mov eax, dword [ebp - 0x34]
mov ecx, dword [eax]
mov eax, dword [eax + 3]
xor ecx, dword [ebp - 0x2c]
xor eax, dword [ebp - 0x29]
or eax, ecx
je 0x100077b8
lea eax, [0x1011c25b]
lea esi, [ebp - 0x2c]
mov dword [ebp - 0x2c], eax
lea eax, [ebp - 0x2c]
mov eax, dword [ebp - 0x2c]
mov dword [ebp - 0x2c], 0x2665ad95
push dword [ebp - 0x2c]
push eax
call sym.obfstr::xref::inner::hc6e0138cf604cb4c
add esp, 8
mov ecx, 0x5ceb167d
xor ecx, dword [eax]
cmp dword [ebp - 0x30], 4
mov dword [ebp - 0x10], ecx
jne 0x10006ff2
mov eax, dword [ebp - 0x34]
mov eax, dword [eax]
cmp eax, dword [ebp - 0x10]
je 0x100077b8
lea eax, [0x101176e9]
lea ecx, [ebp - 0x10]
mov dword [ebp - 0x10], eax
lea eax, [ebp - 0x10]
mov eax, dword [ebp - 0x10]
mov dword [ebp - 0x10], 0xf0eaf0ca
push dword [ebp - 0x10]
push eax
call sym.obfstr::xref::inner::h0a61ddfd318243ba
add esp, 8
mov ecx, 0x7751b316
xor ecx, dword [eax]
movzx edx, byte [eax + 6]
movzx eax, word [eax + 4]
xor al, 0x6f
xor ah, 0x22
xor dl, 0x59
cmp dword [ebp - 0x30], 7
mov dword [ebp - 0x2c], ecx
mov byte [ebp - 0x28], al
mov byte [ebp - 0x27], ah
mov byte [ebp - 0x26], dl
jne 0x10007056
mov eax, dword [ebp - 0x34]
mov ecx, dword [eax]
mov eax, dword [eax + 3]
xor ecx, dword [ebp - 0x2c]
xor eax, dword [ebp - 0x29]
or eax, ecx
je 0x100077b8
lea eax, [0x10114257]
lea ecx, [ebp - 0x10]
mov dword [ebp - 0x10], eax
lea eax, [ebp - 0x10]
mov eax, dword [ebp - 0x10]
mov dword [ebp - 0x10], 0xafbeaecc
push dword [ebp - 0x10]
push eax
call sym.obfstr::xref::inner::h823a1d5504c14cff
add esp, 8
mov ecx, 0xee419db0
mov edx, 0x63099a2b
mov edi, 0x59d693ad
xor ecx, dword [eax]
xor edx, dword [eax + 4]
xor edi, dword [eax + 8]
cmp dword [ebp - 0x30], 0xc
mov dword [ebp - 0x2c], ecx
mov dword [ebp - 0x28], edx
mov dword [ebp - 0x24], edi
jne 0x100070b7
push 0xc
push esi
push dword [ebp - 0x34]
call sub.msvcrt.dll_memcmp
add esp, 0xc
test eax, eax
je 0x100077b8
lea eax, [0x1011b33f]
lea ecx, [ebp - 0x10]
mov dword [ebp - 0x10], eax
lea eax, [ebp - 0x10]
mov eax, dword [ebp - 0x10]
mov dword [ebp - 0x10], 0x7157ce3c
push dword [ebp - 0x10]
push eax
call sym.obfstr::xref::inner::hcd3e95f7f9842b30
add esp, 8
mov ecx, 0x9683e1df
mov edx, 0xbdb6e4e3
mov edi, 0x447c3ab6
xor ecx, dword [eax]
xor edx, dword [eax + 4]
xor edi, dword [eax + 8]
movzx eax, byte [eax + 0xc]
xor al, 0x43
cmp dword [ebp - 0x30], 0xd
mov dword [ebp - 0x2c], ecx
mov dword [ebp - 0x28], edx
mov dword [ebp - 0x24], edi
mov byte [ebp - 0x20], al
jne 0x10007121
push 0xd
push esi
push dword [ebp - 0x34]
call sub.msvcrt.dll_memcmp
add esp, 0xc
test eax, eax
je 0x100077b8
lea eax, [0x101199c1]
lea ecx, [ebp - 0x10]
mov dword [ebp - 0x10], eax
lea eax, [ebp - 0x10]
mov eax, dword [ebp - 0x10]
mov dword [ebp - 0x10], 0xd7f45832
push dword [ebp - 0x10]
push eax
call sym.obfstr::xref::inner::h5f946ce350777019
add esp, 8
mov ecx, 0x31f1bf3a
xor ecx, dword [eax]
movzx edx, byte [eax + 6]
movzx eax, word [eax + 4]
xor al, 0x11
xor ah, 0x7a
xor dl, 0xc9
cmp dword [ebp - 0x30], 7
mov dword [ebp - 0x2c], ecx
mov byte [ebp - 0x28], al
mov byte [ebp - 0x27], ah
mov byte [ebp - 0x26], dl
jne 0x10007185
mov eax, dword [ebp - 0x34]
mov ecx, dword [eax]
mov eax, dword [eax + 3]
xor ecx, dword [ebp - 0x2c]
xor eax, dword [ebp - 0x29]
or eax, ecx
je 0x100077b8
lea eax, [0x10113437]
lea ecx, [ebp - 0x10]
mov dword [ebp - 0x10], eax
lea eax, [ebp - 0x10]
mov eax, dword [ebp - 0x10]
mov dword [ebp - 0x10], 0xccd8c849
push dword [ebp - 0x10]
push eax
call sym.obfstr::xref::inner::h49308e9aba6f8631
add esp, 8
mov ecx, 0x2e703c22
xor ecx, dword [eax]
movzx eax, word [eax + 4]
xor al, 0xd8
xor ah, 0x73
cmp dword [ebp - 0x30], 6
mov dword [ebp - 0x2c], ecx
mov byte [ebp - 0x28], al
mov byte [ebp - 0x27], ah
jne 0x100071e4
mov eax, dword [ebp - 0x34]
mov ecx, dword [eax]
movzx eax, word [eax + 4]
xor ax, word [ebp - 0x28]
xor ecx, dword [ebp - 0x2c]
movzx eax, ax
or eax, ecx
je 0x100077b8
lea eax, [0x1010e77c]
lea ecx, [ebp - 0x10]
mov dword [ebp - 0x10], eax
lea eax, [ebp - 0x10]
mov eax, dword [ebp - 0x10]
mov dword [ebp - 0x10], 0x42857774
push dword [ebp - 0x10]
push eax
call sym.obfstr::xref::inner::hce24cb2c01fa1e69
add esp, 8
mov ecx, 0x673eff23
mov edx, 0xa382aa8e
xor ecx, dword [eax]
xor edx, dword [eax + 4]
movzx eax, byte [eax + 8]
xor al, 7
cmp dword [ebp - 0x30], 9
mov dword [ebp - 0x2c], ecx
mov dword [ebp - 0x28], edx
mov byte [ebp - 0x24], al
jne 0x10007243
push 9
push esi
push dword [ebp - 0x34]
call sub.msvcrt.dll_memcmp
add esp, 0xc
test eax, eax
je 0x100077b8
lea eax, [0x101158eb]
lea ecx, [ebp - 0x10]
mov dword [ebp - 0x10], eax
lea eax, [ebp - 0x10]
mov eax, dword [ebp - 0x10]
mov dword [ebp - 0x10], 0xb97b13f1
push dword [ebp - 0x10]
push eax
call sym.obfstr::xref::inner::h00482d776ef63e1f
add esp, 8
mov ecx, 0x43b457dd
mov edx, 0xe0bdfc3a
xor ecx, dword [eax]
xor edx, dword [eax + 4]
movzx eax, word [eax + 8]
xor al, 0x47
xor ah, 0xe7
cmp dword [ebp - 0x30], 0xa
mov dword [ebp - 0x2c], ecx
mov dword [ebp - 0x28], edx
mov byte [ebp - 0x24], al
mov byte [ebp - 0x23], ah
jne 0x100072a8
push 0xa
push esi
push dword [ebp - 0x34]
call sub.msvcrt.dll_memcmp
add esp, 0xc
test eax, eax
je 0x100077b8
lea eax, [0x10118af9]
lea ecx, [ebp - 0x10]
mov dword [ebp - 0x10], eax
lea eax, [ebp - 0x10]
mov eax, dword [ebp - 0x10]
mov dword [ebp - 0x10], 0x4a29052d
push dword [ebp - 0x10]
push eax
call sym.obfstr::xref::inner::h5628fed64a8ffb51
add esp, 8
mov ecx, 0xb89a61dc
xor ecx, dword [eax]
movzx eax, word [eax + 4]
xor al, 0xc
xor ah, 0xea
cmp dword [ebp - 0x30], 6
mov dword [ebp - 0x2c], ecx
mov byte [ebp - 0x28], al
mov byte [ebp - 0x27], ah
jne 0x10007307
mov eax, dword [ebp - 0x34]
mov ecx, dword [eax]
movzx eax, word [eax + 4]
xor ax, word [ebp - 0x28]
xor ecx, dword [ebp - 0x2c]
movzx eax, ax
or eax, ecx
je 0x100077b8
lea eax, [0x101160db]
lea ecx, [ebp - 0x2c]
mov dword [ebp - 0x2c], eax
lea eax, [ebp - 0x2c]
mov eax, dword [ebp - 0x2c]
mov dword [ebp - 0x2c], 0x4e23482c
push dword [ebp - 0x2c]
push eax
call sym.obfstr::xref::inner::ha6aac6314b7ecf09
add esp, 8
movzx eax, word [eax]
xor eax, 0xf63a
cmp dword [ebp - 0x30], 2
mov word [ebp - 0x10], ax
jne 0x1000734e
mov eax, dword [ebp - 0x34]
movzx eax, word [eax]
cmp ax, word [ebp - 0x10]
je 0x100077b8
lea eax, [0x1010ebe2]
lea ecx, [ebp - 0x10]
mov dword [ebp - 0x10], eax
lea eax, [ebp - 0x10]
mov eax, dword [ebp - 0x10]
mov dword [ebp - 0x10], 0xe70ba925
push dword [ebp - 0x10]
push eax
call sym.obfstr::xref::inner::h68845f10ea6d2355
add esp, 8
mov ecx, 0x4947a6da
mov edx, 0xe0bba94
xor ecx, dword [eax]
xor edx, dword [eax + 4]
cmp dword [ebp - 0x30], 8
mov dword [ebp - 0x28], edx
mov dword [ebp - 0x2c], ecx
jne 0x100073a4
mov eax, dword [ebp - 0x34]
mov ecx, dword [eax]
mov eax, dword [eax + 4]
xor ecx, dword [ebp - 0x2c]
xor eax, dword [ebp - 0x28]
or eax, ecx
je 0x100077b8
lea eax, [0x1011b8fd]
lea ecx, [ebp - 0x10]
mov dword [ebp - 0x10], eax
lea eax, [ebp - 0x10]
mov eax, dword [ebp - 0x10]
mov dword [ebp - 0x10], 0x9e24ad1d
push dword [ebp - 0x10]
push eax
call sym.obfstr::xref::inner::h843660a51cf89c44
add esp, 8
mov ecx, 0xd0029a16
mov edx, 0xeb436d76
mov esi, 0x5b502e00
mov edi, 0x8c902848
xor ecx, dword [eax]
xor edx, dword [eax + 4]
xor esi, dword [eax + 8]
xor edi, dword [eax + 0xc]
cmp dword [ebp - 0x30], 0x10
mov dword [ebp - 0x2c], ecx
mov dword [ebp - 0x28], edx
mov dword [ebp - 0x24], esi
mov dword [ebp - 0x20], edi
jne 0x10007419
mov eax, dword [ebp - 0x34]
movdqu xmm1, xmmword [ebp - 0x2c]
movdqu xmm0, xmmword [eax]
pcmpeqb xmm1, xmm0
pmovmskb eax, xmm1
cmp eax, 0xffff
je 0x100077b8
lea eax, [0x101121c8]
lea ecx, [ebp - 0x2c]
mov dword [ebp - 0x2c], eax
lea eax, [ebp - 0x2c]
mov eax, dword [ebp - 0x2c]
mov dword [ebp - 0x2c], 0xb404d01e
push dword [ebp - 0x2c]
push eax
call sym.obfstr::xref::inner::h514b0ab215aee457
add esp, 8
movzx ecx, byte [eax + 2]
movzx eax, word [eax]
xor al, 0xf0
xor cl, 0x9f
xor ah, 0xfa
movzx esi, ah
movzx edx, cl
movzx eax, al
mov byte [ebp - 0xe], cl
shl edx, 0x10
shl esi, 8
or esi, edx
or eax, esi
cmp dword [ebp - 0x30], 3
mov word [ebp - 0x10], ax
jne 0x1000748a
mov eax, dword [ebp - 0x34]
movzx ecx, word [eax]
movzx eax, byte [eax + 2]
xor al, byte [ebp - 0xe]
xor cx, word [ebp - 0x10]
movzx eax, al
or ax, cx
je 0x100077b8
lea eax, [0x1010efe6]
lea esi, [ebp - 0x2c]
mov dword [ebp - 0x2c], eax
lea eax, [ebp - 0x2c]
mov eax, dword [ebp - 0x2c]
mov dword [ebp - 0x2c], 0xd78ab9ea
push dword [ebp - 0x2c]
push eax
call sym.obfstr::xref::inner::hb12b3c0ac508c015
add esp, 8
movzx ecx, byte [eax + 2]
movzx eax, word [eax]
xor al, 0x5c
xor cl, 0x60
xor ah, 0x25
movzx edi, ah
movzx edx, cl
movzx eax, al
mov byte [ebp - 0xe], cl
shl edx, 0x10
shl edi, 8
or edi, edx
or eax, edi
cmp dword [ebp - 0x30], 3
mov word [ebp - 0x10], ax
jne 0x100074fb
mov eax, dword [ebp - 0x34]
movzx ecx, word [eax]
movzx eax, byte [eax + 2]
xor al, byte [ebp - 0xe]
xor cx, word [ebp - 0x10]
movzx eax, al
or ax, cx
je 0x100077b8
lea eax, [0x1011519b]
lea ecx, [ebp - 0x10]
mov dword [ebp - 0x10], eax
lea eax, [ebp - 0x10]
mov eax, dword [ebp - 0x10]
mov dword [ebp - 0x10], 0x802d9777
push dword [ebp - 0x10]
push eax
call sym.obfstr::xref::inner::h12c159db87d15d56
add esp, 8
mov ecx, 0x18382140
xor ecx, dword [eax]
movzx edx, byte [eax + 6]
movzx eax, word [eax + 4]
xor al, 0x48
xor ah, 0xc6
xor dl, 0x15
cmp dword [ebp - 0x30], 7
mov dword [ebp - 0x2c], ecx
mov byte [ebp - 0x28], al
mov byte [ebp - 0x27], ah
mov byte [ebp - 0x26], dl
jne 0x1000755f
mov eax, dword [ebp - 0x34]
mov ecx, dword [eax]
mov eax, dword [eax + 3]
xor ecx, dword [ebp - 0x2c]
xor eax, dword [ebp - 0x29]
or eax, ecx
je 0x100077b8
lea eax, [0x101151be]
lea ecx, [ebp - 0x10]
mov dword [ebp - 0x10], eax
lea eax, [ebp - 0x10]
mov eax, dword [ebp - 0x10]
mov dword [ebp - 0x10], 0xeab7c525
push dword [ebp - 0x10]
push eax
call sym.obfstr::xref::inner::hd3bf972cf6a0eafd
add esp, 8
mov ecx, 0x1dd97ac7
mov edx, 0x62b1f367
mov edi, 0xc77a9c29
xor ecx, dword [eax]
xor edx, dword [eax + 4]
xor edi, dword [eax + 8]
movzx eax, byte [eax + 0xc]
xor al, 0x96
cmp dword [ebp - 0x30], 0xd
mov dword [ebp - 0x2c], ecx
mov dword [ebp - 0x28], edx
mov dword [ebp - 0x24], edi
mov byte [ebp - 0x20], al
jne 0x100075c9
push 0xd
push esi
push dword [ebp - 0x34]
call sub.msvcrt.dll_memcmp
add esp, 0xc
test eax, eax
je 0x100077b8
lea eax, [0x1011022e]
lea ecx, [ebp - 0x10]
mov dword [ebp - 0x10], eax
lea eax, [ebp - 0x10]
mov eax, dword [ebp - 0x10]
mov dword [ebp - 0x10], 0x8e1d6c80
push dword [ebp - 0x10]
push eax
call sym.obfstr::xref::inner::h42056681983708c5
add esp, 8
mov ecx, 0x383da4d5
xor ecx, dword [eax]
movzx edx, byte [eax + 6]
movzx eax, word [eax + 4]
xor al, 0x46
xor ah, 0x12
xor dl, 0x4f
cmp dword [ebp - 0x30], 7
mov dword [ebp - 0x2c], ecx
mov byte [ebp - 0x28], al
mov byte [ebp - 0x27], ah
mov byte [ebp - 0x26], dl
jne 0x1000762d
mov eax, dword [ebp - 0x34]
mov ecx, dword [eax]
mov eax, dword [eax + 3]
xor ecx, dword [ebp - 0x2c]
xor eax, dword [ebp - 0x29]
or eax, ecx
je 0x100077b8
lea eax, [0x1011c9dd]
lea ecx, [ebp - 0x10]
mov dword [ebp - 0x10], eax
lea eax, [ebp - 0x10]
mov eax, dword [ebp - 0x10]
mov dword [ebp - 0x10], 0x9790fc25
push dword [ebp - 0x10]
push eax
call sym.obfstr::xref::inner::h1c9e42db3ed74dbf
add esp, 8
mov ecx, 0x17dbda6
mov edx, 0x6fedfe82
xor ecx, dword [eax]
xor edx, dword [eax + 4]
movzx eax, word [eax + 8]
xor al, 0x1c
xor ah, 5
cmp dword [ebp - 0x30], 0xa
mov dword [ebp - 0x2c], ecx
mov dword [ebp - 0x28], edx
mov byte [ebp - 0x24], al
mov byte [ebp - 0x23], ah
jne 0x10007692
push 0xa
push esi
push dword [ebp - 0x34]
call sub.msvcrt.dll_memcmp
add esp, 0xc
test eax, eax
je 0x100077b8
lea eax, [0x1011c09b]
lea ecx, [ebp - 0x10]
mov dword [ebp - 0x10], eax
lea eax, [ebp - 0x10]
mov eax, dword [ebp - 0x10]
mov dword [ebp - 0x10], 0xcfd250d0
push dword [ebp - 0x10]
push eax
call sym.obfstr::xref::inner::h3ea8500277229088
add esp, 8
mov ecx, 0x18596c11
xor ecx, dword [eax]
movzx eax, word [eax + 4]
xor al, 0x7c
xor ah, 0x89
cmp dword [ebp - 0x30], 6
mov dword [ebp - 0x2c], ecx
mov byte [ebp - 0x28], al
mov byte [ebp - 0x27], ah
jne 0x100076f1
mov eax, dword [ebp - 0x34]
mov ecx, dword [eax]
movzx eax, word [eax + 4]
xor ax, word [ebp - 0x28]
xor ecx, dword [ebp - 0x2c]
movzx eax, ax
or eax, ecx
je 0x100077b8
lea eax, [0x10114778]
mov dword [ebp - 0x2c], eax
lea eax, [ebp - 0x2c]
mov eax, dword [ebp - 0x2c]
mov dword [ebp - 0x2c], 0x17356c85
push dword [ebp - 0x2c]
push eax
call sym.obfstr::xref::inner::h30165dd24e49678e
add esp, 8
movzx ecx, byte [eax + 2]
movzx eax, word [eax]
xor al, 0x5a
xor cl, 0x63
xor ah, 0xf3
movzx edi, ah
movzx edx, cl
movzx eax, al
mov byte [ebp - 0xe], cl
shl edx, 0x10
shl edi, 8
or edi, edx
or eax, edi
cmp dword [ebp - 0x30], 3
mov word [ebp - 0x10], ax
jne 0x1000775b
mov eax, dword [ebp - 0x34]
movzx ecx, word [eax]
movzx eax, byte [eax + 2]
xor al, byte [ebp - 0xe]
xor cx, word [ebp - 0x10]
movzx eax, al
or ax, cx
je 0x100077b8
lea eax, [0x10110488]
lea ecx, [ebp - 0x10]
mov dword [ebp - 0x10], eax
lea eax, [ebp - 0x10]
mov eax, dword [ebp - 0x10]
mov dword [ebp - 0x10], 0x201b557b
push dword [ebp - 0x10]
push eax
call sym.obfstr::xref::inner::h5b1f02f743672e48
add esp, 8
mov ecx, 0x4b6222f9
mov edx, 0xe89da987
mov edi, 0xe8018d71
xor ecx, dword [eax]
xor edx, dword [eax + 4]
xor edi, dword [eax + 8]
cmp dword [ebp - 0x30], 0xc
mov dword [ebp - 0x2c], ecx
mov dword [ebp - 0x28], edx
mov dword [ebp - 0x24], edi
jne 0x100077d4
push 0xc
push esi
push dword [ebp - 0x34]
call sub.msvcrt.dll_memcmp
add esp, 0xc
test eax, eax
jne 0x100077d4
call sub.kernel32.dll_GetCurrentProcessId
push eax
call sub.kernel32.dll_DebugActiveProcess
test eax, eax
je 0x100077d4
call sub.kernel32.dll_GetCurrentProcess
push 1
push eax
call sub.kernel32.dll_TerminateProcess
mov eax, dword [ebp - 0x38]
test eax, eax
je 0x100077e9
push 1
push eax
push dword [ebp - 0x34]
call sym.___rust_dealloc
add esp, 0xc
mov eax, 1
add esp, 0x138
pop esi
pop edi
pop ebx
pop ebp
ret 8
push 0x1011e244
push 0x100
push eax
call sym.core::slice::index::slice_end_index_len_fail::hb7bcdcb5c84f7e98
add esp, 0xc
ud2