Function at 0x100b3fe0
Capabilities:
Authenticate hmac
Log keystrokes via polling
Parse pe header

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x1016048c
mov eax, dword fs:[0]
push eax
sub esp, 0x28c
mov eax, dword [0x101ba0ec]
xor eax, ebp
mov dword [ebp - 0x10], eax
push ebx
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov edi, ecx
cmp dword [edi + 0x54], 0
je 0x100b5e07
mov dword [ebp - 0x298], 0
mov dword [ebp - 0x294], 0
mov dword [ebp - 4], 0
call fcn.10112cc8
push 3
mov ecx, eax
mov edx, dword [eax]
call dword [edx + 8]
mov ebx, eax
mov dword [ebp - 0x280], ebx
call fcn.10112cc8
push 6
mov ecx, eax
mov edx, dword [eax]
call dword [edx + 8]
or esi, 0xffffffff
mov dword [ebp - 0x290], eax
cmp byte [edi + 0xec], 0
je 0x100b4530
push str.QieHuan_An
lea ecx, [ebp - 0x260]
call fcn.10041a70
lea eax, [ebp - 0x260]
mov byte [ebp - 4], 1
mov ecx, dword [edi + 0x54]
push eax
lea eax, [ebp - 0x274]
push eax
call fcn.10078150
mov eax, dword [ebp - 0x274]
lea ecx, [ebp - 0x274]
add eax, 0x28
push eax
call fcn.100436c0
mov byte [ebp - 4], 3
mov eax, dword [ebp - 0x24c]
cmp eax, 8
jb 0x100b40d0
inc eax
lea ecx, [ebp - 0x260]
push eax
push dword [ebp - 0x260]
call fcn.10042120
xor eax, eax
mov dword [ebp - 0x24c], 7
push str.QieHuan_Cn
lea ecx, [ebp - 0x248]
mov dword [ebp - 0x250], 0
mov word [ebp - 0x260], ax
call fcn.10041a70
lea eax, [ebp - 0x248]
mov byte [ebp - 4], 4
mov ecx, dword [edi + 0x54]
push eax
lea eax, [ebp - 0x27c]
push eax
call fcn.10078150
mov eax, dword [ebp - 0x27c]
lea ecx, [ebp - 0x27c]
add eax, 0x28
push eax
call fcn.100436c0
mov byte [ebp - 4], 6
mov eax, dword [ebp - 0x234]
cmp eax, 8
jb 0x100b414e
inc eax
lea ecx, [ebp - 0x248]
push eax
push dword [ebp - 0x248]
call fcn.10042120
xor eax, eax
mov dword [ebp - 0x234], 7
push str.QieHuan_En
lea ecx, [ebp - 0x260]
mov dword [ebp - 0x238], 0
mov word [ebp - 0x248], ax
call fcn.10041a70
lea eax, [ebp - 0x260]
mov byte [ebp - 4], 7
mov ecx, dword [edi + 0x54]
push eax
lea eax, [ebp - 0x28c]
push eax
call fcn.10078150
mov eax, dword [ebp - 0x28c]
lea ecx, [ebp - 0x28c]
add eax, 0x28
push eax
call fcn.100436c0
mov byte [ebp - 4], 9
mov eax, dword [ebp - 0x24c]
cmp eax, 8
jb 0x100b41cc
inc eax
lea ecx, [ebp - 0x260]
push eax
push dword [ebp - 0x260]
call fcn.10042120
xor eax, eax
mov dword [ebp - 0x24c], 7
push 0x14
mov dword [ebp - 0x250], 0
mov word [ebp - 0x260], ax
call dword [sym.imp.USER32.dll_GetKeyState]
cmp ebx, 2
mov ebx, dword [ebp - 0x274]
jne 0x100b42fa
test ebx, ebx
sete al
xor al, 1
je 0x100b4254
push 0x10190334
lea ecx, [ebp - 0x230]
call fcn.10041a70
lea eax, [ebp - 0x230]
mov byte [ebp - 4], 0xa
push eax
lea eax, [ebp - 0x284]
mov ecx, ebx
push eax
call fcn.100781e0
mov ecx, dword [ebp - 0x284]
push str.true
add ecx, 0x28
call fcn.10042080
lea ecx, [ebp - 0x230]
mov byte [ebp - 4], 9
call fcn.100420d0
mov ebx, dword [ebp - 0x27c]
test ebx, ebx
sete al
xor al, 1
je 0x100b42ae
push 0x10190334
lea ecx, [ebp - 0x230]
call fcn.10041a70
lea eax, [ebp - 0x230]
mov byte [ebp - 4], 0xb
push eax
lea eax, [ebp - 0x284]
mov ecx, ebx
push eax
call fcn.100781e0
mov ecx, dword [ebp - 0x284]
push str.false
add ecx, 0x28
call fcn.10042080
lea ecx, [ebp - 0x230]
mov byte [ebp - 4], 9
call fcn.100420d0
mov ebx, dword [ebp - 0x28c]
test ebx, ebx
sete al
xor al, 1
je 0x100b44a5
push 0x10190334
lea ecx, [ebp - 0x230]
call fcn.10041a70
lea eax, [ebp - 0x230]
mov byte [ebp - 4], 0xc
push eax
lea eax, [ebp - 0x284]
mov ecx, ebx
push eax
call fcn.100781e0
mov ecx, dword [ebp - 0x284]
push str.false
jmp 0x100b4492
test ebx, ebx
sete al
xor al, 1
je 0x100b434e
push 0x10190334
lea ecx, [ebp - 0x230]
call fcn.10041a70
lea eax, [ebp - 0x230]
mov byte [ebp - 4], 0xd
push eax
lea eax, [ebp - 0x26c]
mov ecx, ebx
push eax
call fcn.100781e0
mov ecx, dword [ebp - 0x26c]
push str.false
add ecx, 0x28
call fcn.10042080
lea ecx, [ebp - 0x230]
mov byte [ebp - 4], 9
call fcn.100420d0
cmp dword [ebp - 0x280], 1
mov ebx, dword [ebp - 0x28c]
jne 0x100b43fb
test ebx, ebx
sete al
xor al, 1
je 0x100b43b5
push 0x10190334
lea ecx, [ebp - 0x230]
call fcn.10041a70
lea eax, [ebp - 0x230]
mov byte [ebp - 4], 0xe
push eax
lea eax, [ebp - 0x26c]
mov ecx, ebx
push eax
call fcn.100781e0
mov ecx, dword [ebp - 0x26c]
push str.true
add ecx, 0x28
call fcn.10042080
lea ecx, [ebp - 0x230]
mov byte [ebp - 4], 9
call fcn.100420d0
mov ebx, dword [ebp - 0x27c]
test ebx, ebx
sete al
xor al, 1
je 0x100b44a5
push 0x10190334
lea ecx, [ebp - 0x230]
call fcn.10041a70
lea eax, [ebp - 0x230]
mov byte [ebp - 4], 0xf
push eax
lea eax, [ebp - 0x26c]
mov ecx, ebx
push eax
call fcn.100781e0
push str.false
jmp 0x100b448c
test ebx, ebx
sete al
xor al, 1
je 0x100b444f
push 0x10190334
lea ecx, [ebp - 0x230]
call fcn.10041a70
lea eax, [ebp - 0x230]
mov byte [ebp - 4], 0x10
push eax
lea eax, [ebp - 0x26c]
mov ecx, ebx
push eax
call fcn.100781e0
mov ecx, dword [ebp - 0x26c]
push str.false
add ecx, 0x28
call fcn.10042080
lea ecx, [ebp - 0x230]
mov byte [ebp - 4], 9
call fcn.100420d0
mov ebx, dword [ebp - 0x27c]
test ebx, ebx
sete al
xor al, 1
je 0x100b44a5
push 0x10190334
lea ecx, [ebp - 0x230]
call fcn.10041a70
lea eax, [ebp - 0x230]
mov byte [ebp - 4], 0x11
push eax
lea eax, [ebp - 0x26c]
mov ecx, ebx
push eax
call fcn.100781e0
push str.true
mov ecx, dword [ebp - 0x26c]
add ecx, 0x28
call fcn.10042080
lea ecx, [ebp - 0x230]
call fcn.100420d0
mov byte [ebp - 4], 0x12
mov ebx, dword [ebp - 0x288]
test ebx, ebx
je 0x100b44d2
mov eax, esi
lock xadd dword [ebx + 4], eax
jne 0x100b44d2
mov eax, dword [ebx]
mov ecx, ebx
call dword [eax]
mov eax, esi
lock xadd dword [ebx + 8], eax
jne 0x100b44d2
mov eax, dword [ebx]
mov ecx, ebx
call dword [eax + 4]
mov byte [ebp - 4], 0x13
mov ebx, dword [ebp - 0x278]
test ebx, ebx
je 0x100b44ff
mov eax, esi
lock xadd dword [ebx + 4], eax
jne 0x100b44ff
mov eax, dword [ebx]
mov ecx, ebx
call dword [eax]
mov eax, esi
lock xadd dword [ebx + 8], eax
jne 0x100b44ff
mov eax, dword [ebx]
mov ecx, ebx
call dword [eax + 4]
mov byte [ebp - 4], 0x14
mov ebx, dword [ebp - 0x270]
test ebx, ebx
je 0x100b452c
mov eax, esi
lock xadd dword [ebx + 4], eax
jne 0x100b452c
mov eax, dword [ebx]
mov ecx, ebx
call dword [eax]
mov eax, esi
lock xadd dword [ebx + 8], eax
jne 0x100b452c
mov eax, dword [ebx]
mov ecx, ebx
call dword [eax + 4]
mov byte [ebp - 4], 0
cmp byte [edi + 0xee], 0
je 0x100b47d7
push str.BiaoDian_En
lea ecx, [ebp - 0x248]
call fcn.10041a70
lea eax, [ebp - 0x248]
mov byte [ebp - 4], 0x15
mov ecx, dword [edi + 0x54]
push eax
lea eax, [ebp - 0x26c]
push eax
call fcn.10078150
mov eax, dword [ebp - 0x26c]
lea ecx, [ebp - 0x27c]
add eax, 0x28
push eax
call fcn.100436c0
mov byte [ebp - 4], 0x17
mov eax, dword [ebp - 0x234]
cmp eax, 8
jb 0x100b459e
inc eax
lea ecx, [ebp - 0x248]
push eax
push dword [ebp - 0x248]
call fcn.10042120
xor eax, eax
mov dword [ebp - 0x234], 7
push str.BiaoDian_Cn
lea ecx, [ebp - 0x260]
mov dword [ebp - 0x238], 0
mov word [ebp - 0x248], ax
call fcn.10041a70
lea eax, [ebp - 0x260]
mov byte [ebp - 4], 0x18
mov ecx, dword [edi + 0x54]
push eax
lea eax, [ebp - 0x26c]
push eax
call fcn.10078150
mov eax, dword [ebp - 0x26c]
lea ecx, [ebp - 0x274]
add eax, 0x28
push eax
call fcn.100436c0
mov byte [ebp - 4], 0x1a
mov eax, dword [ebp - 0x24c]
cmp eax, 8
jb 0x100b461c
inc eax
lea ecx, [ebp - 0x260]
push eax
push dword [ebp - 0x260]
call fcn.10042120
xor eax, eax
mov dword [ebp - 0x24c], 7
cmp dword [ebp - 0x290], 1
mov dword [ebp - 0x250], 0
mov word [ebp - 0x260], ax
jne 0x100b46c9
mov ebx, dword [ebp - 0x27c]
test ebx, ebx
sete al
xor al, 1
je 0x100b46a0
push 0x10190334
lea ecx, [ebp - 0x230]
call fcn.10041a70
lea eax, [ebp - 0x230]
mov byte [ebp - 4], 0x1b
push eax
lea eax, [ebp - 0x26c]
mov ecx, ebx
push eax
call fcn.100781e0
mov ecx, dword [ebp - 0x26c]
push str.true
add ecx, 0x28
call fcn.10042080
lea ecx, [ebp - 0x230]
mov byte [ebp - 4], 0x1a
call fcn.100420d0
mov ebx, dword [ebp - 0x274]
test ebx, ebx
sete al
xor al, 1
je 0x100b4779
push 0x10190334
lea ecx, [ebp - 0x230]
call fcn.10041a70
mov byte [ebp - 4], 0x1c
jmp 0x100b4746
mov ebx, dword [ebp - 0x274]
test ebx, ebx
sete al
xor al, 1
je 0x100b4723
push 0x10190334
lea ecx, [ebp - 0x230]
call fcn.10041a70
lea eax, [ebp - 0x230]
mov byte [ebp - 4], 0x1d
push eax
lea eax, [ebp - 0x26c]
mov ecx, ebx
push eax
call fcn.100781e0
mov ecx, dword [ebp - 0x26c]
push str.true
add ecx, 0x28
call fcn.10042080
lea ecx, [ebp - 0x230]
mov byte [ebp - 4], 0x1a
call fcn.100420d0
mov ebx, dword [ebp - 0x27c]
test ebx, ebx
sete al
xor al, 1
je 0x100b4779
push 0x10190334
lea ecx, [ebp - 0x230]
call fcn.10041a70
mov byte [ebp - 4], 0x1e
lea eax, [ebp - 0x230]
mov ecx, ebx
push eax
lea eax, [ebp - 0x26c]
push eax
call fcn.100781e0
mov ecx, dword [ebp - 0x26c]
push str.false
add ecx, 0x28
call fcn.10042080
lea ecx, [ebp - 0x230]
call fcn.100420d0
mov byte [ebp - 4], 0x1f
mov ebx, dword [ebp - 0x270]
test ebx, ebx
je 0x100b47a6
mov eax, esi
lock xadd dword [ebx + 4], eax
jne 0x100b47a6
mov eax, dword [ebx]
mov ecx, ebx
call dword [eax]
mov eax, esi
lock xadd dword [ebx + 8], eax
jne 0x100b47a6
mov eax, dword [ebx]
mov ecx, ebx
call dword [eax + 4]
mov byte [ebp - 4], 0x20
mov ebx, dword [ebp - 0x278]
test ebx, ebx
je 0x100b47d3
mov eax, esi
lock xadd dword [ebx + 4], eax
jne 0x100b47d3
mov eax, dword [ebx]
mov ecx, ebx
call dword [eax]
mov eax, esi
lock xadd dword [ebx + 8], eax
jne 0x100b47d3
mov eax, dword [ebx]
mov ecx, ebx
call dword [eax + 4]
mov byte [ebp - 4], 0
cmp byte [edi + 0xed], 0
je 0x100b4a9f
push str.Quan_Jiao
lea ecx, [ebp - 0x248]
call fcn.10041a70
lea eax, [ebp - 0x248]
mov byte [ebp - 4], 0x21
mov ecx, dword [edi + 0x54]
push eax
lea eax, [ebp - 0x26c]
push eax
call fcn.10078150
mov eax, dword [ebp - 0x26c]
lea ecx, [ebp - 0x27c]
add eax, 0x28
push eax
call fcn.100436c0
mov byte [ebp - 4], 0x23
mov eax, dword [ebp - 0x234]
cmp eax, 8
jb 0x100b4845
inc eax
lea ecx, [ebp - 0x248]
push eax
push dword [ebp - 0x248]
call fcn.10042120
xor eax, eax
mov dword [ebp - 0x234], 7
push str.Ban_Jiao
lea ecx, [ebp - 0x260]
mov dword [ebp - 0x238], 0
mov word [ebp - 0x248], ax
call fcn.10041a70
lea eax, [ebp - 0x260]
mov byte [ebp - 4], 0x24
mov ecx, dword [edi + 0x54]
push eax
lea eax, [ebp - 0x26c]
push eax
call fcn.10078150
mov eax, dword [ebp - 0x26c]
lea ecx, [ebp - 0x274]
add eax, 0x28
push eax
call fcn.100436c0
mov byte [ebp - 4], 0x26
mov eax, dword [ebp - 0x24c]
cmp eax, 8
jb 0x100b48c3
inc eax
lea ecx, [ebp - 0x260]
push eax
push dword [ebp - 0x260]
call fcn.10042120
xor eax, eax
mov dword [ebp - 0x24c], 7
mov dword [ebp - 0x250], 0
mov word [ebp - 0x260], ax
call fcn.10112cc8
push 5
mov ecx, eax
mov edx, dword [eax]
call dword [edx + 8]
mov ebx, dword [ebp - 0x27c]
cmp eax, 1
jne 0x100b4997
test ebx, ebx
sete al
xor al, 1
je 0x100b4951
push 0x10190334
lea ecx, [ebp - 0x230]
call fcn.10041a70
lea eax, [ebp - 0x230]
mov byte [ebp - 4], 0x27
push eax
lea eax, [ebp - 0x26c]
mov ecx, ebx
push eax
call fcn.100781e0
mov ecx, dword [ebp - 0x26c]
push str.true
add ecx, 0x28
call fcn.10042080
lea ecx, [ebp - 0x230]
mov byte [ebp - 4], 0x26
call fcn.100420d0
mov ebx, dword [ebp - 0x274]
test ebx, ebx
sete al
xor al, 1
je 0x100b4a41
push 0x10190334
lea ecx, [ebp - 0x230]
call fcn.10041a70
lea eax, [ebp - 0x230]
mov byte [ebp - 4], 0x28
push eax
lea eax, [ebp - 0x26c]
mov ecx, ebx
push eax
call fcn.100781e0
push str.false
jmp 0x100b4a28
test ebx, ebx
sete al
xor al, 1
je 0x100b49eb
push 0x10190334
lea ecx, [ebp - 0x230]
call fcn.10041a70
lea eax, [ebp - 0x230]
mov byte [ebp - 4], 0x29
push eax
lea eax, [ebp - 0x26c]
mov ecx, ebx
push eax
call fcn.100781e0
mov ecx, dword [ebp - 0x26c]
push str.false
add ecx, 0x28
call fcn.10042080
lea ecx, [ebp - 0x230]
mov byte [ebp - 4], 0x26
call fcn.100420d0
mov ebx, dword [ebp - 0x274]
test ebx, ebx
sete al
xor al, 1
je 0x100b4a41
push 0x10190334
lea ecx, [ebp - 0x230]
call fcn.10041a70
lea eax, [ebp - 0x230]
mov byte [ebp - 4], 0x2a
push eax
lea eax, [ebp - 0x26c]
mov ecx, ebx
push eax
call fcn.100781e0
push str.true
mov ecx, dword [ebp - 0x26c]
add ecx, 0x28
call fcn.10042080
lea ecx, [ebp - 0x230]
call fcn.100420d0
mov byte [ebp - 4], 0x2b
mov ebx, dword [ebp - 0x270]
test ebx, ebx
je 0x100b4a6e
mov eax, esi
lock xadd dword [ebx + 4], eax
jne 0x100b4a6e
mov eax, dword [ebx]
mov ecx, ebx
call dword [eax]
mov eax, esi
lock xadd dword [ebx + 8], eax
jne 0x100b4a6e
mov eax, dword [ebx]
mov ecx, ebx
call dword [eax + 4]
mov byte [ebp - 4], 0x2c
mov ebx, dword [ebp - 0x278]
test ebx, ebx
je 0x100b4a9b
mov eax, esi
lock xadd dword [ebx + 4], eax
jne 0x100b4a9b
mov eax, dword [ebx]
mov ecx, ebx
call dword [eax]
mov eax, esi
lock xadd dword [ebx + 8], eax
jne 0x100b4a9b
mov eax, dword [ebx]
mov ecx, ebx
call dword [eax + 4]
mov byte [ebp - 4], 0
cmp byte [edi + 0xf1], 0
je 0x100b4d66
push str.Jian_Ti
lea ecx, [ebp - 0x248]
call fcn.10041a70
lea eax, [ebp - 0x248]
mov byte [ebp - 4], 0x2d
mov ecx, dword [edi + 0x54]
push eax
lea eax, [ebp - 0x26c]
push eax
call fcn.10078150
mov eax, dword [ebp - 0x26c]
lea ecx, [ebp - 0x27c]
add eax, 0x28
push eax
call fcn.100436c0
mov byte [ebp - 4], 0x2f
mov eax, dword [ebp - 0x234]
cmp eax, 8
jb 0x100b4b0d
inc eax
lea ecx, [ebp - 0x248]
push eax
push dword [ebp - 0x248]
call fcn.10042120
xor eax, eax
mov dword [ebp - 0x234], 7
push str.Fan_Ti
lea ecx, [ebp - 0x260]
mov dword [ebp - 0x238], 0
mov word [ebp - 0x248], ax
call fcn.10041a70
lea eax, [ebp - 0x260]
mov byte [ebp - 4], 0x30
mov ecx, dword [edi + 0x54]
push eax
lea eax, [ebp - 0x26c]
push eax
call fcn.10078150
mov eax, dword [ebp - 0x26c]
lea ecx, [ebp - 0x274]
add eax, 0x28
push eax
call fcn.100436c0
mov byte [ebp - 4], 0x32
mov eax, dword [ebp - 0x24c]
cmp eax, 8
jb 0x100b4b8b
inc eax
lea ecx, [ebp - 0x260]
push eax
push dword [ebp - 0x260]
call fcn.10042120
xor eax, eax
mov dword [ebp - 0x24c], 7
mov dword [ebp - 0x250], 0
mov word [ebp - 0x260], ax
call fcn.10112cc8
push 4
mov ecx, eax
mov edx, dword [eax]
call dword [edx + 8]
mov ebx, dword [ebp - 0x27c]
test eax, eax
je 0x100b4c5e
test ebx, ebx
sete al
xor al, 1
je 0x100b4c18
push 0x10190334
lea ecx, [ebp - 0x230]
call fcn.10041a70
lea eax, [ebp - 0x230]
mov byte [ebp - 4], 0x33
push eax
lea eax, [ebp - 0x26c]
mov ecx, ebx
push eax
call fcn.100781e0
mov ecx, dword [ebp - 0x26c]
push str.false
add ecx, 0x28
call fcn.10042080
lea ecx, [ebp - 0x230]
mov byte [ebp - 4], 0x32
call fcn.100420d0
mov ebx, dword [ebp - 0x274]
test ebx, ebx
sete al
xor al, 1
je 0x100b4d08
push 0x10190334
lea ecx, [ebp - 0x230]
call fcn.10041a70
lea eax, [ebp - 0x230]
mov byte [ebp - 4], 0x34
push eax
lea eax, [ebp - 0x26c]
mov ecx, ebx
push eax
call fcn.100781e0
push str.true
jmp 0x100b4cef
test ebx, ebx
sete al
xor al, 1
je 0x100b4cb2
push 0x10190334
lea ecx, [ebp - 0x230]
call fcn.10041a70
lea eax, [ebp - 0x230]
mov byte [ebp - 4], 0x35
push eax
lea eax, [ebp - 0x26c]
mov ecx, ebx
push eax
call fcn.100781e0
mov ecx, dword [ebp - 0x26c]
push str.true
add ecx, 0x28
call fcn.10042080
lea ecx, [ebp - 0x230]
mov byte [ebp - 4], 0x32
call fcn.100420d0
mov ebx, dword [ebp - 0x274]
test ebx, ebx
sete al
xor al, 1
je 0x100b4d08
push 0x10190334
lea ecx, [ebp - 0x230]
call fcn.10041a70
lea eax, [ebp - 0x230]
mov byte [ebp - 4], 0x36
push eax
lea eax, [ebp - 0x26c]
mov ecx, ebx
push eax
call fcn.100781e0
push str.false
mov ecx, dword [ebp - 0x26c]
add ecx, 0x28
call fcn.10042080
lea ecx, [ebp - 0x230]
call fcn.100420d0
mov byte [ebp - 4], 0x37
mov ebx, dword [ebp - 0x270]
test ebx, ebx
je 0x100b4d35
mov eax, esi
lock xadd dword [ebx + 4], eax
jne 0x100b4d35
mov eax, dword [ebx]
mov ecx, ebx
call dword [eax]
mov eax, esi
lock xadd dword [ebx + 8], eax
jne 0x100b4d35
mov eax, dword [ebx]
mov ecx, ebx
call dword [eax + 4]
mov byte [ebp - 4], 0x38
mov ebx, dword [ebp - 0x278]
test ebx, ebx
je 0x100b4d62
mov eax, esi
lock xadd dword [ebx + 4], eax
jne 0x100b4d62
mov eax, dword [ebx]
mov ecx, ebx
call dword [eax]
mov eax, esi
lock xadd dword [ebx + 8], eax
jne 0x100b4d62
mov eax, dword [ebx]
mov ecx, ebx
call dword [eax + 4]
mov byte [ebp - 4], 0
cmp byte [edi + 0xf0], 0
je 0x100b5134
push str.PassLogin
lea ecx, [ebp - 0x248]
call fcn.10041a70
lea eax, [ebp - 0x248]
mov byte [ebp - 4], 0x39
mov ecx, dword [edi + 0x54]
push eax
lea eax, [ebp - 0x26c]
push eax
call fcn.10078150
mov eax, dword [ebp - 0x26c]
lea ecx, [ebp - 0x27c]
add eax, 0x28
push eax
call fcn.100436c0
mov byte [ebp - 4], 0x3b
mov eax, dword [ebp - 0x234]
cmp eax, 8
jb 0x100b4dd4
inc eax
lea ecx, [ebp - 0x248]
push eax
push dword [ebp - 0x248]
call fcn.10042120
xor eax, eax
mov dword [ebp - 0x234], 7
push str.PassSon
lea ecx, [ebp - 0x260]
mov dword [ebp - 0x238], 0
mov word [ebp - 0x248], ax
call fcn.10041a70
lea eax, [ebp - 0x260]
mov byte [ebp - 4], 0x3c
mov ecx, dword [edi + 0x54]
push eax
lea eax, [ebp - 0x26c]
push eax
call fcn.10078150
mov eax, dword [ebp - 0x26c]
lea ecx, [ebp - 0x274]
add eax, 0x28
push eax
call fcn.100436c0
mov byte [ebp - 4], 0x3e
mov eax, dword [ebp - 0x24c]
cmp eax, 8
jb 0x100b4e52
inc eax
lea ecx, [ebp - 0x260]
push eax
push dword [ebp - 0x260]
call fcn.10042120
xor eax, eax
mov dword [ebp - 0x24c], 7
mov dword [ebp - 0x250], 0
mov word [ebp - 0x260], ax
call fcn.10112e05
push 0
push 0x9b
lea ecx, [ebp - 0x230]
mov edx, dword [eax]
push ecx
mov ecx, eax
call dword [edx + 0x10]
mov byte [ebp - 4], 0x3f
cmp dword [ebp - 0x220], 0
mov ebx, dword [ebp - 0x27c]
jne 0x100b4f53
test ebx, ebx
sete al
xor al, 1
je 0x100b4ef4
push 0x10190334
lea ecx, [ebp - 0x248]
call fcn.10041a70
lea eax, [ebp - 0x248]
mov byte [ebp - 4], 0x40
push eax
lea eax, [ebp - 0x26c]
mov ecx, ebx
push eax
call fcn.100781e0
mov ecx, dword [ebp - 0x26c]
push str.true
add ecx, 0x28
call fcn.10042080
lea ecx, [ebp - 0x248]
mov byte [ebp - 4], 0x3f
call fcn.100420d0
mov ebx, dword [ebp - 0x274]
test ebx, ebx
sete al
xor al, 1
je 0x100b509b
push 0x10190334
lea ecx, [ebp - 0x248]
call fcn.10041a70
lea eax, [ebp - 0x248]
mov byte [ebp - 4], 0x41
push eax
lea eax, [ebp - 0x26c]
mov ecx, ebx
push eax
call fcn.100781e0
mov ecx, dword [ebp - 0x26c]
push str.false
add ecx, 0x28
call fcn.10042080
lea ecx, [ebp - 0x248]
call fcn.100420d0
jmp 0x100b509b
test ebx, ebx
sete al
xor al, 1
je 0x100b4fa7
push 0x10190334
lea ecx, [ebp - 0x248]
call fcn.10041a70
lea eax, [ebp - 0x248]
mov byte [ebp - 4], 0x42
push eax
lea eax, [ebp - 0x26c]
mov ecx, ebx
push eax
call fcn.100781e0
mov ecx, dword [ebp - 0x26c]
push str.false
add ecx, 0x28
call fcn.10042080
lea ecx, [ebp - 0x248]
mov byte [ebp - 4], 0x3f
call fcn.100420d0
mov ebx, dword [ebp - 0x274]
test ebx, ebx
sete al
xor al, 1
je 0x100b509b
push 0x10190334
lea ecx, [ebp - 0x248]
call fcn.10041a70
lea eax, [ebp - 0x248]
mov byte [ebp - 4], 0x43
push eax
lea eax, [ebp - 0x26c]
mov ecx, ebx
push eax
call fcn.100781e0
mov ecx, dword [ebp - 0x26c]
push str.true
add ecx, 0x28
call fcn.10042080
lea ecx, [ebp - 0x248]
mov byte [ebp - 4], 0x3f
call fcn.100420d0
push 0
push 0
push str.PassSon
mov ecx, edi
call fcn.10077d90
push 0x206
lea eax, [ebp - 0x216]
push 0
push eax
call fcn.1012bcf0
movups xmm0, xmmword [0x1018fc08]
lea ecx, [ebp - 0x218]
add esp, 0xc
add ecx, 0xfffffffe
movups xmmword [ebp - 0x218], xmm0
mov ax, word [ecx + 2]
lea ecx, [ecx + 2]
test ax, ax
jne 0x100b5042
mov eax, dword [0x1019195c]
mov dword [ecx], eax
mov eax, dword [0x10191960]
mov dword [ecx + 4], eax
mov eax, dword [0x10191964]
mov dword [ecx + 8], eax
mov eax, dword [0x10191968]
mov dword [ecx + 0xc], eax
lea eax, [ebp - 0x218]
push eax
push 0
call dword [sym.imp.USER32.dll_FindWindowW]
test eax, eax
je 0x100b509b
push eax
call dword [sym.imp.USER32.dll_IsWindow]
test eax, eax
je 0x100b509b
push 1
push 1
push str.PassSon
mov ecx, edi
call fcn.10077d90
mov eax, dword [ebp - 0x21c]
cmp eax, 8
jb 0x100b50b9
inc eax
lea ecx, [ebp - 0x230]
push eax
push dword [ebp - 0x230]
call fcn.10042120
xor eax, eax
mov dword [ebp - 0x21c], 7
mov dword [ebp - 0x220], 0
mov word [ebp - 0x230], ax
mov byte [ebp - 4], 0x44
mov ebx, dword [ebp - 0x270]
test ebx, ebx
je 0x100b5103
mov eax, esi
lock xadd dword [ebx + 4], eax
jne 0x100b5103
mov eax, dword [ebx]
mov ecx, ebx
call dword [eax]
mov eax, esi
lock xadd dword [ebx + 8], eax
jne 0x100b5103
mov eax, dword [ebx]
mov ecx, ebx
call dword [eax + 4]
mov byte [ebp - 4], 0x45
mov ebx, dword [ebp - 0x278]
test ebx, ebx
je 0x100b5130
mov eax, esi
lock xadd dword [ebx + 4], eax
jne 0x100b5130
mov eax, dword [ebx]
mov ecx, ebx
call dword [eax]
mov eax, esi
lock xadd dword [ebx + 8], eax
jne 0x100b5130
mov eax, dword [ebx]
mov ecx, ebx
call dword [eax + 4]
mov byte [ebp - 4], 0
cmp byte [edi + 0xf3], 0
je 0x100b5246
push str.Menu
lea ecx, [ebp - 0x230]
call fcn.10041a70
lea eax, [ebp - 0x230]
mov byte [ebp - 4], 0x46
mov ecx, dword [edi + 0x54]
push eax
lea eax, [ebp - 0x26c]
push eax
call fcn.10078150
mov eax, dword [ebp - 0x26c]
lea ecx, [ebp - 0x274]
add eax, 0x28
push eax
call fcn.100436c0
mov byte [ebp - 4], 0x48
mov eax, dword [ebp - 0x21c]
cmp eax, 8
jb 0x100b51a2
inc eax
lea ecx, [ebp - 0x230]
push eax
push dword [ebp - 0x230]
call fcn.10042120
mov ebx, dword [ebp - 0x274]
xor eax, eax
test ebx, ebx
mov word [ebp - 0x230], ax
mov dword [ebp - 0x21c], 7
sete al
mov dword [ebp - 0x220], 0
xor al, 1
je 0x100b5215
push 0x10190334
lea ecx, [ebp - 0x248]
call fcn.10041a70
lea eax, [ebp - 0x248]
mov byte [ebp - 4], 0x49
push eax
lea eax, [ebp - 0x26c]
mov ecx, ebx
push eax
call fcn.100781e0
mov ecx, dword [ebp - 0x26c]
push str.true
add ecx, 0x28
call fcn.10042080
lea ecx, [ebp - 0x248]
call fcn.100420d0
mov byte [ebp - 4], 0x4a
mov ebx, dword [ebp - 0x270]
test ebx, ebx
je 0x100b5242
mov eax, esi
lock xadd dword [ebx + 4], eax
jne 0x100b5242
mov eax, dword [ebx]
mov ecx, ebx
call dword [eax]
mov eax, esi
lock xadd dword [ebx + 8], eax
jne 0x100b5242
mov eax, dword [ebx]
mov ecx, ebx
call dword [eax + 4]
mov byte [ebp - 4], 0
cmp byte [edi + 0xf4], 0
je 0x100b5358
push str.SkinBox
lea ecx, [ebp - 0x230]
call fcn.10041a70
lea eax, [ebp - 0x230]
mov byte [ebp - 4], 0x4b
mov ecx, dword [edi + 0x54]
push eax
lea eax, [ebp - 0x26c]
push eax
call fcn.10078150
mov eax, dword [ebp - 0x26c]
lea ecx, [ebp - 0x274]
add eax, 0x28
push eax
call fcn.100436c0
mov byte [ebp - 4], 0x4d
mov eax, dword [ebp - 0x21c]
cmp eax, 8
jb 0x100b52b4
inc eax
lea ecx, [ebp - 0x230]
push eax
push dword [ebp - 0x230]
call fcn.10042120
mov ebx, dword [ebp - 0x274]
xor eax, eax
test ebx, ebx
mov word [ebp - 0x230], ax
mov dword [ebp - 0x21c], 7
sete al
mov dword [ebp - 0x220], 0
xor al, 1
je 0x100b5327
push 0x10190334
lea ecx, [ebp - 0x248]
call fcn.10041a70
lea eax, [ebp - 0x248]
mov byte [ebp - 4], 0x4e
push eax
lea eax, [ebp - 0x26c]
mov ecx, ebx
push eax
call fcn.100781e0
mov ecx, dword [ebp - 0x26c]
push str.true
add ecx, 0x28
call fcn.10042080
lea ecx, [ebp - 0x248]
call fcn.100420d0
mov byte [ebp - 4], 0x4f
mov ebx, dword [ebp - 0x270]
test ebx, ebx
je 0x100b5354
mov eax, esi
lock xadd dword [ebx + 4], eax
jne 0x100b5354
mov eax, dword [ebx]
mov ecx, ebx
call dword [eax]
mov eax, esi
lock xadd dword [ebx + 8], eax
jne 0x100b5354
mov eax, dword [ebx]
mov ecx, ebx
call dword [eax + 4]
mov byte [ebp - 4], 0
cmp byte [edi + 0xf5], 0
je 0x100b546a
push str.Hand
lea ecx, [ebp - 0x230]
call fcn.10041a70
lea eax, [ebp - 0x230]
mov byte [ebp - 4], 0x50
mov ecx, dword [edi + 0x54]
push eax
lea eax, [ebp - 0x26c]
push eax
call fcn.10078150
mov eax, dword [ebp - 0x26c]
lea ecx, [ebp - 0x274]
add eax, 0x28
push eax
call fcn.100436c0
mov byte [ebp - 4], 0x52
mov eax, dword [ebp - 0x21c]
cmp eax, 8
jb 0x100b53c6
inc eax
lea ecx, [ebp - 0x230]
push eax
push dword [ebp - 0x230]
call fcn.10042120
mov ebx, dword [ebp - 0x274]
xor eax, eax
test ebx, ebx
mov word [ebp - 0x230], ax
mov dword [ebp - 0x21c], 7
sete al
mov dword [ebp - 0x220], 0
xor al, 1
je 0x100b5439
push 0x10190334
lea ecx, [ebp - 0x248]
call fcn.10041a70
lea eax, [ebp - 0x248]
mov byte [ebp - 4], 0x53
push eax
lea eax, [ebp - 0x26c]
mov ecx, ebx
push eax
call fcn.100781e0
mov ecx, dword [ebp - 0x26c]
push str.true
add ecx, 0x28
call fcn.10042080
lea ecx, [ebp - 0x248]
call fcn.100420d0
mov byte [ebp - 4], 0x54
mov ebx, dword [ebp - 0x270]
test ebx, ebx
je 0x100b5466
mov eax, esi
lock xadd dword [ebx + 4], eax
jne 0x100b5466
mov eax, dword [ebx]
mov ecx, ebx
call dword [eax]
mov eax, esi
lock xadd dword [ebx + 8], eax
jne 0x100b5466
mov eax, dword [ebx]
mov ecx, ebx
call dword [eax + 4]
mov byte [ebp - 4], 0
cmp byte [edi + 0xf2], 0
je 0x100b557c
push 0x1018f8f4
lea ecx, [ebp - 0x230]
call fcn.10041a70
lea eax, [ebp - 0x230]
mov byte [ebp - 4], 0x55
mov ecx, dword [edi + 0x54]
push eax
lea eax, [ebp - 0x26c]
push eax
call fcn.10078150
mov eax, dword [ebp - 0x26c]
lea ecx, [ebp - 0x274]
add eax, 0x28
push eax
call fcn.100436c0
mov byte [ebp - 4], 0x57
mov eax, dword [ebp - 0x21c]
cmp eax, 8
jb 0x100b54d8
inc eax
lea ecx, [ebp - 0x230]
push eax
push dword [ebp - 0x230]
call fcn.10042120
mov ebx, dword [ebp - 0x274]
xor eax, eax
test ebx, ebx
mov word [ebp - 0x230], ax
mov dword [ebp - 0x21c], 7
sete al
mov dword [ebp - 0x220], 0
xor al, 1
je 0x100b554b
push 0x10190334
lea ecx, [ebp - 0x248]
call fcn.10041a70
lea eax, [ebp - 0x248]
mov byte [ebp - 4], 0x58
push eax
lea eax, [ebp - 0x26c]
mov ecx, ebx
push eax
call fcn.100781e0
mov ecx, dword [ebp - 0x26c]
push str.true
add ecx, 0x28
call fcn.10042080
lea ecx, [ebp - 0x248]
call fcn.100420d0
mov byte [ebp - 4], 0x59
mov ebx, dword [ebp - 0x270]
test ebx, ebx
je 0x100b5578
mov eax, esi
lock xadd dword [ebx + 4], eax
jne 0x100b5578
mov eax, dword [ebx]
mov ecx, ebx
call dword [eax]
mov eax, esi
lock xadd dword [ebx + 8], eax
jne 0x100b5578
mov eax, dword [ebx]
mov ecx, ebx
call dword [eax + 4]
mov byte [ebp - 4], 0
cmp byte [edi + 0xef], 0
je 0x100b568e
push str.SoftKeyboard
lea ecx, [ebp - 0x230]
call fcn.10041a70
lea eax, [ebp - 0x230]
mov byte [ebp - 4], 0x5a
mov ecx, dword [edi + 0x54]
push eax
lea eax, [ebp - 0x26c]
push eax
call fcn.10078150
mov eax, dword [ebp - 0x26c]
lea ecx, [ebp - 0x274]
add eax, 0x28
push eax
call fcn.100436c0
mov byte [ebp - 4], 0x5c
mov eax, dword [ebp - 0x21c]
cmp eax, 8
jb 0x100b55ea
inc eax
lea ecx, [ebp - 0x230]
push eax
push dword [ebp - 0x230]
call fcn.10042120
mov ebx, dword [ebp - 0x274]
xor eax, eax
test ebx, ebx
mov word [ebp - 0x230], ax
mov dword [ebp - 0x21c], 7
sete al
mov dword [ebp - 0x220], 0
xor al, 1
je 0x100b565d
push 0x10190334
lea ecx, [ebp - 0x248]
call fcn.10041a70
lea eax, [ebp - 0x248]
mov byte [ebp - 4], 0x5d
push eax
lea eax, [ebp - 0x26c]
mov ecx, ebx
push eax
call fcn.100781e0
mov ecx, dword [ebp - 0x26c]
push str.true
add ecx, 0x28
call fcn.10042080
lea ecx, [ebp - 0x248]
call fcn.100420d0
mov byte [ebp - 4], 0x5e
mov ebx, dword [ebp - 0x270]
test ebx, ebx
je 0x100b568a
mov eax, esi
lock xadd dword [ebx + 4], eax
jne 0x100b568a
mov eax, dword [ebx]
mov ecx, ebx
call dword [eax]
mov eax, esi
lock xadd dword [ebx + 8], eax
jne 0x100b568a
mov eax, dword [ebx]
mov ecx, ebx
call dword [eax + 4]
mov byte [ebp - 4], 0
cmp byte [edi + 0xf6], 0
je 0x100b57a0
push str.Voice
lea ecx, [ebp - 0x230]
call fcn.10041a70
lea eax, [ebp - 0x230]
mov byte [ebp - 4], 0x5f
mov ecx, dword [edi + 0x54]
push eax
lea eax, [ebp - 0x26c]
push eax
call fcn.10078150
mov eax, dword [ebp - 0x26c]
lea ecx, [ebp - 0x274]
add eax, 0x28
push eax
call fcn.100436c0
mov byte [ebp - 4], 0x61
mov eax, dword [ebp - 0x21c]
cmp eax, 8
jb 0x100b56fc
inc eax
lea ecx, [ebp - 0x230]
push eax
push dword [ebp - 0x230]
call fcn.10042120
mov ebx, dword [ebp - 0x274]
xor eax, eax
test ebx, ebx
mov word [ebp - 0x230], ax
mov dword [ebp - 0x21c], 7
sete al
mov dword [ebp - 0x220], 0
xor al, 1
je 0x100b576f
push 0x10190334
lea ecx, [ebp - 0x248]
call fcn.10041a70
lea eax, [ebp - 0x248]
mov byte [ebp - 4], 0x62
push eax
lea eax, [ebp - 0x26c]
mov ecx, ebx
push eax
call fcn.100781e0
mov ecx, dword [ebp - 0x26c]
push str.true
add ecx, 0x28
call fcn.10042080
lea ecx, [ebp - 0x248]
call fcn.100420d0
mov byte [ebp - 4], 0x63
mov ebx, dword [ebp - 0x270]
test ebx, ebx
je 0x100b579c
mov eax, esi
lock xadd dword [ebx + 4], eax
jne 0x100b579c
mov eax, dword [ebx]
mov ecx, ebx
call dword [eax]
mov eax, esi
lock xadd dword [ebx + 8], eax
jne 0x100b579c
mov eax, dword [ebx]
mov ecx, ebx
call dword [eax + 4]
mov byte [ebp - 4], 0
cmp byte [edi + 0xf7], 0
je 0x100b58b2
push str.Search
lea ecx, [ebp - 0x230]
call fcn.10041a70
lea eax, [ebp - 0x230]
mov byte [ebp - 4], 0x64
mov ecx, dword [edi + 0x54]
push eax
lea eax, [ebp - 0x26c]
push eax
call fcn.10078150
mov eax, dword [ebp - 0x26c]
lea ecx, [ebp - 0x274]
add eax, 0x28
push eax
call fcn.100436c0
mov byte [ebp - 4], 0x66
mov eax, dword [ebp - 0x21c]
cmp eax, 8
jb 0x100b580e
inc eax
lea ecx, [ebp - 0x230]
push eax
push dword [ebp - 0x230]
call fcn.10042120
mov ebx, dword [ebp - 0x274]
xor eax, eax
test ebx, ebx
mov word [ebp - 0x230], ax
mov dword [ebp - 0x21c], 7
sete al
mov dword [ebp - 0x220], 0
xor al, 1
je 0x100b5881
push 0x10190334
lea ecx, [ebp - 0x248]
call fcn.10041a70
lea eax, [ebp - 0x248]
mov byte [ebp - 4], 0x67
push eax
lea eax, [ebp - 0x26c]
mov ecx, ebx
push eax
call fcn.100781e0
mov ecx, dword [ebp - 0x26c]
push str.true
add ecx, 0x28
call fcn.10042080
lea ecx, [ebp - 0x248]
call fcn.100420d0
mov byte [ebp - 4], 0x68
mov ebx, dword [ebp - 0x270]
test ebx, ebx
je 0x100b58ae
mov eax, esi
lock xadd dword [ebx + 4], eax
jne 0x100b58ae
mov eax, dword [ebx]
mov ecx, ebx
call dword [eax]
mov eax, esi
lock xadd dword [ebx + 8], eax
jne 0x100b58ae
mov eax, dword [ebx]
mov ecx, ebx
call dword [eax + 4]
mov byte [ebp - 4], 0
cmp byte [edi + 0xf8], 0
je 0x100b59c4
push str.Calculator
lea ecx, [ebp - 0x230]
call fcn.10041a70
lea eax, [ebp - 0x230]
mov byte [ebp - 4], 0x69
mov ecx, dword [edi + 0x54]
push eax
lea eax, [ebp - 0x26c]
push eax
call fcn.10078150
mov eax, dword [ebp - 0x26c]
lea ecx, [ebp - 0x274]
add eax, 0x28
push eax
call fcn.100436c0
mov byte [ebp - 4], 0x6b
mov eax, dword [ebp - 0x21c]
cmp eax, 8
jb 0x100b5920
inc eax
lea ecx, [ebp - 0x230]
push eax
push dword [ebp - 0x230]
call fcn.10042120
mov ebx, dword [ebp - 0x274]
xor eax, eax
test ebx, ebx
mov word [ebp - 0x230], ax
mov dword [ebp - 0x21c], 7
sete al
mov dword [ebp - 0x220], 0
xor al, 1
je 0x100b5993
push 0x10190334
lea ecx, [ebp - 0x248]
call fcn.10041a70
lea eax, [ebp - 0x248]
mov byte [ebp - 4], 0x6c
push eax
lea eax, [ebp - 0x26c]
mov ecx, ebx
push eax
call fcn.100781e0
mov ecx, dword [ebp - 0x26c]
push str.true
add ecx, 0x28
call fcn.10042080
lea ecx, [ebp - 0x248]
call fcn.100420d0
mov byte [ebp - 4], 0x6d
mov ebx, dword [ebp - 0x270]
test ebx, ebx
je 0x100b59c0
mov eax, esi
lock xadd dword [ebx + 4], eax
jne 0x100b59c0
mov eax, dword [ebx]
mov ecx, ebx
call dword [eax]
mov eax, esi
lock xadd dword [ebx + 8], eax
jne 0x100b59c0
mov eax, dword [ebx]
mov ecx, ebx
call dword [eax + 4]
mov byte [ebp - 4], 0
cmp byte [edi + 0xf9], 0
je 0x100b5ad6
push str.CloudDisk
lea ecx, [ebp - 0x230]
call fcn.10041a70
lea eax, [ebp - 0x230]
mov byte [ebp - 4], 0x6e
mov ecx, dword [edi + 0x54]
push eax
lea eax, [ebp - 0x26c]
push eax
call fcn.10078150
mov eax, dword [ebp - 0x26c]
lea ecx, [ebp - 0x274]
add eax, 0x28
push eax
call fcn.100436c0
mov byte [ebp - 4], 0x70
mov eax, dword [ebp - 0x21c]
cmp eax, 8
jb 0x100b5a32
inc eax
lea ecx, [ebp - 0x230]
push eax
push dword [ebp - 0x230]
call fcn.10042120
mov ebx, dword [ebp - 0x274]
xor eax, eax
test ebx, ebx
mov word [ebp - 0x230], ax
mov dword [ebp - 0x21c], 7
sete al
mov dword [ebp - 0x220], 0
xor al, 1
je 0x100b5aa5
push 0x10190334
lea ecx, [ebp - 0x248]
call fcn.10041a70
lea eax, [ebp - 0x248]
mov byte [ebp - 4], 0x71
push eax
lea eax, [ebp - 0x26c]
mov ecx, ebx
push eax
call fcn.100781e0
mov ecx, dword [ebp - 0x26c]
push str.true
add ecx, 0x28
call fcn.10042080
lea ecx, [ebp - 0x248]
call fcn.100420d0
mov byte [ebp - 4], 0x72
mov ebx, dword [ebp - 0x270]
test ebx, ebx
je 0x100b5ad2
mov eax, esi
lock xadd dword [ebx + 4], eax
jne 0x100b5ad2
mov eax, dword [ebx]
mov ecx, ebx
call dword [eax]
mov eax, esi
lock xadd dword [ebx + 8], eax
jne 0x100b5ad2
mov eax, dword [ebx]
mov ecx, ebx
call dword [eax + 4]
mov byte [ebp - 4], 0
cmp byte [edi + 0xfa], 0
je 0x100b5be8
push str.Clipboard
lea ecx, [ebp - 0x230]
call fcn.10041a70
lea eax, [ebp - 0x230]
mov byte [ebp - 4], 0x73
mov ecx, dword [edi + 0x54]
push eax
lea eax, [ebp - 0x26c]
push eax
call fcn.10078150
mov eax, dword [ebp - 0x26c]
lea ecx, [ebp - 0x274]
add eax, 0x28
push eax
call fcn.100436c0
mov byte [ebp - 4], 0x75
mov eax, dword [ebp - 0x21c]
cmp eax, 8
jb 0x100b5b44
inc eax
lea ecx, [ebp - 0x230]
push eax
push dword [ebp - 0x230]
call fcn.10042120
mov ebx, dword [ebp - 0x274]
xor eax, eax
test ebx, ebx
mov word [ebp - 0x230], ax
mov dword [ebp - 0x21c], 7
sete al
mov dword [ebp - 0x220], 0
xor al, 1
je 0x100b5bb7
push 0x10190334
lea ecx, [ebp - 0x248]
call fcn.10041a70
lea eax, [ebp - 0x248]
mov byte [ebp - 4], 0x76
push eax
lea eax, [ebp - 0x26c]
mov ecx, ebx
push eax
call fcn.100781e0
mov ecx, dword [ebp - 0x26c]
push str.true
add ecx, 0x28
call fcn.10042080
lea ecx, [ebp - 0x248]
call fcn.100420d0
mov byte [ebp - 4], 0x77
mov ebx, dword [ebp - 0x270]
test ebx, ebx
je 0x100b5be4
mov eax, esi
lock xadd dword [ebx + 4], eax
jne 0x100b5be4
mov eax, dword [ebx]
mov ecx, ebx
call dword [eax]
mov eax, esi
lock xadd dword [ebx + 8], eax
jne 0x100b5be4
mov eax, dword [ebx]
mov ecx, ebx
call dword [eax + 4]
mov byte [ebp - 4], 0
cmp byte [edi + 0xfb], 0
je 0x100b5cfa
push str.Office
lea ecx, [ebp - 0x230]
call fcn.10041a70
lea eax, [ebp - 0x230]
mov byte [ebp - 4], 0x78
mov ecx, dword [edi + 0x54]
push eax
lea eax, [ebp - 0x26c]
push eax
call fcn.10078150
mov eax, dword [ebp - 0x26c]
lea ecx, [ebp - 0x274]
add eax, 0x28
push eax
call fcn.100436c0
mov byte [ebp - 4], 0x7a
mov eax, dword [ebp - 0x21c]
cmp eax, 8
jb 0x100b5c56
inc eax
lea ecx, [ebp - 0x230]
push eax
push dword [ebp - 0x230]
call fcn.10042120
mov ebx, dword [ebp - 0x274]
xor eax, eax
test ebx, ebx
mov word [ebp - 0x230], ax
mov dword [ebp - 0x21c], 7
sete al
mov dword [ebp - 0x220], 0
xor al, 1
je 0x100b5cc9
push 0x10190334
lea ecx, [ebp - 0x248]
call fcn.10041a70
lea eax, [ebp - 0x248]
mov byte [ebp - 4], 0x7b
push eax
lea eax, [ebp - 0x26c]
mov ecx, ebx
push eax
call fcn.100781e0
mov ecx, dword [ebp - 0x26c]
push str.true
add ecx, 0x28
call fcn.10042080
lea ecx, [ebp - 0x248]
call fcn.100420d0
mov byte [ebp - 4], 0x7c
mov ebx, dword [ebp - 0x270]
test ebx, ebx
je 0x100b5cf6
mov eax, esi
lock xadd dword [ebx + 4], eax
jne 0x100b5cf6
mov eax, dword [ebx]
mov ecx, ebx
call dword [eax]
mov eax, esi
lock xadd dword [ebx + 8], eax
jne 0x100b5cf6
mov eax, dword [ebx]
mov ecx, ebx
call dword [eax + 4]
mov byte [ebp - 4], 0
cmp byte [edi + 0xfc], 0
je 0x100b5e07
push str.ChatGPT
lea ecx, [ebp - 0x230]
call fcn.10041a70
lea eax, [ebp - 0x230]
mov byte [ebp - 4], 0x7d
mov ecx, dword [edi + 0x54]
push eax
lea eax, [ebp - 0x26c]
push eax
call fcn.10078150
mov eax, dword [ebp - 0x26c]
lea ecx, [ebp - 0x274]
add eax, 0x28
push eax
call fcn.100436c0
mov byte [ebp - 4], 0x7f
mov eax, dword [ebp - 0x21c]
cmp eax, 8
jb 0x100b5d68
inc eax
lea ecx, [ebp - 0x230]
push eax
push dword [ebp - 0x230]
call fcn.10042120
mov edi, dword [ebp - 0x274]
xor eax, eax
test edi, edi
mov word [ebp - 0x230], ax
mov dword [ebp - 0x21c], 7
sete al
mov dword [ebp - 0x220], 0
xor al, 1
je 0x100b5ddb
push 0x10190334
lea ecx, [ebp - 0x248]
call fcn.10041a70
lea eax, [ebp - 0x248]
mov byte [ebp - 4], 0x80
push eax
lea eax, [ebp - 0x26c]
mov ecx, edi
push eax
call fcn.100781e0
mov ecx, dword [ebp - 0x26c]
push str.true
add ecx, 0x28
call fcn.10042080
lea ecx, [ebp - 0x248]
call fcn.100420d0
mov byte [ebp - 4], 0x81
mov edi, dword [ebp - 0x270]
test edi, edi
je 0x100b5e07
mov eax, esi
lock xadd dword [edi + 4], eax
jne 0x100b5e07
mov eax, dword [edi]
mov ecx, edi
call dword [eax]
lock xadd dword [edi + 8], esi
dec esi
jne 0x100b5e07
mov eax, dword [edi]
mov ecx, edi
call dword [eax + 4]
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.1010a7f2
mov esp, ebp
pop ebp
ret