Function at 0x1001d7be
Capabilities:
Log keystrokes via polling

Disassembly:
push ebx
mov ebx, esp
sub esp, 8
and esp, 0xfffffff8
add esp, 4
push ebp
mov ebp, dword [ebx + 4]
mov dword [esp + 4], ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x101129f0
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
push ecx
push ebx
sub esp, 0x60
push ebx
push esi
push edi
mov dword [ebp - 0x10], esp
cmp byte [0x101f7a14], 0
je 0x1001e2c4
mov ecx, dword [0x101c176c]
mov eax, dword [ecx]
mov eax, dword [eax + 0x30]
call eax
mov ecx, dword [0x101f75d0]
mov edx, dword [ecx]
mov edx, dword [edx + 0xc]
push eax
call edx
mov al, byte [0x101be894]
mov byte [ebp - 0x1a], al
mov al, byte [0x101f2f48]
mov byte [ebp - 0x19], al
mov edi, dword [0x101f764c]
test edi, edi
je 0x1001e23c
mov eax, dword [0x101f7648]
test eax, eax
jne 0x1001d713
mov edx, 0xe80c2f78
mov ecx, 0x1014c9ed
call fcn.10003ad0
mov esi, eax
mov edx, 0xc10bf213
mov ecx, 0x1014c915
call fcn.10003ad0
mov edx, esi
mov ecx, eax
call fcn.100abe50
mov dword [0x101f7648], eax
cmp dword [edi + eax], 0
jle 0x1001e23c
mov eax, dword [0x101f7a10]
mov ecx, dword [0x101be364]
cmp ecx, 3
ja case.0x1001d72d.0
jmp dword [ecx*4 + 0x1001e2e4]
push eax
mov esi, dword [sym.imp.USER32.dll_GetKeyState]
call esi
cwde
shr eax, 0x10
test eax, eax
setne al
jmp 0x1001d76b
push eax
mov esi, dword [sym.imp.USER32.dll_GetKeyState]
call esi
test ax, ax
setne al
jmp 0x1001d76b
push eax
mov esi, dword [sym.imp.USER32.dll_GetKeyState]
call esi
cwde
shr eax, 0x10
test eax, eax
sete al
test al, al
jne 0x1001d777
jmp 0x1001d799
mov esi, dword [sym.imp.USER32.dll_GetKeyState]
cmp byte [0x101f2f48], 0
jne 0x1001d799
cmp byte [0x101be894], 0
jne 0x1001d799
cmp byte [0x101be0b4], 0
jne 0x1001d799
mov byte [0x101f2f48], 1
mov eax, dword [0x101f7a00]
mov ecx, dword [0x101be370]
cmp ecx, 3
ja case.0x1001d7a9.0
jmp dword [ecx*4 + 0x1001e2f4]
push eax
call esi
cwde
shr eax, 0x10
test eax, eax
setne al
jmp 0x1001d7d5
push eax
call esi
test ax, ax
setne al
jmp 0x1001d7d5
push eax
call esi
cwde
shr eax, 0x10
test eax, eax
sete al
test al, al
je 0x1001d7f8
cmp byte [0x101be894], 0
jne 0x1001d7f8
mov byte [0x101f2f48], 0
mov ecx, dword [ebx + 8]
add ecx, 0xc
lea eax, [ebp - 0x44]
push eax
call fcn.100abd40
mov eax, dword [0x101f7a0c]
mov ecx, dword [0x101be368]
cmp ecx, 3
ja case.0x1001d808.0
jmp dword [ecx*4 + 0x1001e304]
push eax
call esi
cwde
shr eax, 0x10
test eax, eax
setne al
jmp 0x1001d834
push eax
call esi
test ax, ax
setne al
jmp 0x1001d834
push eax
call esi
cwde
shr eax, 0x10
test eax, eax
sete al
test al, al
je 0x1001db2c
cmp byte [0x101f2f48], 0
jne 0x1001db2c
cmp byte [0x101be894], 0
jne 0x1001db2c
cmp byte [0x101be0b4], 0
jne 0x1001db2c
mov edi, dword [0x101f2f60]
mov ecx, edi
mov esi, dword [0x101f2f5c]
sub ecx, esi
mov eax, 0x88888889
imul ecx
add edx, ecx
sar edx, 5
mov eax, edx
shr eax, 0x1f
add eax, edx
je 0x1001db2c
or ecx, 0xffffffff
mov dword [ebp - 0x24], ecx
movss xmm3, dword [0x101b8578]
xor ecx, ecx
mov dword [ebp - 0x20], ecx
mov dword [ebp - 0x28], ecx
sub edi, esi
mov eax, 0x88888889
imul edi
add edx, edi
sar edx, 5
mov eax, edx
shr eax, 0x1f
add eax, edx
cmp eax, ecx
jbe 0x1001e2da
mov edi, dword [ebp - 0x28]
mov ecx, dword [edi + esi + 0x34]
sub ecx, dword [edi + esi + 0x30]
mov eax, 0x66666667
imul ecx
sar edx, 4
mov eax, edx
shr eax, 0x1f
add eax, edx
je 0x1001e2df
mov eax, dword [edi + esi + 0x30]
movss xmm1, dword [eax + 0x1c]
subss xmm1, dword [0x101c0784]
movss xmm2, dword [eax + 0x20]
subss xmm2, dword [0x101c0788]
movss xmm0, dword [eax + 0x24]
subss xmm0, dword [0x101c078c]
mov dword [ebp - 0x48], 0
mulss xmm2, xmm2
mulss xmm1, xmm1
addss xmm2, xmm1
mulss xmm0, xmm0
addss xmm2, xmm0
movss dword [ebp - 0x28], xmm2
sqrtss xmm0, dword [ebp - 0x28]
movss dword [ebp - 0x48], xmm0
comiss xmm3, dword [ebp - 0x48]
jbe 0x1001d9b9
mov eax, dword [ebp - 0x20]
mov dword [ebp - 0x24], eax
mov ecx, dword [edi + esi + 0x34]
mov esi, dword [edi + esi + 0x30]
sub ecx, esi
mov eax, 0x66666667
imul ecx
sar edx, 4
mov eax, edx
shr eax, 0x1f
add eax, edx
je 0x1001e2df
movss xmm1, dword [esi + 0x1c]
subss xmm1, dword [0x101c0784]
movss xmm2, dword [esi + 0x20]
subss xmm2, dword [0x101c0788]
movss xmm0, dword [esi + 0x24]
subss xmm0, dword [0x101c078c]
mov dword [ebp - 0x38], 0
mulss xmm2, xmm2
mulss xmm1, xmm1
addss xmm2, xmm1
mulss xmm0, xmm0
addss xmm2, xmm0
movss dword [ebp - 0x28], xmm2
sqrtss xmm0, dword [ebp - 0x28]
movss dword [ebp - 0x38], xmm0
movss xmm3, dword [ebp - 0x38]
inc dword [ebp - 0x20]
add edi, 0x3c
mov dword [ebp - 0x28], edi
mov edi, dword [0x101f2f60]
mov ecx, edi
mov esi, dword [0x101f2f5c]
sub ecx, esi
mov eax, 0x88888889
imul ecx
add edx, ecx
sar edx, 5
mov eax, edx
shr eax, 0x1f
add eax, edx
mov ecx, dword [ebp - 0x20]
cmp ecx, eax
jb 0x1001d8a2
mov ecx, dword [ebp - 0x24]
cmp ecx, 0xffffffff
je 0x1001e2c4
sub edi, esi
mov eax, 0x88888889
imul edi
add edx, edi
sar edx, 5
mov eax, edx
shr eax, 0x1f
add eax, edx
cmp eax, ecx
jbe 0x1001e2da
mov edi, ecx
shl edi, 4
sub edi, ecx
shl edi, 2
mov ecx, dword [edi + esi + 0x34]
mov esi, dword [edi + esi + 0x30]
sub ecx, esi
mov eax, 0x66666667
imul ecx
sar edx, 4
mov eax, edx
shr eax, 0x1f
add eax, edx
je 0x1001db2c
movss xmm1, dword [esi + 0x1c]
subss xmm1, dword [0x101c0784]
movss xmm2, dword [esi + 0x20]
subss xmm2, dword [0x101c0788]
movss xmm0, dword [esi + 0x24]
subss xmm0, dword [0x101c078c]
mov dword [ebp - 0x48], 0
mulss xmm2, xmm2
mulss xmm1, xmm1
addss xmm2, xmm1
mulss xmm0, xmm0
addss xmm2, xmm0
movss dword [ebp - 0x28], xmm2
sqrtss xmm0, dword [ebp - 0x28]
movss dword [ebp - 0x48], xmm0
movss xmm0, dword [0x101be36c]
comiss xmm0, dword [ebp - 0x48]
jbe 0x1001db2c
mov esi, dword [0x101f2f5c]
mov ecx, dword [0x101f2f60]
sub ecx, esi
mov eax, 0x88888889
imul ecx
add edx, ecx
sar edx, 5
mov eax, edx
shr eax, 0x1f
add eax, edx
cmp eax, dword [ebp - 0x24]
jbe 0x1001e2da
lea eax, [esi + 0x30]
add eax, edi
push eax
lea ecx, [ebp - 0x38]
call fcn.10020ec0
mov ecx, dword [ebp - 0x34]
mov esi, dword [ebp - 0x38]
sub ecx, esi
mov eax, 0x66666667
imul ecx
sar edx, 4
mov eax, edx
shr eax, 0x1f
add eax, edx
push eax
push esi
mov ecx, 0x101f2f4c
call fcn.10021e00
lea ecx, [ebp - 0x38]
call fcn.10021420
mov byte [0x101c179e], 1
cmp byte [0x101be378], 0
je 0x1001db23
mov byte [0x101c179d], 1
mov byte [0x101c179c], 1
jmp 0x1001db39
cmp byte [0x101c179e], 0
je 0x1001dc8a
mov esi, dword [0x101f2f4c]
mov ecx, dword [0x101f2f50]
sub ecx, esi
mov eax, 0x66666667
imul ecx
sar edx, 4
mov eax, edx
shr eax, 0x1f
add eax, edx
je 0x1001e2df
movss xmm1, dword [0x101c0784]
subss xmm1, dword [esi + 0x1c]
movss xmm2, dword [0x101c0788]
subss xmm2, dword [esi + 0x20]
movss xmm0, dword [0x101c078c]
subss xmm0, dword [esi + 0x24]
mov dword [ebp - 0x48], 0
mulss xmm2, xmm2
mulss xmm1, xmm1
addss xmm2, xmm1
mulss xmm0, xmm0
addss xmm2, xmm0
movss dword [ebp - 0x28], xmm2
sqrtss xmm0, dword [ebp - 0x28]
movss dword [ebp - 0x48], xmm0
movss xmm0, dword [0x101b8294]
comiss xmm0, dword [ebp - 0x48]
jb 0x1001dbc4
mov byte [0x101c179e], 0
movss xmm1, dword [0x101c0784]
movss xmm0, dword [0x101c0788]
mov esi, dword [0x101f2f4c]
mov ecx, dword [0x101f2f50]
sub ecx, esi
mov eax, 0x66666667
imul ecx
sar edx, 4
mov eax, edx
shr eax, 0x1f
add eax, edx
je 0x1001e2df
subss xmm1, dword [esi + 0x1c]
movss dword [ebp - 0x24], xmm1
subss xmm0, dword [esi + 0x20]
movss dword [ebp - 0x28], xmm0
mov esi, dword [ebx + 8]
movss xmm0, dword [esi + 0x10]
mulss xmm0, dword [0x101b8250]
cvtps2pd xmm1, xmm0
mulsd xmm1, qword [0x101b83b8]
movaps xmm0, xmm1
call fcn.101109b0
movaps xmm1, xmm0
shufpd xmm1, xmm0, 1
xorps xmm2, xmm2
cvtsd2ss xmm2, xmm1
xorps xmm1, xmm1
cvtsd2ss xmm1, xmm0
movss xmm4, dword [ebp - 0x28]
movaps xmm3, xmm4
mulss xmm3, xmm1
movss xmm5, dword [ebp - 0x24]
movaps xmm0, xmm5
mulss xmm0, xmm2
addss xmm3, xmm0
mulss xmm4, xmm2
mulss xmm5, xmm1
subss xmm4, xmm5
mulss xmm3, dword [0x101b8600]
movss dword [esi + 0x24], xmm3
mulss xmm4, dword [0x101b8464]
movss dword [esi + 0x28], xmm4
jmp 0x1001dc8d
mov esi, dword [ebx + 8]
movss xmm2, dword [0x101b8294]
mov al, byte [0x101c179d]
test al, al
je 0x1001dd6e
xor eax, eax
mov dword [esi + 0x44], eax
mov ecx, dword [0x101f2f50]
sub ecx, dword [0x101f2f4c]
mov eax, 0x66666667
imul ecx
sar edx, 4
mov eax, edx
shr eax, 0x1f
add eax, edx
je 0x1001e2df
mov eax, dword [0x101f2f4c]
movss xmm1, dword [eax + 4]
lea edi, [esi + 0xc]
movss xmm0, dword [eax]
subss xmm0, dword [edi]
subss xmm1, dword [esi + 0x10]
movss dword [ebp - 0x34], xmm0
movss dword [ebp - 0x30], xmm1
mov dword [ebp - 0x2c], 0
mulss xmm0, xmm0
mulss xmm1, xmm1
addss xmm0, xmm1
call fcn.100039c0
comiss xmm2, xmm0
ja 0x1001dd14
cmp byte [0x101be378], 0
jne 0x1001dd1b
mov byte [0x101c179d], 0
lea eax, [ebp - 0x44]
push eax
lea ecx, [ebp - 0x34]
call fcn.100abd40
movss xmm1, dword [0x101b8358]
divss xmm1, dword [0x101be360]
movss xmm0, dword [ebp - 0x34]
mulss xmm0, xmm1
addss xmm0, dword [edi]
movss dword [edi], xmm0
movss xmm0, dword [ebp - 0x30]
mulss xmm0, xmm1
addss xmm0, dword [esi + 0x10]
movss dword [esi + 0x10], xmm0
mov ecx, dword [0x101c176c]
mov eax, dword [ecx]
mov eax, dword [eax + 0x4c]
push edi
call eax
mov al, byte [0x101c179d]
cmp byte [0x101c179c], 0
je 0x1001decf
test al, al
jne 0x1001decf
cmp byte [0x101c179e], al
jne 0x1001decf
mov ecx, dword [0x101f2f4c]
mov edx, dword [0x101f2f50]
cmp ecx, edx
je 0x1001decf
sub edx, ecx
mov eax, 0x66666667
imul edx
sar edx, 4
mov eax, edx
shr eax, 0x1f
add eax, edx
je 0x1001e2df
movss xmm1, dword [0x101c0784]
subss xmm1, dword [ecx + 0x1c]
movss xmm2, dword [0x101c0788]
subss xmm2, dword [ecx + 0x20]
movss xmm0, dword [0x101c078c]
subss xmm0, dword [ecx + 0x24]
mov dword [ebp - 0x48], 0
mulss xmm2, xmm2
mulss xmm1, xmm1
addss xmm2, xmm1
mulss xmm0, xmm0
addss xmm2, xmm0
movss dword [ebp - 0x28], xmm2
sqrtss xmm0, dword [ebp - 0x28]
movss dword [ebp - 0x48], xmm0
movss xmm2, dword [0x101b8294]
comiss xmm2, dword [ebp - 0x48]
jbe 0x1001decf
mov edi, dword [0x101f2f4c]
mov ecx, dword [0x101f2f50]
sub ecx, edi
mov eax, 0x66666667
imul ecx
sar edx, 4
mov eax, edx
shr eax, 0x1f
add eax, edx
je 0x1001e2df
movss xmm1, dword [edi + 4]
movss xmm0, dword [edi]
subss xmm0, dword [esi + 0xc]
subss xmm1, dword [esi + 0x10]
mov dword [ebp - 0x48], 0
mulss xmm0, xmm0
mulss xmm1, xmm1
addss xmm0, xmm1
movss dword [ebp - 0x28], xmm0
sqrtss xmm0, dword [ebp - 0x28]
movss dword [ebp - 0x48], xmm0
comiss xmm2, dword [ebp - 0x48]
ja 0x1001de88
cmp byte [0x101be378], 0
jne 0x1001decf
mov byte [0x101be894], 1
mov ecx, dword [0x101be89c]
cmp ecx, 0x101f2f4c
je 0x1001dec3
mov esi, dword [0x101f2f4c]
mov edx, dword [0x101f2f50]
sub edx, esi
mov eax, 0x66666667
imul edx
sar edx, 4
mov eax, edx
shr eax, 0x1f
add eax, edx
push eax
push esi
call fcn.10021e00
mov byte [0x101c179c], 0
jmp 0x1001e2c4
mov eax, dword [0x101f7a08]
mov ecx, dword [0x101be374]
cmp ecx, 3
ja case.0x1001dedf.0
jmp dword [ecx*4 + 0x1001e314]
push eax
call dword [sym.imp.USER32.dll_GetKeyState]
cwde
shr eax, 0x10
test eax, eax
setne al
jmp 0x1001df17
push eax
call dword [sym.imp.USER32.dll_GetKeyState]
test ax, ax
setne al
jmp 0x1001df17
push eax
call dword [sym.imp.USER32.dll_GetKeyState]
cwde
shr eax, 0x10
test eax, eax
sete al
test al, al
je 0x1001df99
cmp byte [0x101be894], 0
je 0x1001df99
cmp byte [0x101f2f48], 0
jne 0x1001df99
mov byte [0x101c179e], 0
mov byte [0x101c179d], 0
mov eax, dword [0x101be89c]
mov edi, dword [eax]
mov ecx, dword [eax + 4]
sub ecx, edi
mov eax, 0x66666667
imul ecx
sar edx, 4
mov ecx, edx
shr ecx, 0x1f
add ecx, edx
mov edx, dword [0x101be898]
cmp ecx, edx
jbe 0x1001e2df
lea eax, [edx + edx*4]
movss xmm1, dword [edi + eax*8]
lea eax, [edx + edx*4]
movss xmm0, dword [edi + eax*8 + 4]
movss dword [esi + 0xc], xmm1
movss dword [esi + 0x10], xmm0
mov dword [esi + 0x14], 0
mov byte [0x101be894], 0
mov dword [0x101be898], 0
cmp byte [ebp - 0x19], 0
je 0x1001e0fd
mov eax, dword [0x101f7890]
mov edi, dword [eax + 0x1c]
dec edi
mov ecx, dword [0x101c1730]
mov eax, dword fs:[0x2c]
mov ecx, dword [eax + ecx*4]
mov eax, dword [0x101fce10]
cmp eax, dword [ecx + 4]
jle 0x1001dfff
push 0x101fce10
call fcn.1010fdd4
add esp, 4
cmp dword [0x101fce10], 0xffffffff
jne 0x1001dfff
mov edx, str.55_8B_EC_8B_4D___56_E8_________8B_75
mov ecx, str.client.dll
call fcn.10006a40
mov dword [0x101fce14], eax
push 0x101fce10
call fcn.1010fd83
add esp, 4
push edi
push 0
call dword [0x101fce14]
mov edi, dword [0x101f764c]
mov eax, dword [0x101f75e0]
test eax, eax
jne 0x1001e048
mov edx, 0xe80c2f78
mov ecx, 0x1014c931
call fcn.10003ad0
mov esi, eax
mov edx, 0xc10bf213
mov ecx, 0x1014c93d
call fcn.10003ad0
mov edx, esi
mov ecx, eax
call fcn.100abe50
mov dword [0x101f75e0], eax
mov esi, dword [ebx + 8]
movq xmm0, qword [eax + edi]
movq qword [ebp - 0x34], xmm0
mov eax, dword [eax + edi + 8]
mov dword [ebp - 0x2c], eax
movss xmm0, dword [esi + 0xc]
movss dword [ebp - 0x70], xmm0
movss xmm0, dword [esi + 0x10]
movss dword [ebp - 0x6c], xmm0
movss xmm0, dword [esi + 0x24]
movss dword [ebp - 0x68], xmm0
movss xmm0, dword [esi + 0x28]
movss dword [ebp - 0x64], xmm0
movss xmm0, dword [esi + 0x2c]
movss dword [ebp - 0x60], xmm0
mov eax, dword [esi + 0x30]
mov dword [ebp - 0x5c], eax
movzx eax, word [esi + 0x44]
mov word [ebp - 0x58], ax
movzx eax, word [esi + 0x46]
mov word [ebp - 0x56], ax
movss xmm0, dword [ebp - 0x34]
movss dword [ebp - 0x54], xmm0
movss xmm0, dword [ebp - 0x30]
movss dword [ebp - 0x50], xmm0
movss xmm0, dword [ebp - 0x2c]
movss dword [ebp - 0x4c], xmm0
mov eax, dword [0x101f2f50]
cmp eax, dword [0x101f2f54]
je 0x1001e0ee
movups xmm0, xmmword [ebp - 0x70]
movups xmmword [eax], xmm0
movups xmm0, xmmword [ebp - 0x60]
movups xmmword [eax + 0x10], xmm0
movq xmm0, qword [ebp - 0x50]
movq qword [eax + 0x20], xmm0
add dword [0x101f2f50], 0x28
jmp 0x1001e0fd
lea ecx, [ebp - 0x70]
push ecx
push eax
mov ecx, 0x101f2f4c
call fcn.10022aa0
cmp byte [ebp - 0x1a], 0
je 0x1001e23f
mov ecx, dword [0x101be898]
mov dword [ebp - 0x28], ecx
mov dword [ebp - 4], 0
wait
lea edi, [esi + 0xc]
movq xmm0, qword [edi]
movq qword [ebp - 0x34], xmm0
mov eax, dword [edi + 8]
mov dword [ebp - 0x2c], eax
push ecx
mov ecx, 0x101f2f4c
call fcn.10020e80
mov edx, eax
mov ecx, dword [edx]
mov dword [edi], ecx
movss xmm0, dword [edx + 4]
movss dword [esi + 0x10], xmm0
movss xmm0, dword [edx + 8]
movss dword [esi + 0x24], xmm0
movss xmm0, dword [edx + 0xc]
movss dword [esi + 0x28], xmm0
movss xmm0, dword [edx + 0x10]
movss dword [esi + 0x2c], xmm0
mov eax, dword [edx + 0x14]
mov dword [esi + 0x30], eax
movzx eax, word [edx + 0x18]
mov word [esi + 0x44], ax
movzx eax, word [edx + 0x1a]
mov word [esi + 0x46], ax
movq xmm0, qword [edi]
movq qword [ebp - 0x44], xmm0
mov eax, dword [edi + 8]
mov dword [ebp - 0x3c], eax
cmp byte [0x101be378], 0
je 0x1001e1a1
mov ecx, dword [0x101c176c]
mov eax, dword [ecx]
mov eax, dword [eax + 0x4c]
push edi
call eax
jmp 0x1001e1c8
movss xmm0, dword [ebp - 0x34]
movss dword [edi], xmm0
movss xmm0, dword [ebp - 0x30]
movss dword [esi + 0x10], xmm0
movss xmm0, dword [ebp - 0x2c]
movss dword [esi + 0x14], xmm0
lea edx, [ebp - 0x44]
mov ecx, esi
call fcn.10013430
mov edi, dword [ebp - 0x28]
inc edi
mov ecx, dword [0x101f2f50]
sub ecx, dword [0x101f2f4c]
mov eax, 0x66666667
imul ecx
sar edx, 4
mov eax, edx
shr eax, 0x1f
add eax, edx
cmp edi, eax
jne 0x1001e208
mov byte [0x101be894], 0
mov dword [0x101be898], 0
wait
mov dword [ebp - 4], 0xffffffff
jmp 0x1001e23f
mov dword [0x101be898], edi
wait
mov dword [ebp - 4], 0xffffffff
jmp 0x1001e23f
mov esi, dword [ebx + 8]
mov eax, dword [0x101f7a04]
mov ecx, dword [0x101be37c]
cmp ecx, 3
ja case.0x1001e24f.0
jmp dword [ecx*4 + 0x1001e324]
push eax
call dword [sym.imp.USER32.dll_GetKeyState]
cwde
shr eax, 0x10
test eax, eax
setne al
jmp 0x1001e287
push eax
call dword [sym.imp.USER32.dll_GetKeyState]
test ax, ax
setne al
jmp 0x1001e287
push eax
call dword [sym.imp.USER32.dll_GetKeyState]
cwde
shr eax, 0x10
test eax, eax
sete al
test al, al
je 0x1001e2b8
cmp byte [0x101be0b4], 0
jne 0x1001e2b8
cmp byte [0x101f2f48], 0
jne 0x1001e2b8
sbb eax, dword [eax + 0x1be8943d]
adc byte [eax], al
cmp byte [0x101be894], 0
jne 0x1001e2b8
mov eax, dword [0x101f2f4c]
cmp eax, dword [0x101f2f50]
je 0x1001e2b8
mov dword [0x101f2f50], eax
lea eax, [ebp - 0x44]
push eax
lea ecx, [esi + 0xc]
call fcn.100abd40
dec esi
or al, 0xe8
jl 0x1001e29c
or byte [eax], al
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret 4
call fcn.10019bf0
call fcn.10019bf0
jno 0x1001e2bd
add dword [eax], edx
xor al, 0xd7
add dword [eax], edx
dec eax
xlatb
add dword [eax], edx
pop ecx
xlatb
add dword [eax], edx
invalid