Function at 0x1001d681
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 0x10111200
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 [0x101f5a1c], 0
je 0x1001e1d4
mov ecx, dword [0x101bf77c]
mov eax, dword [ecx]
mov eax, dword [eax + 0x30]
call eax
mov ecx, dword [0x101f55e0]
mov edx, dword [ecx]
mov edx, dword [edx + 0xc]
push eax
call edx
mov al, byte [0x101bc89c]
mov byte [ebp - 0x1a], al
mov al, byte [0x101f0f58]
mov byte [ebp - 0x19], al
mov edi, dword [0x101f565c]
test edi, edi
je 0x1001e14c
mov eax, dword [0x101f5658]
test eax, eax
jne 0x1001d623
mov edx, 0xe80c2f78
mov ecx, 0x1014a9e5
call fcn.10003700
mov esi, eax
mov edx, 0xc10bf213
mov ecx, 0x1014a90d
call fcn.10003700
mov edx, esi
mov ecx, eax
call fcn.100aa660
mov dword [0x101f5658], eax
cmp dword [edi + eax], 0
jle 0x1001e14c
mov eax, dword [0x101f5a18]
mov ecx, dword [0x101bc368]
cmp ecx, 3
ja case.0x1001d63d.0
jmp dword [ecx*4 + 0x1001e1f4]
push eax
mov esi, dword [sym.imp.USER32.dll_GetKeyState]
call esi
cwde
shr eax, 0x10
test eax, eax
setne al
jmp 0x1001d67b
push eax
mov esi, dword [sym.imp.USER32.dll_GetKeyState]
call esi
test ax, ax
setne al
jmp 0x1001d67b
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 0x1001d687
jmp 0x1001d6a9
mov esi, dword [sym.imp.USER32.dll_GetKeyState]
cmp byte [0x101f0f58], 0
jne 0x1001d6a9
cmp byte [0x101bc89c], 0
jne 0x1001d6a9
cmp byte [0x101bc0b4], 0
jne 0x1001d6a9
mov byte [0x101f0f58], 1
mov eax, dword [0x101f5a08]
mov ecx, dword [0x101bc374]
cmp ecx, 3
ja case.0x1001d6b9.0
jmp dword [ecx*4 + 0x1001e204]
push eax
call esi
cwde
shr eax, 0x10
test eax, eax
setne al
jmp 0x1001d6e5
push eax
call esi
test ax, ax
setne al
jmp 0x1001d6e5
push eax
call esi
cwde
shr eax, 0x10
test eax, eax
sete al
test al, al
je 0x1001d708
cmp byte [0x101bc89c], 0
jne 0x1001d708
mov byte [0x101f0f58], 0
mov ecx, dword [ebx + 8]
add ecx, 0xc
lea eax, [ebp - 0x44]
push eax
call fcn.100aa550
mov eax, dword [0x101f5a14]
mov ecx, dword [0x101bc36c]
cmp ecx, 3
ja case.0x1001d718.0
jmp dword [ecx*4 + 0x1001e214]
push eax
call esi
cwde
shr eax, 0x10
test eax, eax
setne al
jmp 0x1001d744
push eax
call esi
test ax, ax
setne al
jmp 0x1001d744
push eax
call esi
cwde
shr eax, 0x10
test eax, eax
sete al
test al, al
je 0x1001da3c
cmp byte [0x101f0f58], 0
jne 0x1001da3c
cmp byte [0x101bc89c], 0
jne 0x1001da3c
cmp byte [0x101bc0b4], 0
jne 0x1001da3c
mov edi, dword [0x101f0f70]
mov ecx, edi
mov esi, dword [0x101f0f6c]
sub ecx, esi
mov eax, 0x88888889
imul ecx
add edx, ecx
sar edx, 5
mov eax, edx
shr eax, 0x1f
add eax, edx
je 0x1001da3c
or ecx, 0xffffffff
mov dword [ebp - 0x24], ecx
movss xmm3, dword [0x101b65f0]
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 0x1001e1ea
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 0x1001e1ef
mov eax, dword [edi + esi + 0x30]
movss xmm1, dword [eax + 0x1c]
subss xmm1, dword [0x101be78c]
movss xmm2, dword [eax + 0x20]
subss xmm2, dword [0x101be790]
movss xmm0, dword [eax + 0x24]
subss xmm0, dword [0x101be794]
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 0x1001d8c9
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 0x1001e1ef
movss xmm1, dword [esi + 0x1c]
subss xmm1, dword [0x101be78c]
movss xmm2, dword [esi + 0x20]
subss xmm2, dword [0x101be790]
movss xmm0, dword [esi + 0x24]
subss xmm0, dword [0x101be794]
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 [0x101f0f70]
mov ecx, edi
mov esi, dword [0x101f0f6c]
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 0x1001d7b2
mov ecx, dword [ebp - 0x24]
cmp ecx, 0xffffffff
je 0x1001e1d4
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 0x1001e1ea
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 0x1001da3c
movss xmm1, dword [esi + 0x1c]
subss xmm1, dword [0x101be78c]
movss xmm2, dword [esi + 0x20]
subss xmm2, dword [0x101be790]
movss xmm0, dword [esi + 0x24]
subss xmm0, dword [0x101be794]
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 [0x101bc370]
comiss xmm0, dword [ebp - 0x48]
jbe 0x1001da3c
mov esi, dword [0x101f0f6c]
mov ecx, dword [0x101f0f70]
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 0x1001e1ea
lea eax, [esi + 0x30]
add eax, edi
push eax
lea ecx, [ebp - 0x38]
call fcn.10020dd0
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, 0x101f0f5c
call fcn.10021d10
lea ecx, [ebp - 0x38]
call fcn.10021330
mov byte [0x101bf7ae], 1
cmp byte [0x101bc37c], 0
je 0x1001da33
mov byte [0x101bf7ad], 1
mov byte [0x101bf7ac], 1
jmp 0x1001da49
cmp byte [0x101bf7ae], 0
je 0x1001db9a
mov esi, dword [0x101f0f5c]
mov ecx, dword [0x101f0f60]
sub ecx, esi
mov eax, 0x66666667
imul ecx
sar edx, 4
mov eax, edx
shr eax, 0x1f
add eax, edx
je 0x1001e1ef
movss xmm1, dword [0x101be78c]
subss xmm1, dword [esi + 0x1c]
movss xmm2, dword [0x101be790]
subss xmm2, dword [esi + 0x20]
movss xmm0, dword [0x101be794]
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 [0x101b6314]
comiss xmm0, dword [ebp - 0x48]
jb 0x1001dad4
mov byte [0x101bf7ae], 0
movss xmm1, dword [0x101be78c]
movss xmm0, dword [0x101be790]
mov esi, dword [0x101f0f5c]
mov ecx, dword [0x101f0f60]
sub ecx, esi
mov eax, 0x66666667
imul ecx
sar edx, 4
mov eax, edx
shr eax, 0x1f
add eax, edx
je 0x1001e1ef
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 [0x101b62d0]
cvtps2pd xmm1, xmm0
mulsd xmm1, qword [0x101b6430]
movaps xmm0, xmm1
call fcn.1010f1c0
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 [0x101b6678]
movss dword [esi + 0x24], xmm3
mulss xmm4, dword [0x101b64dc]
movss dword [esi + 0x28], xmm4
jmp 0x1001db9d
mov esi, dword [ebx + 8]
movss xmm2, dword [0x101b6314]
mov al, byte [0x101bf7ad]
test al, al
je 0x1001dc7e
xor eax, eax
mov dword [esi + 0x44], eax
mov ecx, dword [0x101f0f60]
sub ecx, dword [0x101f0f5c]
mov eax, 0x66666667
imul ecx
sar edx, 4
mov eax, edx
shr eax, 0x1f
add eax, edx
je 0x1001e1ef
mov eax, dword [0x101f0f5c]
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.100035f0
comiss xmm2, xmm0
ja 0x1001dc24
cmp byte [0x101bc37c], 0
jne 0x1001dc2b
mov byte [0x101bf7ad], 0
lea eax, [ebp - 0x44]
push eax
lea ecx, [ebp - 0x34]
call fcn.100aa550
movss xmm1, dword [0x101b63d0]
divss xmm1, dword [0x101bc364]
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 [0x101bf77c]
mov eax, dword [ecx]
mov eax, dword [eax + 0x4c]
push edi
call eax
mov al, byte [0x101bf7ad]
cmp byte [0x101bf7ac], 0
je 0x1001dddf
test al, al
jne 0x1001dddf
cmp byte [0x101bf7ae], al
jne 0x1001dddf
mov ecx, dword [0x101f0f5c]
mov edx, dword [0x101f0f60]
cmp ecx, edx
je 0x1001dddf
sub edx, ecx
mov eax, 0x66666667
imul edx
sar edx, 4
mov eax, edx
shr eax, 0x1f
add eax, edx
je 0x1001e1ef
movss xmm1, dword [0x101be78c]
subss xmm1, dword [ecx + 0x1c]
movss xmm2, dword [0x101be790]
subss xmm2, dword [ecx + 0x20]
movss xmm0, dword [0x101be794]
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 [0x101b6314]
comiss xmm2, dword [ebp - 0x48]
jbe 0x1001dddf
mov edi, dword [0x101f0f5c]
mov ecx, dword [0x101f0f60]
sub ecx, edi
mov eax, 0x66666667
imul ecx
sar edx, 4
mov eax, edx
shr eax, 0x1f
add eax, edx
je 0x1001e1ef
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 0x1001dd98
cmp byte [0x101bc37c], 0
jne 0x1001dddf
mov byte [0x101bc89c], 1
mov ecx, dword [0x101bc8a4]
cmp ecx, 0x101f0f5c
je 0x1001ddd3
mov esi, dword [0x101f0f5c]
mov edx, dword [0x101f0f60]
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.10021d10
mov byte [0x101bf7ac], 0
jmp 0x1001e1d4
mov eax, dword [0x101f5a10]
mov ecx, dword [0x101bc378]
cmp ecx, 3
ja case.0x1001ddef.0
jmp dword [ecx*4 + 0x1001e224]
push eax
call dword [sym.imp.USER32.dll_GetKeyState]
cwde
shr eax, 0x10
test eax, eax
setne al
jmp 0x1001de27
push eax
call dword [sym.imp.USER32.dll_GetKeyState]
test ax, ax
setne al
jmp 0x1001de27
push eax
call dword [sym.imp.USER32.dll_GetKeyState]
cwde
shr eax, 0x10
test eax, eax
sete al
test al, al
je 0x1001dea9
cmp byte [0x101bc89c], 0
je 0x1001dea9
cmp byte [0x101f0f58], 0
jne 0x1001dea9
mov byte [0x101bf7ae], 0
mov byte [0x101bf7ad], 0
mov eax, dword [0x101bc8a4]
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 [0x101bc8a0]
cmp ecx, edx
jbe 0x1001e1ef
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 [0x101bc89c], 0
mov dword [0x101bc8a0], 0
cmp byte [ebp - 0x19], 0
je 0x1001e00d
mov eax, dword [0x101f5894]
mov edi, dword [eax + 0x1c]
dec edi
mov ecx, dword [0x101bf740]
mov eax, dword fs:[0x2c]
mov ecx, dword [eax + ecx*4]
mov eax, dword [0x101fae18]
cmp eax, dword [ecx + 4]
jle 0x1001df0f
push 0x101fae18
call fcn.1010e5e4
add esp, 4
cmp dword [0x101fae18], 0xffffffff
jne 0x1001df0f
mov edx, str.55_8B_EC_8B_4D___56_E8_________8B_75
mov ecx, str.client.dll
call fcn.10006670
mov dword [0x101fae1c], eax
push 0x101fae18
call fcn.1010e593
add esp, 4
push edi
push 0
call dword [0x101fae1c]
mov edi, dword [0x101f565c]
mov eax, dword [0x101f55f0]
test eax, eax
jne 0x1001df58
mov edx, 0xe80c2f78
mov ecx, 0x1014a929
call fcn.10003700
mov esi, eax
mov edx, 0xc10bf213
mov ecx, 0x1014a935
call fcn.10003700
mov edx, esi
mov ecx, eax
call fcn.100aa660
mov dword [0x101f55f0], 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 [0x101f0f60]
cmp eax, dword [0x101f0f64]
je 0x1001dffe
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 [0x101f0f60], 0x28
jmp 0x1001e00d
lea ecx, [ebp - 0x70]
push ecx
push eax
mov ecx, 0x101f0f5c
call fcn.100229b0
cmp byte [ebp - 0x1a], 0
je 0x1001e14f
mov ecx, dword [0x101bc8a0]
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, 0x101f0f5c
call fcn.10020d90
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 [0x101bc37c], 0
je 0x1001e0b1
mov ecx, dword [0x101bf77c]
mov eax, dword [ecx]
mov eax, dword [eax + 0x4c]
push edi
call eax
jmp 0x1001e0d8
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.10013360
mov edi, dword [ebp - 0x28]
inc edi
mov ecx, dword [0x101f0f60]
sub ecx, dword [0x101f0f5c]
mov eax, 0x66666667
imul ecx
sar edx, 4
mov eax, edx
shr eax, 0x1f
add eax, edx
cmp edi, eax
jne 0x1001e118
mov byte [0x101bc89c], 0
mov dword [0x101bc8a0], 0
wait
mov dword [ebp - 4], 0xffffffff
jmp 0x1001e14f
mov dword [0x101bc8a0], edi
wait
mov dword [ebp - 4], 0xffffffff
jmp 0x1001e14f
mov esi, dword [ebx + 8]
mov eax, dword [0x101f5a0c]
mov ecx, dword [0x101bc380]
cmp ecx, 3
ja case.0x1001e15f.0
jmp dword [ecx*4 + 0x1001e234]
push eax
call dword [sym.imp.USER32.dll_GetKeyState]
cwde
shr eax, 0x10
test eax, eax
setne al
jmp 0x1001e197
push eax
call dword [sym.imp.USER32.dll_GetKeyState]
test ax, ax
setne al
jmp 0x1001e197
push eax
call dword [sym.imp.USER32.dll_GetKeyState]
cwde
shr eax, 0x10
test eax, eax
sete al
test al, al
je 0x1001e1c8
cmp byte [0x101bc0b4], 0
jne 0x1001e1c8
cmp byte [0x101f0f58], 0
jne 0x1001e1c8
cmp byte [0x101bc89c], 0
jne 0x1001e1c8
mov eax, dword [0x101f0f5c]
cmp eax, dword [0x101f0f60]
je 0x1001e1c8
mov dword [0x101f0f60], eax
lea eax, [ebp - 0x44]
push eax
lea ecx, [esi + 0xc]
call fcn.100aa550
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.10019b20
call fcn.10019b20
adc esi, 0xd6441001
add dword [eax], edx
pop eax
salc
add dword [eax], edx
imul edx, esi, 0xd6e91001
add dword [eax], edx
rcl dh, 1
adc dh, cl
salc
add dword [eax], edx
invalid