Function at 0x445910
Capabilities:
Log keystrokes via polling

Disassembly:
push edi
push esi
push ebx
sub esp, 0x10
mov ebx, dword [esp + 0x20]
call fcn.005231a0
mov esi, ebx
mov eax, dword [0x693b44]
and esi, 1
jne 0x445a20
cmp eax, 1
je 0x445cd0
lea edx, [eax - 2]
cmp edx, 2
ja 0x445d50
lea eax, [ebx - 0x4000]
cmp eax, 0x3fff
jbe 0x445e58
mov dword [esp], 1
call fcn.00416240
sub esp, 4
mov eax, dword [0x693e64]
add eax, 1
mov dword [0x693e64], eax
mov edx, dword [0x6940c8]
mov esi, dword [edx + eax*4]
add esi, 1
mov dword [esp], esi
call fcn.00416240
sub esp, 4
add esi, dword [0x693e64]
mov dword [0x693e64], esi
mov eax, dword [0x6940c8]
mov esi, dword [eax + esi*4]
add esi, 1
mov dword [esp], esi
call fcn.00416240
sub esp, 4
add esi, dword [0x693e64]
mov dword [0x693e64], esi
mov eax, dword [0x6940c8]
mov esi, dword [eax + esi*4]
add esi, 1
mov dword [esp], esi
call fcn.00416240
sub esp, 4
add dword [0x693e64], esi
mov eax, dword [0x693bac]
test eax, eax
je 0x445dd8
mov edx, dword [0x693d18]
mov eax, dword [0x694000]
mov esi, 0xbf
mov ecx, dword [0x694114]
cmp dword [ecx + edx*4], eax
jle 0x445a0d
imul edx, dword [0x694120]
mov ecx, dword [0x69411c]
add ecx, eax
movzx esi, byte [ecx + edx]
add eax, 1
mov dword [0x694000], eax
mov eax, esi
add esp, 0x10
pop ebx
pop esi
pop edi
ret 4
cmp eax, 4
jle 0x445ab0
cmp eax, 5
je 0x445c00
cmp eax, 6
jne 0x445ad3
cmp ebx, 0x3fff
jle 0x445a49
cmp ebx, 0x7fff
mov dword [esp], 1
call fcn.00416240
sub esp, 4
add dword [0x693e64], 1
mov dword [esp], 1
call fcn.00416240
sub esp, 4
add dword [0x693e64], 1
mov dword [esp], 1
call fcn.00416240
sub esp, 4
add dword [0x693e64], 1
mov dword [esp], 1
call fcn.00416240
sub esp, 4
add dword [0x693e64], 1
mov edx, dword [0x693bac]
test edx, edx
je 0x445ae1
jmp 0x4459df
lea eax, [ebx - 0x4000]
cmp eax, 0x3fff
jbe 0x445b18
mov dword [esp], 4
call fcn.00416240
sub esp, 4
add dword [0x693e64], 4
mov edi, dword [0x693bac]
test edi, edi
jne 0x4459df
mov eax, ebx
and eax, 0xc002
cmp eax, 0xc000
jne 0x445bb0
mov edx, dword [0x693e54]
test edx, edx
je 0x445bb0
mov edx, dword [0x693f08]
mov eax, dword [0x6940fc]
mov esi, dword [eax + edx*4]
jmp 0x445a15
mov edx, dword [0x693e64]
mov eax, dword [0x6940c8]
mov edi, dword [eax + edx*4]
add edi, 1
mov dword [esp], edi
call fcn.00416240
sub esp, 4
add edi, dword [0x693e64]
mov dword [0x693e64], edi
mov eax, dword [0x6940c8]
mov edi, dword [eax + edi*4]
add edi, 1
mov dword [esp], edi
call fcn.00416240
sub esp, 4
add edi, dword [0x693e64]
mov dword [0x693e64], edi
mov eax, dword [0x6940c8]
mov edi, dword [eax + edi*4]
add edi, 1
mov dword [esp], edi
call fcn.00416240
sub esp, 4
add edi, dword [0x693e64]
mov dword [0x693e64], edi
mov eax, dword [0x6940c8]
mov edi, dword [eax + edi*4]
add edi, 1
mov dword [esp], edi
call fcn.00416240
sub esp, 4
add dword [0x693e64], edi
mov eax, dword [0x693bac]
test eax, eax
jne 0x4459df
lea esi, [esi]
movzx eax, bl
cmp bl, 0xbf
jne 0x446070
mov edi, dword [0x693ea0]
test edi, edi
je 0x44698f
cmp dword [0x693b44], 4
jle 0x44698f
mov dword [0x693c48], 2
mov dword [0x693e40], 1
mov eax, dword [0x693e84]
mov byte [0x693c74], al
xor esi, esi
jmp 0x445a15
cmp ebx, 0x3fff
jle 0x445abd
cmp ebx, 0x7fff
jle 0x445c2d
cmp ebx, 0xbfff
jle 0x445abd
test byte [0x693f68], 1
je 0x445abd
mov edx, dword [0x693e64]
mov eax, dword [0x6940c8]
mov edi, dword [eax + edx*4]
add edi, 1
mov dword [esp], edi
call fcn.00416240
sub esp, 4
add edi, dword [0x693e64]
mov dword [0x693e64], edi
mov eax, dword [0x6940c8]
mov edi, dword [eax + edi*4]
add edi, 1
mov dword [esp], edi
call fcn.00416240
sub esp, 4
add edi, dword [0x693e64]
mov dword [0x693e64], edi
mov eax, dword [0x6940c8]
mov edi, dword [eax + edi*4]
add edi, 1
mov dword [esp], edi
call fcn.00416240
sub esp, 4
add edi, dword [0x693e64]
mov dword [0x693e64], edi
mov eax, dword [0x6940c8]
mov edi, dword [eax + edi*4]
add edi, 1
mov dword [esp], edi
call fcn.00416240
sub esp, 4
add dword [0x693e64], edi
mov ecx, dword [0x693bac]
test ecx, ecx
je 0x445ae1
jmp 0x4459df
lea eax, [ebx - 0x4000]
cmp eax, 0x3fff
jbe 0x445d10
mov dword [esp], 1
call fcn.00416240
sub esp, 4
mov eax, dword [0x693e64]
add eax, 1
mov dword [0x693e64], eax
mov edx, dword [0x6940c8]
mov esi, dword [edx + eax*4]
add esi, 3
jmp 0x4459c1
mov edx, dword [0x693e64]
mov eax, dword [0x6940c8]
mov esi, dword [eax + edx*4]
add esi, 1
mov dword [esp], esi
call fcn.00416240
sub esp, 4
add esi, dword [0x693e64]
mov dword [0x693e64], esi
mov eax, dword [0x6940c8]
mov esi, dword [eax + esi*4]
add esi, 3
jmp 0x445ecf
cmp eax, 5
je 0x445ef8
cmp eax, 6
jne 0x445f90
cmp ebx, 0x3fff
jle 0x445d70
cmp ebx, 0x7fff
mov dword [esp], 1
call fcn.00416240
sub esp, 4
add dword [0x693e64], 1
mov dword [esp], 1
call fcn.00416240
sub esp, 4
add dword [0x693e64], 1
mov dword [esp], 1
call fcn.00416240
sub esp, 4
add dword [0x693e64], 1
mov dword [esp], 1
call fcn.00416240
sub esp, 4
add dword [0x693e64], 1
mov eax, dword [0x693bac]
test eax, eax
jne 0x4459df
lea esi, [esi]
mov eax, ebx
and eax, 0xc002
cmp eax, 0xc000
je 0x445fb0
mov edx, dword [0x693b44]
add dword [0x693cac], 1
movzx eax, byte [0x693b70]
mov ecx, edx
sar ecx, 1
cmp ecx, 1
je 0x445fc8
cmp edx, 1
je 0x446030
or eax, 0xffffffbf
movzx esi, al
cmp edx, 4
jne 0x445e40
mov eax, dword [0x693e64]
mov dword [esp + 4], eax
mov dword [esp], ebx
call fcn.004012a0
sub esp, 8
mov edx, eax
mov eax, esi
and eax, 0xffffffdf
and edx, 0x20
cmove esi, eax
mov edx, dword [0x694148]
not ebx
mov eax, 8
jmp 0x44605c
mov edx, dword [0x693e64]
mov eax, dword [0x6940c8]
mov esi, dword [eax + edx*4]
add esi, 1
mov dword [esp], esi
call fcn.00416240
sub esp, 4
add esi, dword [0x693e64]
mov dword [0x693e64], esi
mov eax, dword [0x6940c8]
mov esi, dword [eax + esi*4]
add esi, 1
mov dword [esp], esi
call fcn.00416240
sub esp, 4
add esi, dword [0x693e64]
mov dword [0x693e64], esi
mov eax, dword [0x6940c8]
mov esi, dword [eax + esi*4]
add esi, 1
mov dword [esp], esi
call fcn.00416240
sub esp, 4
add esi, dword [0x693e64]
mov dword [0x693e64], esi
mov eax, dword [0x6940c8]
mov esi, dword [eax + esi*4]
add esi, 1
mov dword [esp], esi
call fcn.00416240
sub esp, 4
add dword [0x693e64], esi
mov eax, dword [0x693bac]
test eax, eax
jne 0x4459df
jmp 0x445dea
cmp ebx, 0x3fff
jle 0x445cdd
cmp ebx, 0x7fff
jle 0x445f25
cmp ebx, 0xbfff
jle 0x445cdd
test byte [0x693f68], 1
je 0x445cdd
mov edx, dword [0x693e64]
mov eax, dword [0x6940c8]
mov esi, dword [eax + edx*4]
add esi, 1
mov dword [esp], esi
call fcn.00416240
sub esp, 4
add esi, dword [0x693e64]
mov dword [0x693e64], esi
mov eax, dword [0x6940c8]
mov esi, dword [eax + esi*4]
mov dword [esp], esi
call fcn.00416240
sub esp, 4
add dword [0x693e64], esi
mov dword [esp], 3
call fcn.00416240
sub esp, 4
add dword [0x693e64], 3
mov eax, dword [0x693bac]
test eax, eax
jne 0x4459df
jmp 0x445dd8
mov eax, dword [0x693bac]
test eax, eax
jne 0x4459df
mov eax, ebx
and eax, 0xc002
cmp eax, 0xc000
jne 0x446976
nop
mov eax, dword [0x693e54]
test eax, eax
je 0x445dea
jmp 0x445b01
xor eax, 0xffffffbf
movzx eax, al
add eax, 0x7f
mov esi, dword [0x693c58]
shl esi, 7
or esi, eax
mov eax, dword [0x693e64]
mov dword [esp + 4], eax
mov dword [esp], ebx
call fcn.004012a0
sub esp, 8
mov edx, eax
mov eax, esi
and eax, 0xffffffdf
and edx, 0x20
cmove esi, eax
mov edx, dword [0x694148]
not ebx
mov eax, 8
jmp 0x44601c
add eax, 1
cmp eax, 0x10
je 0x445a15
bt ebx, eax
jae 0x446010
and esi, dword [edx + eax*4 - 0x20]
jmp 0x446010
mov edi, dword [0x693e9c]
lea edx, [edi + 0x10]
and edx, dword [0x693b14]
je 0x446984
xor eax, 0x40
movzx esi, al
jmp 0x445e40
add eax, 1
cmp eax, 0x10
je 0x445a15
bt ebx, eax
jae 0x446050
and esi, dword [edx + eax*4 - 0x20]
jmp 0x446050
cmp eax, 0x3f
jne 0x4460d8
mov ecx, dword [0x693ea0]
test ecx, ecx
je 0x446180
cmp dword [0x693b44], 4
jle 0x446180
mov eax, dword [0x694034]
mov dword [0x693c48], eax
mov dword [0x693e40], 0
mov eax, dword [0x693cc4]
mov edx, dword [eax]
mov edx, dword [edx + 0x30]
mov dword [esp + 0xc], 1
mov dword [esp + 8], 0
mov dword [esp + 4], 0
mov dword [esp], eax
call edx
sub esp, 0x10
jmp 0x445bf5
cmp eax, 0x9f
jne 0x446260
mov edx, dword [0x693fe8]
test edx, edx
je 0x446180
mov dword [0x693c48], 2
mov dword [0x693e40], 1
mov eax, dword [0x693fa8]
test eax, eax
jne 0x4462df
mov edi, dword [0x693ff8]
test edi, edi
jne 0x446319
mov esi, dword [0x693d54]
test esi, esi
jne 0x446353
mov ebx, dword [0x693b28]
test ebx, ebx
je 0x445bf5
mov ecx, dword [0x6940f0]
lea eax, [ecx + ecx*2]
add eax, dword [0x6940ec]
mov dword [esp + 8], 0xff
mov edx, eax
sub edx, ecx
add edx, 0x3c00
mov dword [esp + 4], edx
add eax, 0x3c00
mov dword [esp], eax
call fcn.00521fd0
sub esp, 0xc
jmp 0x445bf5
mov edx, ebx
not edx
and edx, 0xe0
je 0x4461bd
mov ecx, dword [0x693ccc]
test ecx, ecx
jne 0x44647c
mov edx, dword [0x693ed4]
test edx, edx
jne 0x4469b6
cmp eax, 0xdf
jne 0x4461bd
mov edx, dword [0x693c7c]
test edx, edx
jne 0x446690
test byte [0x693e10], 0x80
jne 0x4461fa
cmp dword [0x693fa8], 1
je 0x4467d0
cmp dword [0x693ff8], 1
je 0x4467d0
cmp dword [0x693d54], 1
je 0x4467d0
cmp dword [0x693b28], 1
je 0x4467d0
cmp dword [0x693ebc], 1
jne 0x4468f0
mov eax, ebx
and eax, 3
cmp eax, 3
jne 0x4468f0
test bl, 0x80
jne 0x4467fb
and ebx, 0x60
je 0x446937
cmp ebx, 0x20
je 0x44694c
cmp ebx, 0x40
je 0x446961
cmp ebx, 0x60
jne 0x4466d3
mov eax, dword [0x693fc0]
mov dword [esp + 0x20], eax
add esp, 0x10
pop ebx
pop esi
pop edi
jmp dword [0x693c28]
cmp eax, 0x1f
jne 0x44638d
mov ecx, dword [0x693e40]
test ecx, ecx
je 0x446180
mov edx, dword [0x693fe8]
test edx, edx
je 0x446180
mov dword [0x693c48], 0
mov dword [0x693e40], 0
mov eax, dword [0x693fa8]
test eax, eax
jne 0x4463a0
mov edi, dword [0x693ff8]
test edi, edi
jne 0x4463d7
mov esi, dword [0x693d54]
test esi, esi
jne 0x44640e
mov ebx, dword [0x693b28]
test ebx, ebx
jne 0x446445
mov eax, dword [0x693e84]
mov byte [0x693c74], al
jmp 0x445bf5
mov ecx, dword [0x6940f0]
lea eax, [ecx + ecx*2]
add eax, dword [0x6940ec]
mov dword [esp + 8], 0xff
mov edx, eax
sub edx, ecx
add edx, 0x3c00
mov dword [esp + 4], edx
add eax, 0x3c00
mov dword [esp], eax
call fcn.00521fd0
sub esp, 0xc
jmp 0x446112
mov ecx, dword [0x6940f0]
lea eax, [ecx + ecx*2]
add eax, dword [0x6940ec]
mov dword [esp + 8], 0xff
mov edx, eax
sub edx, ecx
add edx, 0x3c00
mov dword [esp + 4], edx
add eax, 0x3c00
mov dword [esp], eax
call fcn.00521fd0
sub esp, 0xc
jmp 0x446120
mov ecx, dword [0x6940f0]
lea eax, [ecx + ecx*2]
add eax, dword [0x6940ec]
mov dword [esp + 8], 0xff
mov edx, eax
sub edx, ecx
add edx, 0x3c00
mov dword [esp + 4], edx
add eax, 0x3c00
mov dword [esp], eax
call fcn.00521fd0
sub esp, 0xc
jmp 0x44612e
mov edx, ebx
not edx
and dl, 0xe0
je 0x4461a8
jmp 0x44618c
mov eax, dword [0x6940ec]
mov dword [esp + 8], 0xff
lea edx, [eax + 0x3c00]
mov dword [esp + 4], edx
mov edx, dword [0x6940f0]
lea edx, [edx + edx*2]
lea eax, [eax + edx + 0x3c00]
mov dword [esp], eax
call fcn.00521fd0
sub esp, 0xc
jmp 0x4462a6
mov eax, dword [0x6940ec]
mov dword [esp + 8], 0xff
lea edx, [eax + 0x3c00]
mov dword [esp + 4], edx
mov edx, dword [0x6940f0]
lea edx, [edx + edx*2]
lea eax, [eax + edx + 0x3c00]
mov dword [esp], eax
call fcn.00521fd0
sub esp, 0xc
jmp 0x4462b4
mov eax, dword [0x6940ec]
mov dword [esp + 8], 0xff
lea edx, [eax + 0x3c00]
mov dword [esp + 4], edx
mov edx, dword [0x6940f0]
lea edx, [edx + edx*2]
lea eax, [eax + edx + 0x3c00]
mov dword [esp], eax
call fcn.00521fd0
sub esp, 0xc
jmp 0x4462c2
mov eax, dword [0x6940ec]
mov dword [esp + 8], 0xff
lea edx, [eax + 0x3c00]
mov dword [esp + 4], edx
mov edx, dword [0x6940f0]
lea edx, [edx + edx*2]
lea eax, [eax + edx + 0x3c00]
mov dword [esp], eax
call fcn.00521fd0
sub esp, 0xc
jmp 0x4462d0
mov dword [esp], 0
call fcn.005035ef
sub esp, 4
mov dword [esp + 4], 1
mov dword [esp], 0
call fcn.00503653
sub esp, 8
test eax, eax
setne al
movzx eax, al
shl eax, 4
mov edi, eax
mov dword [esp], 0
call fcn.0050379f
sub esp, 4
mov ebx, eax
mov dword [esp + 8], 1
mov dword [esp + 4], 0
mov dword [esp], 0
call fcn.005037af
sub esp, 0xc
add ebx, eax
cmp ebx, 0xfffffff7
jne 0x4464f2
mov esi, 2
add esi, edi
jmp 0x445a15
mov dword [esp], 0
call fcn.0050379f
sub esp, 4
mov ebx, eax
mov dword [esp + 8], 1
mov dword [esp + 4], 0
mov dword [esp], 0
call fcn.005037af
sub esp, 0xc
add ebx, eax
cmp ebx, 0xfffffff9
je 0x4464eb
mov dword [esp], 0
call fcn.0050379f
sub esp, 4
mov ebx, eax
mov dword [esp + 8], 1
mov dword [esp + 4], 0
mov dword [esp], 0
call fcn.005037af
sub esp, 0xc
add ebx, eax
mov esi, 8
cmp ebx, 0xfffffc18
je 0x4464eb
xor ebx, ebx
mov dword [esp], ebx
call fcn.0050379f
push esi
mov ebx, eax
mov dword [esp + 8], 1
xor eax, eax
mov dword [esp + 4], eax
mov dword [esp], eax
call fcn.005037af
sub esp, 0xc
add ebx, eax
mov esi, 4
cmp ebx, 0x3e8
je 0x4464eb
xor eax, eax
mov dword [esp], eax
call fcn.0050379f
push edx
mov ebx, eax
mov dword [esp + 8], 1
xor ecx, ecx
mov dword [esp + 4], ecx
mov dword [esp], ecx
call fcn.005037af
sub esp, 0xc
add ebx, eax
mov esi, 0xa
cmp ebx, 0xfffffc17
je 0x4464eb
xor ebx, ebx
mov dword [esp], ebx
call fcn.0050379f
push esi
mov ebx, eax
mov dword [esp + 8], 1
xor eax, eax
mov dword [esp + 4], eax
mov dword [esp], eax
call fcn.005037af
sub esp, 0xc
add ebx, eax
mov esi, 6
cmp ebx, 0x3e7
je 0x4464eb
xor eax, eax
mov dword [esp], eax
call fcn.0050379f
push edx
mov ebx, eax
mov dword [esp + 8], 1
xor ecx, ecx
mov dword [esp + 4], ecx
mov dword [esp], ecx
call fcn.005037af
sub esp, 0xc
add ebx, eax
mov esi, 9
cmp ebx, 0xfffffc19
je 0x4464eb
xor ecx, ecx
mov dword [esp], ecx
call fcn.0050379f
push ebx
mov ebx, eax
mov dword [esp + 8], 1
xor esi, esi
mov dword [esp + 4], esi
mov dword [esp], esi
call fcn.005037af
sub esp, 0xc
add ebx, eax
xor eax, eax
cmp ebx, 0x3e9
sete al
mov esi, eax
lea esi, [esi + esi*4]
jmp 0x4464eb
mov dword [esp + 8], 0xb
mov dword [esp + 0xc], 0
mov dword [esp + 4], 7
mov dword [esp], 0
call fcn.0050a7c5
sub esp, 0x10
cmp ebx, 0xfbdf
je 0x4466dd
cmp ebx, 0xffdf
je 0x446734
cmp ebx, 0xfadf
je 0x44678e
mov esi, 0xbf
jmp 0x445a15
mov eax, dword [0x694094]
lea ebx, [eax + 1]
call fcn.00512835
mov ecx, eax
sub eax, dword [0x693f54]
cdq
idiv ebx
add eax, dword [0x693c24]
mov esi, eax
cmp eax, 0xff
jle 0x446714
sub esi, 0xff
cmp esi, 0xff
jg 0x446704
jmp 0x446723
test eax, eax
jns 0x446723
not eax
xor al, al
lea esi, [esi + eax + 0x100]
mov dword [0x693c24], esi
mov dword [0x693f54], ecx
jmp 0x445a15
mov eax, dword [0x694094]
lea ebx, [eax + 1]
call fcn.00512849
mov ecx, eax
sub eax, dword [0x693f50]
cdq
idiv ebx
mov esi, dword [0x693c20]
sub esi, eax
cmp esi, 0xff
jle 0x44676c
sub esi, 0xff
cmp esi, 0xff
jg 0x44675c
jmp 0x44677d
test esi, esi
jns 0x44677d
mov eax, esi
not eax
xor al, al
lea esi, [esi + eax + 0x100]
mov dword [0x693c20], esi
mov dword [0x693f50], ecx
jmp 0x445a15
mov dword [esp], 1
call sub.USER32.dll_GetAsyncKeyState
sub esp, 4
mov esi, 0xfd
test ah, 0x80
jne 0x445a15
mov dword [esp], 2
call sub.USER32.dll_GetAsyncKeyState
push edi
mov esi, 0xfe
test ah, 0x80
je 0x4466d3
jmp 0x445a15
cmp eax, 0x1f
je 0x446937
cmp eax, 0x3f
je 0x44694c
cmp eax, 0x5f
je 0x446961
cmp eax, 0x7f
je 0x446810
cmp eax, 0xff
jne 0x4466d3
mov eax, dword [0x693fc0]
mov dword [esp + 0x20], eax
add esp, 0x10
pop ebx
pop esi
pop edi
jmp dword [0x693edc]
cmp byte [0x693cbc], 1
jne 0x446242
cmp dword [0x693b48], 0
jne 0x446242
cmp dword [0x693cfc], 0
je 0x446865
mov eax, dword [0x693fc0]
mov dword [esp], eax
call dword [0x693c28]
push ecx
mov eax, dword [0x693cfc]
add eax, dword [0x693d34]
mov dword [esp], eax
call fcn.005221f0
push ebx
movzx esi, al
add dword [0x693cfc], 1
jmp 0x445a15
mov eax, dword [0x693e80]
mov edx, eax
and edx, 1
mov dword [0x6940a8], edx
sar eax, 1
mov dword [0x693f34], eax
xor ecx, ecx
mov dword [0x693f64], ecx
mov eax, dword [0x693f84]
mov dword [0x694070], eax
xor ebx, ebx
mov dword [esp + 4], ebx
mov dword [esp], 0x41e380
call fcn.004e3da2
push esi
push esi
cmp dword [0x693f64], 0
jne 0x4468ba
call fcn.0050e67e
mov esi, dword [0x693f64]
test esi, esi
je 0x4468ab
mov eax, dword [0x693fc0]
mov dword [esp], eax
call dword [0x693c28]
push edi
mov eax, dword [0x693d34]
mov dword [esp], eax
call fcn.005221f0
push edx
movzx esi, al
mov dword [0x693cfc], 1
jmp 0x445a15
mov eax, dword [0x693e64]
mov dword [esp + 4], eax
mov dword [esp], ebx
call fcn.004012a0
sub esp, 8
mov esi, eax
and ebx, 0x8002
jne 0x445a15
cmp dword [0x693b44], 5
jne 0x445a15
mov dword [esp + 4], eax
mov dword [esp], 0x7ffd
call fcn.00443bf0
sub esp, 8
jmp 0x445a15
mov eax, dword [0x693fc0]
mov dword [esp + 0x20], eax
add esp, 0x10
pop ebx
pop esi
pop edi
jmp dword [0x694084]
mov eax, dword [0x693fc0]
mov dword [esp + 0x20], eax
add esp, 0x10
pop ebx
pop esi
pop edi
jmp dword [0x693f9c]
mov eax, dword [0x693fc0]
mov dword [esp + 0x20], eax
add esp, 0x10
pop ebx
pop esi
pop edi
jmp dword [0x694078]
add dword [0x693cac], 1
movzx eax, byte [0x693b70]
or eax, 0xffffffbf
movzx esi, al
jmp 0x445e40
mov edx, ebx
not edx
and dl, 0xe0
je 0x4461bd
cmp dword [0x693ccc], 0
jne 0x44647c
cmp dword [0x693ed4], 0
je 0x4461bd
mov eax, dword [0x694148]
mov esi, dword [eax + 0x20]
xor esi, 0xbf
jmp 0x445a15