Function at 0x10056d70
Capabilities:
Contain obfuscated stackstrings
Read file on windows
Resolve function by parsing pe exports

Disassembly:
push 0xffffffffffffffff
push 0x10094f17
mov eax, dword fs:[0]
push eax
sub esp, 0xa44
mov eax, dword [0x100bbef4]
xor eax, esp
mov dword [esp + 0xa40], eax
push ebx
push ebp
push esi
push edi
mov eax, dword [0x100bbef4]
xor eax, esp
push eax
lea eax, [esp + 0xa58]
mov dword fs:[0], eax
mov edi, dword [esp + 0xa68]
add edi, 0xfffffff0
xor ebp, ebp
push edi
mov dword [esp + 0xa64], ebp
mov dword [esp + 0x38], edi
call fcn.100012d0
lea esi, [eax + 0x10]
mov dword [esp + 0x28], esi
push 0x5c
push esi
mov byte [esp + 0xa6c], 1
call fcn.10075d56
add esp, 0xc
cmp eax, ebp
je 0x10056dec
sub eax, esi
sar eax, 1
jns 0x10056e3e
lea eax, [esi - 0x10]
mov byte [esp + 0xa60], 0
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x10056e10
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov dword [esp + 0xa60], 0xffffffff
lea ecx, [edi + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x10056e34
mov ecx, dword [edi]
mov eax, dword [ecx]
mov edx, dword [eax + 4]
push edi
call edx
mov eax, 1
jmp 0x100596dd
push eax
lea eax, [esp + 0x30]
push eax
lea ecx, [esp + 0x2c]
call fcn.100029b0
push eax
lea ecx, [esp + 0x28]
mov byte [esp + 0xa64], 2
call fcn.100085c0
mov eax, dword [esp + 0x2c]
add eax, 0xfffffff0
mov byte [esp + 0xa60], 1
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x10056e87
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
push 0x100a2e00
lea ecx, [esp + 0x28]
push ecx
lea edx, [esp + 0x34]
push edx
call fcn.10032720
add esp, 0xc
push eax
lea ecx, [esp + 0x28]
mov byte [esp + 0xa64], 3
call fcn.100085c0
mov eax, dword [esp + 0x2c]
add eax, 0xfffffff0
mov byte [esp + 0xa60], 1
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x10056ed8
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov dword [esp + 0x18], ebp
mov dword [esp + 0x1c], ebp
mov dword [esp + 0x20], ebp
mov ebx, dword [esp + 0x24]
push 0x100a1f34
push ebx
mov byte [esp + 0xa68], 4
call fcn.1007568e
mov esi, eax
add esp, 8
cmp esi, ebp
jne 0x10057067
push ebp
mov eax, 0x4c
push 0x100990d0
lea ecx, [esp + 0xa30]
mov word [esp + 0xa38], ax
mov word [esp + 0xa3a], ax
mov eax, 0x74
push ecx
push ebp
mov word [esp + 0xa38], 0x6307
mov word [esp + 0xa3a], 0x5b9a
mov word [esp + 0xa3c], 0x7684
mov word [esp + 0xa3e], 0x44
mov word [esp + 0xa44], 0x6240
mov word [esp + 0xa46], 0x5728
mov word [esp + 0xa48], 0x76ee
mov word [esp + 0xa4a], 0x5f55
mov word [esp + 0xa4c], 0x6ca1
mov word [esp + 0xa4e], 0x6709
mov word [esp + 0xa50], 0x53d1
mov word [esp + 0xa52], 0x73b0
mov word [esp + 0xa54], 0x8bfb
mov word [esp + 0xa56], 0x6211
mov word [esp + 0xa58], 0x2e
mov word [esp + 0xa5a], ax
mov word [esp + 0xa5c], 0x78
mov word [esp + 0xa5e], ax
mov word [esp + 0xa60], 0x21
mov word [esp + 0xa62], bp
call dword [sym.imp.USER32.dll_MessageBoxW]
mov eax, dword [esp + 0x18]
cmp eax, ebp
je 0x1005700a
push eax
call fcn.10060bb8
add esp, 4
lea eax, [ebx - 0x10]
mov dword [esp + 0x18], ebp
mov dword [esp + 0x1c], ebp
mov dword [esp + 0x20], ebp
mov byte [esp + 0xa60], 0
lea edx, [eax + 0xc]
or ecx, 0xffffffff
lock xadd dword [edx], ecx
dec ecx
test ecx, ecx
jg 0x1005703a
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov dword [esp + 0xa60], 0xffffffff
lea ecx, [edi + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x100596db
mov ecx, dword [edi]
mov eax, dword [ecx]
mov edx, dword [eax + 4]
push edi
call edx
jmp 0x100596db
push 2
push ebp
push esi
call fcn.10075543
push esi
call fcn.1007645c
push ebp
push ebp
push esi
mov edi, eax
call fcn.10075543
lea eax, [edi + 1]
push eax
call fcn.10074908
mov ebx, eax
add esp, 0x20
cmp ebx, ebp
mov dword [esp + 0x58], ebx
push esi
jne 0x10057115
call fcn.10075189
add esp, 4
mov eax, dword [esp + 0x18]
cmp eax, ebp
je 0x100570b0
push eax
call fcn.10060bb8
add esp, 4
mov dword [esp + 0x20], ebp
mov dword [esp + 0x1c], ebp
mov dword [esp + 0x18], ebp
mov eax, dword [esp + 0x24]
add eax, 0xfffffff0
or edx, 0xffffffff
lea ecx, [eax + 0xc]
mov byte [esp + 0xa60], 0
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x100570e4
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov eax, dword [esp + 0x34]
mov dword [esp + 0xa60], 0xffffffff
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x100596db
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
jmp 0x100596db
push edi
push 1
push ebx
call fcn.100754a1
push esi
call fcn.10075189
push 0x100a2d98
push ebx
mov byte [ebx + edi], 0
call fcn.10073720
add esp, 0x1c
mov esi, eax
call fcn.10066e2e
xor ecx, ecx
cmp eax, ebp
setne cl
cmp ecx, ebp
jne 0x10057152
push 0x80004005
call fcn.10001020
mov edx, dword [eax]
mov ecx, eax
mov eax, dword [edx + 0xc]
call eax
add eax, 0x10
mov dword [esp + 0x28], eax
mov byte [esp + 0xa60], 5
call fcn.10066e2e
xor ecx, ecx
cmp eax, ebp
setne cl
cmp ecx, ebp
jne 0x10057184
push 0x80004005
call fcn.10001020
mov edx, dword [eax]
mov ecx, eax
mov eax, dword [edx + 0xc]
call eax
add eax, 0x10
mov dword [esp + 0x30], eax
cmp esi, ebp
mov byte [esp + 0xa60], 6
je 0x100596a2
push 0x100a2de8
push ebx
call fcn.10073720
add esp, 8
test eax, eax
je 0x100571c0
mov dword [0x100c08f0], 1
push 0x40000
add esi, 0xd
call fcn.10074908
mov ebp, eax
add esp, 4
test ebp, ebp
mov dword [esp + 0x54], ebp
je 0x100596a2
push 0x20000
push ebp
push 0xffffffffffffffff
push esi
push 0
push 0
call dword [sym.imp.KERNEL32.dll_MultiByteToWideChar]
push ebp
lea ecx, [esp + 0x2c]
call fcn.10001590
push 0x100a2d78
push 0x100a2d90
lea ecx, [esp + 0x30]
call fcn.10043040
push 0x100a2d74
push 0x100a2d7c
lea ecx, [esp + 0x30]
call fcn.10043040
lea ecx, [esp + 0x60]
call fcn.1006a7fb
mov edx, dword [esp + 0x28]
lea ecx, [esp + 0x60]
push ecx
push 0x100a2d78
push edx
mov byte [esp + 0xa6c], 7
call fcn.1001cf50
mov esi, eax
add esp, 0xc
xor ebx, ebx
test esi, esi
mov dword [esp + 0x50], esi
jle 0x1005753f
test ebx, ebx
jl 0x100575ec
cmp ebx, dword [esp + 0x68]
jge 0x100575ec
mov eax, dword [esp + 0x64]
mov eax, dword [eax + ebx*4]
push 0x100a2de0
push eax
call fcn.100737a6
add esp, 8
test eax, eax
jne 0x10057534
lea ecx, [esp + 0x3c]
call fcn.1006a7fb
cmp ebx, dword [esp + 0x68]
mov byte [esp + 0xa60], 8
jge 0x100575ec
mov ecx, dword [esp + 0x64]
mov eax, dword [ecx + ebx*4]
lea edx, [esp + 0x3c]
push edx
push 0x100a2d74
push eax
call fcn.1001cf50
add esp, 0xc
cmp eax, 2
jne 0x1005751f
cmp dword [esp + 0x44], 0
jle 0x100575ec
mov eax, dword [esp + 0x40]
mov ecx, dword [eax]
cmp dword [ecx - 0xc], 0
mov esi, eax
jge 0x100572e4
or edi, 0xffffffff
jmp 0x10057305
push 0x100a2ddc
push ecx
call fcn.100737a6
add esp, 8
test eax, eax
jne 0x100572fb
or edi, 0xffffffff
jmp 0x10057301
sub eax, dword [esi]
sar eax, 1
mov edi, eax
mov eax, dword [esp + 0x40]
cmp dword [esp + 0x44], 0
jle 0x100575ec
mov esi, eax
mov eax, dword [eax]
cmp dword [eax - 0xc], 0
jge 0x1005731f
or esi, 0xffffffff
jmp 0x1005733c
push 0x100a2dd8
push eax
call fcn.100737a6
add esp, 8
test eax, eax
jne 0x10057336
or esi, 0xffffffff
jmp 0x1005733c
sub eax, dword [esi]
sar eax, 1
mov esi, eax
test edi, edi
jle 0x1005751f
test esi, esi
jle 0x1005751f
push 0x98c
lea eax, [esp + 0xa0]
push 0
push eax
call fcn.100736a0
add esp, 0xc
lea ecx, [esp + 0x38]
call fcn.10001350
cmp dword [esp + 0x44], 0
mov byte [esp + 0xa60], 9
jle 0x100575ec
push edi
lea ecx, [esp + 0x60]
push ecx
mov ecx, dword [esp + 0x48]
call fcn.100029b0
push eax
lea ecx, [esp + 0x3c]
mov byte [esp + 0xa64], 0xa
call fcn.100085c0
lea ecx, [esp + 0x5c]
mov byte [esp + 0xa60], 9
call fcn.10001380
mov eax, dword [esp + 0x38]
lea edx, [esp + 0x9c]
sub edx, eax
mov edi, edi
movzx ecx, word [eax]
mov word [edx + eax], cx
add eax, 2
test cx, cx
jne 0x100573c0
cmp dword [esp + 0x44], 1
jle 0x100575ec
mov edx, dword [esp + 0x40]
mov eax, dword [edx + 4]
push eax
call fcn.10073ecc
add esp, 4
cmp dword [esp + 0x44], 0
mov dword [esp + 0xa24], eax
jle 0x100575ec
mov ecx, dword [esp + 0x40]
sub esi, edi
sub esi, 1
push esi
add edi, 1
push edi
lea eax, [esp + 0x34]
push eax
call fcn.10037b60
lea ecx, [esp + 0x88]
mov byte [esp + 0xa60], 0xb
call fcn.1006a7fb
mov edx, dword [esp + 0x2c]
lea ecx, [esp + 0x88]
push ecx
push 0x100a2dd4
push edx
mov byte [esp + 0xa6c], 0xc
call fcn.1001cf50
lea edi, [eax - 1]
add esp, 0xc
xor esi, esi
test edi, edi
mov dword [esp + 0x19c], edi
jle 0x100574e8
lea ebp, [esp + 0x1a0]
lea ecx, [esp + 0x74]
call fcn.1006a7fb
push esi
lea ecx, [esp + 0x8c]
mov byte [esp + 0xa64], 0xd
call fcn.1000a7d0
mov eax, dword [eax]
lea ecx, [esp + 0x74]
push ecx
push 0x100a2dd0
push eax
call fcn.1001cf50
add esp, 0xc
cmp eax, 2
jne 0x100574c9
cmp dword [esp + 0x7c], 1
jle 0x100575ec
mov edx, dword [esp + 0x78]
mov eax, dword [edx + 4]
mov edx, ebp
sub edx, eax
movzx ecx, word [eax]
mov word [edx + eax], cx
add eax, 2
test cx, cx
jne 0x100574b3
mov edi, dword [esp + 0x19c]
lea ecx, [esp + 0x74]
mov byte [esp + 0xa60], 0xc
call fcn.1006a9cd
add esi, 1
add ebp, 0x40
cmp esi, edi
jl 0x10057465
mov ebp, dword [esp + 0x54]
lea eax, [esp + 0x9c]
push eax
lea ecx, [esp + 0x18]
call fcn.10056510
lea ecx, [esp + 0x88]
mov byte [esp + 0xa60], 0xb
call fcn.1006a9cd
lea ecx, [esp + 0x2c]
call fcn.10001380
lea ecx, [esp + 0x38]
call fcn.10001380
lea ecx, [esp + 0x3c]
mov byte [esp + 0xa60], 7
call fcn.1006a9cd
mov esi, dword [esp + 0x50]
add ebx, 1
cmp ebx, esi
jl 0x10057259
push ebp
call fcn.1007482b
add esp, 4
lea ecx, [esp + 0x60]
mov byte [esp + 0xa60], 6
call fcn.1006a9cd
mov ecx, dword [esp + 0x58]
push ecx
call fcn.1007482b
mov edi, dword [esp + 0x1c]
xor ebp, ebp
add esp, 4
cmp edi, ebp
je 0x1005758e
mov ecx, dword [esp + 0x1c]
mov edx, ecx
sub edx, edi
mov eax, 0x6b429e61
imul edx
sar edx, 0xa
mov eax, edx
shr eax, 0x1f
add eax, edx
cmp eax, 2
ja 0x100575f1
mov eax, dword [esp + 0x30]
add eax, 0xfffffff0
mov byte [esp + 0xa60], 5
lea edx, [eax + 0xc]
or ecx, 0xffffffff
lock xadd dword [edx], ecx
dec ecx
test ecx, ecx
jg 0x100575b6
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov eax, dword [esp + 0x28]
add eax, 0xfffffff0
mov byte [esp + 0xa60], 4
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x100575de
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
lea ecx, [esp + 0x14]
call fcn.10043d20
jmp 0x100570bc
jmp fcn.10060dc2
xor esi, esi
cmp edi, ebp
je 0x1005957e
sub ecx, edi
mov eax, 0x6b429e61
imul ecx
sar edx, 0xa
mov eax, edx
shr eax, 0x1f
add eax, edx
cmp esi, eax
jae 0x1005957e
mov ebx, esi
imul ebx, ebx, 0x98c
lea eax, [ebx + edi]
push str.CreateObj
push eax
call fcn.10075086
add esp, 8
test eax, eax
jne 0x10057649
push esi
lea ecx, [esp + 0x18]
call fcn.10040a00
mov ecx, dword [eax + 0x988]
mov dword [0x100c08fc], ecx
mov edi, dword [esp + 0x18]
cmp edi, ebp
je 0x1005766c
mov ecx, dword [esp + 0x1c]
sub ecx, edi
mov eax, 0x6b429e61
imul ecx
sar edx, 0xa
mov eax, edx
shr eax, 0x1f
add eax, edx
cmp esi, eax
jb 0x10057675
call fcn.10074477
mov edi, dword [esp + 0x18]
lea eax, [ebx + edi]
push 0x100a2da4
push eax
call fcn.10075086
add esp, 8
test eax, eax
jne 0x100576a0
push esi
lea ecx, [esp + 0x18]
call fcn.10040a00
mov edx, dword [eax + 0x988]
mov dword [0x100c0900], edx
mov edi, dword [esp + 0x18]
cmp edi, ebp
je 0x100576c3
mov ecx, dword [esp + 0x1c]
sub ecx, edi
mov eax, 0x6b429e61
imul ecx
sar edx, 0xa
mov eax, edx
shr eax, 0x1f
add eax, edx
cmp esi, eax
jb 0x100576cc
call fcn.10074477
mov edi, dword [esp + 0x18]
lea eax, [ebx + edi]
push 0x100a21b4
push eax
call fcn.10075086
add esp, 8
test eax, eax
jne 0x100576f6
push esi
lea ecx, [esp + 0x18]
call fcn.10040a00
mov eax, dword [eax + 0x988]
mov dword [0x100c090c], eax
mov edi, dword [esp + 0x18]
cmp edi, ebp
je 0x10057719
mov ecx, dword [esp + 0x1c]
sub ecx, edi
mov eax, 0x6b429e61
imul ecx
sar edx, 0xa
mov eax, edx
shr eax, 0x1f
add eax, edx
cmp esi, eax
jb 0x10057722
call fcn.10074477
mov edi, dword [esp + 0x18]
lea eax, [ebx + edi]
push str.GetBasePath
push eax
call fcn.10075086
add esp, 8
test eax, eax
jne 0x1005774d
push esi
lea ecx, [esp + 0x18]
call fcn.10040a00
mov ecx, dword [eax + 0x988]
mov dword [0x100c0910], ecx
mov edi, dword [esp + 0x18]
cmp edi, ebp
je 0x10057770
mov ecx, dword [esp + 0x1c]
sub ecx, edi
mov eax, 0x6b429e61
imul ecx
sar edx, 0xa
mov eax, edx
shr eax, 0x1f
add eax, edx
cmp esi, eax
jb 0x10057779
call fcn.10074477
mov edi, dword [esp + 0x18]
lea eax, [ebx + edi]
push 0x100a21d4
push eax
call fcn.10075086
add esp, 8
test eax, eax
jne 0x100577a4
push esi
lea ecx, [esp + 0x18]
call fcn.10040a00
mov edx, dword [eax + 0x988]
mov dword [0x100c0914], edx
mov edi, dword [esp + 0x18]
cmp edi, ebp
je 0x100577c7
mov ecx, dword [esp + 0x1c]
sub ecx, edi
mov eax, 0x6b429e61
imul ecx
sar edx, 0xa
mov eax, edx
shr eax, 0x1f
add eax, edx
cmp esi, eax
jb 0x100577d0
call fcn.10074477
mov edi, dword [esp + 0x18]
lea eax, [ebx + edi]
push str.RegEx
push eax
call fcn.10075086
add esp, 8
test eax, eax
jne 0x100577fa
push esi
lea ecx, [esp + 0x18]
call fcn.10040a00
mov eax, dword [eax + 0x988]
mov dword [0x100c0918], eax
mov edi, dword [esp + 0x18]
cmp edi, ebp
je 0x1005781d
mov ecx, dword [esp + 0x1c]
sub ecx, edi
mov eax, 0x6b429e61
imul ecx
sar edx, 0xa
mov eax, edx
shr eax, 0x1f
add eax, edx
cmp esi, eax
jb 0x10057826
call fcn.10074477
mov edi, dword [esp + 0x18]
lea eax, [ebx + edi]
push str.SetShowErrorMsg
push eax
call fcn.10075086
add esp, 8
test eax, eax
jne 0x10057851
push esi
lea ecx, [esp + 0x18]
call fcn.10040a00
mov ecx, dword [eax + 0x988]
mov dword [0x100c091c], ecx
mov edi, dword [esp + 0x18]
cmp edi, ebp
je 0x10057874
mov ecx, dword [esp + 0x1c]
sub ecx, edi
mov eax, 0x6b429e61
imul ecx
sar edx, 0xa
mov eax, edx
shr eax, 0x1f
add eax, edx
cmp esi, eax
jb 0x1005787d
call fcn.10074477
mov edi, dword [esp + 0x18]
lea eax, [ebx + edi]
push str.SetPath
push eax
call fcn.10075086
add esp, 8
test eax, eax
jne 0x100578a8
push esi
lea ecx, [esp + 0x18]
call fcn.10040a00
mov edx, dword [eax + 0x988]
mov dword [0x100c0920], edx
mov edi, dword [esp + 0x18]
cmp edi, ebp
je 0x100578cb
mov ecx, dword [esp + 0x1c]
sub ecx, edi
mov eax, 0x6b429e61
imul ecx
sar edx, 0xa
mov eax, edx
shr eax, 0x1f
add eax, edx
cmp esi, eax
jb 0x100578d4
call fcn.10074477
mov edi, dword [esp + 0x18]
lea eax, [ebx + edi]
push str.GetMousePointWindow
push eax
call fcn.10075086
add esp, 8
test eax, eax
jne 0x100578fe
push esi
lea ecx, [esp + 0x18]
call fcn.10040a00
mov eax, dword [eax + 0x988]
mov dword [0x100c0924], eax
mov edi, dword [esp + 0x18]
cmp edi, ebp
je 0x10057921
mov ecx, dword [esp + 0x1c]
sub ecx, edi
mov eax, 0x6b429e61
imul ecx
sar edx, 0xa
mov eax, edx
shr eax, 0x1f
add eax, edx
cmp esi, eax
jb 0x1005792a
call fcn.10074477
mov edi, dword [esp + 0x18]
lea eax, [ebx + edi]
push str.DmGuard
push eax
call fcn.10075086
add esp, 8
test eax, eax
jne 0x10057955
push esi
lea ecx, [esp + 0x18]
call fcn.10040a00
mov ecx, dword [eax + 0x988]
mov dword [0x100c0948], ecx
mov edi, dword [esp + 0x18]
cmp edi, ebp
je 0x10057978
mov ecx, dword [esp + 0x1c]
sub ecx, edi
mov eax, 0x6b429e61
imul ecx
sar edx, 0xa
mov eax, edx
shr eax, 0x1f
add eax, edx
cmp esi, eax
jb 0x10057981
call fcn.10074477
mov edi, dword [esp + 0x18]
lea eax, [ebx + edi]
push str.BindWindowEx
push eax
call fcn.10075086
add esp, 8
test eax, eax
jne 0x100579ac
push esi
lea ecx, [esp + 0x18]
call fcn.10040a00
mov edx, dword [eax + 0x988]
mov dword [0x100c094c], edx
mov edi, dword [esp + 0x18]
cmp edi, ebp
je 0x100579cf
mov ecx, dword [esp + 0x1c]
sub ecx, edi
mov eax, 0x6b429e61
imul ecx
sar edx, 0xa
mov eax, edx
shr eax, 0x1f
add eax, edx
cmp esi, eax
jb 0x100579d8
call fcn.10074477
mov edi, dword [esp + 0x18]
lea eax, [ebx + edi]
push str.UnBindWindow
push eax
call fcn.10075086
add esp, 8
test eax, eax
jne 0x10057a02
push esi
lea ecx, [esp + 0x18]
call fcn.10040a00
mov eax, dword [eax + 0x988]
mov dword [0x100c0950], eax
mov edi, dword [esp + 0x18]
cmp edi, ebp
je 0x10057a25
mov ecx, dword [esp + 0x1c]
sub ecx, edi
mov eax, 0x6b429e61
imul ecx
sar edx, 0xa
mov eax, edx
shr eax, 0x1f
add eax, edx
cmp esi, eax
jb 0x10057a2e
call fcn.10074477
mov edi, dword [esp + 0x18]
lea eax, [ebx + edi]
push 0x100a233c
push eax
call fcn.10075086
add esp, 8
test eax, eax
jne 0x10057a59
push esi
lea ecx, [esp + 0x18]
call fcn.10040a00
mov ecx, dword [eax + 0x988]
mov dword [0x100c0954], ecx
mov edi, dword [esp + 0x18]
cmp edi, ebp
je 0x10057a7c
mov ecx, dword [esp + 0x1c]
sub ecx, edi
mov eax, 0x6b429e61
imul ecx
sar edx, 0xa
mov eax, edx
shr eax, 0x1f
add eax, edx
cmp esi, eax
jb 0x10057a85
call fcn.10074477
mov edi, dword [esp + 0x18]
lea eax, [ebx + edi]
push str.SetSimMode
push eax
call fcn.10075086
add esp, 8
test eax, eax
jne 0x10057ab0
push esi
lea ecx, [esp + 0x18]
call fcn.10040a00
mov edx, dword [eax + 0x988]
mov dword [0x100c0930], edx
mov edi, dword [esp + 0x18]
cmp edi, ebp
je 0x10057ad3
mov ecx, dword [esp + 0x1c]
sub ecx, edi
mov eax, 0x6b429e61
imul ecx
sar edx, 0xa
mov eax, edx
shr eax, 0x1f
add eax, edx
cmp esi, eax
jb 0x10057adc
call fcn.10074477
mov edi, dword [esp + 0x18]
lea eax, [ebx + edi]
push str.SetWindowState
push eax
call fcn.10075086
add esp, 8
test eax, eax
jne 0x10057b06
push esi
lea ecx, [esp + 0x18]
call fcn.10040a00
mov eax, dword [eax + 0x988]
mov dword [0x100c0958], eax
mov edi, dword [esp + 0x18]
cmp edi, ebp
je 0x10057b29
mov ecx, dword [esp + 0x1c]
sub ecx, edi
mov eax, 0x6b429e61
imul ecx
sar edx, 0xa
mov eax, edx
shr eax, 0x1f
add eax, edx
cmp esi, eax
jb 0x10057b32
call fcn.10074477
mov edi, dword [esp + 0x18]
lea eax, [ebx + edi]
push 0x100a0684
push eax
call fcn.10075086
add esp, 8
test eax, eax
jne 0x10057b5d
push esi
lea ecx, [esp + 0x18]
call fcn.10040a00
mov ecx, dword [eax + 0x988]
mov dword [0x100c095c], ecx
mov edi, dword [esp + 0x18]
cmp edi, ebp
je 0x10057b80
mov ecx, dword [esp + 0x1c]
sub ecx, edi
mov eax, 0x6b429e61
imul ecx
sar edx, 0xa
mov eax, edx
shr eax, 0x1f
add eax, edx
cmp esi, eax
jb 0x10057b89
call fcn.10074477
mov edi, dword [esp + 0x18]
lea eax, [ebx + edi]
push str.EnableFakeActive
push eax
call fcn.10075086
add esp, 8
test eax, eax
jne 0x10057bb4
push esi
lea ecx, [esp + 0x18]
call fcn.10040a00
mov edx, dword [eax + 0x988]
mov dword [0x100c0960], edx
mov edi, dword [esp + 0x18]
cmp edi, ebp
je 0x10057bd7
mov ecx, dword [esp + 0x1c]
sub ecx, edi
mov eax, 0x6b429e61
imul ecx
sar edx, 0xa
mov eax, edx
shr eax, 0x1f
add eax, edx
cmp esi, eax
jb 0x10057be0
call fcn.10074477
mov edi, dword [esp + 0x18]
lea eax, [ebx + edi]
push str.EnableBind
push eax
call fcn.10075086
add esp, 8
test eax, eax
jne 0x10057c0a
push esi
lea ecx, [esp + 0x18]
call fcn.10040a00
mov eax, dword [eax + 0x988]
mov dword [0x100c0964], eax
mov edi, dword [esp + 0x18]
cmp edi, ebp
je 0x10057c2d
mov ecx, dword [esp + 0x1c]
sub ecx, edi
mov eax, 0x6b429e61
imul ecx
sar edx, 0xa
mov eax, edx
shr eax, 0x1f
add eax, edx
cmp esi, eax
jb 0x10057c36
call fcn.10074477
mov edi, dword [esp + 0x18]
lea eax, [ebx + edi]
push str.DownCpu
push eax
call fcn.10075086
add esp, 8
test eax, eax
jne 0x10057c61
push esi
lea ecx, [esp + 0x18]
call fcn.10040a00
mov ecx, dword [eax + 0x988]
mov dword [0x100c0934], ecx
mov edi, dword [esp + 0x18]
cmp edi, ebp
je 0x10057c84
mov ecx, dword [esp + 0x1c]
sub ecx, edi
mov eax, 0x6b429e61
imul ecx
sar edx, 0xa
mov eax, edx
shr eax, 0x1f
add eax, edx
cmp esi, eax
jb 0x10057c8d
call fcn.10074477
mov edi, dword [esp + 0x18]
lea eax, [ebx + edi]
push str.HackSpeed
push eax
call fcn.10075086
add esp, 8
test eax, eax
jne 0x10057cb8
push esi
lea ecx, [esp + 0x18]
call fcn.10040a00
mov edx, dword [eax + 0x988]
mov dword [0x100c0938], edx
mov edi, dword [esp + 0x18]
cmp edi, ebp
je 0x10057cdb
mov ecx, dword [esp + 0x1c]
sub ecx, edi
mov eax, 0x6b429e61
imul ecx
sar edx, 0xa
mov eax, edx
shr eax, 0x1f
add eax, edx
cmp esi, eax
jb 0x10057ce4
call fcn.10074477
mov edi, dword [esp + 0x18]
lea eax, [ebx + edi]
push str.LockInput
push eax
call fcn.10075086
add esp, 8
test eax, eax
jne 0x10057d0e
push esi
lea ecx, [esp + 0x18]
call fcn.10040a00
mov eax, dword [eax + 0x988]
mov dword [0x100c093c], eax
mov edi, dword [esp + 0x18]
cmp edi, ebp
je 0x10057d31
mov ecx, dword [esp + 0x1c]
sub ecx, edi
mov eax, 0x6b429e61
imul ecx
sar edx, 0xa
mov eax, edx
shr eax, 0x1f
add eax, edx
cmp esi, eax
jb 0x10057d3a
call fcn.10074477
mov edi, dword [esp + 0x18]
lea eax, [ebx + edi]
push str.Capture
push eax
call fcn.10075086
add esp, 8
test eax, eax
jne 0x10057d65
push esi
lea ecx, [esp + 0x18]
call fcn.10040a00
mov ecx, dword [eax + 0x988]
mov dword [0x100c0968], ecx
mov edi, dword [esp + 0x18]
cmp edi, ebp
je 0x10057d88
mov ecx, dword [esp + 0x1c]
sub ecx, edi
mov eax, 0x6b429e61
imul ecx
sar edx, 0xa
mov eax, edx
shr eax, 0x1f
add eax, edx
cmp esi, eax
jb 0x10057d91
call fcn.10074477
mov edi, dword [esp + 0x18]
lea eax, [ebx + edi]
push str.GetScreenDataBmp
push eax
call fcn.10075086
add esp, 8
test eax, eax
jne 0x10057dbc
push esi
lea ecx, [esp + 0x18]
call fcn.10040a00
mov edx, dword [eax + 0x988]
mov dword [0x100c096c], edx
mov edi, dword [esp + 0x18]
cmp edi, ebp
je 0x10057ddf
mov ecx, dword [esp + 0x1c]
sub ecx, edi
mov eax, 0x6b429e61
imul ecx
sar edx, 0xa
mov eax, edx
shr eax, 0x1f
add eax, edx
cmp esi, eax
jb 0x10057de8
call fcn.10074477
mov edi, dword [esp + 0x18]
lea eax, [ebx + edi]
push str.GetColor
push eax
call fcn.10075086
add esp, 8
test eax, eax
jne 0x10057e12
push esi
lea ecx, [esp + 0x18]
call fcn.10040a00
mov eax, dword [eax + 0x988]
mov dword [0x100c0978], eax
mov edi, dword [esp + 0x18]
cmp edi, ebp
je 0x10057e35
mov ecx, dword [esp + 0x1c]
sub ecx, edi
mov eax, 0x6b429e61
imul ecx
sar edx, 0xa
mov eax, edx
shr eax, 0x1f
add eax, edx
cmp esi, eax
jb 0x10057e3e
call fcn.10074477
mov edi, dword [esp + 0x18]
lea eax, [ebx + edi]
push str.EnableGetColorByCapture
push eax
call fcn.10075086
add esp, 8
test eax, eax
jne 0x10057e69
push esi
lea ecx, [esp + 0x18]
call fcn.10040a00
mov ecx, dword [eax + 0x988]
mov dword [0x100c097c], ecx
mov edi, dword [esp + 0x18]
cmp edi, ebp
je 0x10057e8c
mov ecx, dword [esp + 0x1c]
sub ecx, edi
mov eax, 0x6b429e61
imul ecx
sar edx, 0xa
mov eax, edx
shr eax, 0x1f
add eax, edx
cmp esi, eax
jb 0x10057e95
call fcn.10074477
mov edi, dword [esp + 0x18]
lea eax, [ebx + edi]
push str.FreePic
push eax
call fcn.10075086
add esp, 8
test eax, eax
jne 0x10057ec0
push esi
lea ecx, [esp + 0x18]
call fcn.10040a00
mov edx, dword [eax + 0x988]
mov dword [0x100c0940], edx
mov edi, dword [esp + 0x18]
cmp edi, ebp
je 0x10057ee3
mov ecx, dword [esp + 0x1c]
sub ecx, edi
mov eax, 0x6b429e61
imul ecx
sar edx, 0xa
mov eax, edx
shr eax, 0x1f
add eax, edx
cmp esi, eax
jb 0x10057eec
call fcn.10074477
mov edi, dword [esp + 0x18]
lea eax, [ebx + edi]
push str.SetPicPwd
push eax
call fcn.10075086
add esp, 8
test eax, eax
jne 0x10057f16
push esi
lea ecx, [esp + 0x18]
call fcn.10040a00
mov eax, dword [eax + 0x988]
mov dword [0x100c0944], eax
mov edi, dword [esp + 0x18]
cmp edi, ebp
je 0x10057f39
mov ecx, dword [esp + 0x1c]
sub ecx, edi
mov eax, 0x6b429e61
imul ecx
sar edx, 0xa
mov eax, edx
shr eax, 0x1f
add eax, edx
cmp esi, eax
jb 0x10057f42
call fcn.10074477
mov edi, dword [esp + 0x18]
lea eax, [ebx + edi]
push str.FindPic
push eax
call fcn.10075086
add esp, 8
test eax, eax
jne 0x10057f6d
push esi
lea ecx, [esp + 0x18]
call fcn.10040a00
mov ecx, dword [eax + 0x988]
mov dword [0x100c0970], ecx
mov edi, dword [esp + 0x18]
cmp edi, ebp
je 0x10057f90
mov ecx, dword [esp + 0x1c]
sub ecx, edi
mov eax, 0x6b429e61
imul ecx
sar edx, 0xa
mov eax, edx
shr eax, 0x1f
add eax, edx
cmp esi, eax
jb 0x10057f99
call fcn.10074477
mov edi, dword [esp + 0x18]
lea eax, [ebx + edi]
push str.RunApp
push eax
call fcn.10075086
add esp, 8
test eax, eax
jne 0x10057fc4
push esi
lea ecx, [esp + 0x18]
call fcn.10040a00
mov edx, dword [eax + 0x988]
mov dword [0x100c0974], edx
mov edi, dword [esp + 0x18]
cmp edi, ebp
je 0x10057fe7
mov ecx, dword [esp + 0x1c]
sub ecx, edi
mov eax, 0x6b429e61
imul ecx
sar edx, 0xa
mov eax, edx
shr eax, 0x1f
add eax, edx
cmp esi, eax
jb 0x10057ff0
call fcn.10074477
mov edi, dword [esp + 0x18]
lea eax, [ebx + edi]
push str.EnableRealMouse
push eax
call fcn.10075086
add esp, 8
test eax, eax
jne 0x1005801a
push esi
lea ecx, [esp + 0x18]
call fcn.10040a00
mov eax, dword [eax + 0x988]
mov dword [0x100c0988], eax
mov edi, dword [esp + 0x18]
cmp edi, ebp
je 0x1005803d
mov ecx, dword [esp + 0x1c]
sub ecx, edi
mov eax, 0x6b429e61
imul ecx
sar edx, 0xa
mov eax, edx
shr eax, 0x1f
add eax, edx
cmp esi, eax
jb 0x10058046
call fcn.10074477
mov edi, dword [esp + 0x18]
lea eax, [ebx + edi]
push str.SetMouseDelay
push eax
call fcn.10075086
add esp, 8
test eax, eax
jne 0x10058071
push esi
lea ecx, [esp + 0x18]
call fcn.10040a00
mov ecx, dword [eax + 0x988]
mov dword [0x100c0980], ecx
mov edi, dword [esp + 0x18]
cmp edi, ebp
je 0x10058094
mov ecx, dword [esp + 0x1c]
sub ecx, edi
mov eax, 0x6b429e61
imul ecx
sar edx, 0xa
mov eax, edx
shr eax, 0x1f
add eax, edx
cmp esi, eax
jb 0x1005809d
call fcn.10074477
mov edi, dword [esp + 0x18]
lea eax, [ebx + edi]
push str.EnableMouseSync
push eax
call fcn.10075086
add esp, 8
test eax, eax
jne 0x100580c8
push esi
lea ecx, [esp + 0x18]
call fcn.10040a00
mov edx, dword [eax + 0x988]
mov dword [0x100c0984], edx
mov edi, dword [esp + 0x18]
cmp edi, ebp
je 0x100580eb
mov ecx, dword [esp + 0x1c]
sub ecx, edi
mov eax, 0x6b429e61
imul ecx
sar edx, 0xa
mov eax, edx
shr eax, 0x1f
add eax, edx
cmp esi, eax
jb 0x100580f4
call fcn.10074477
mov edi, dword [esp + 0x18]
lea eax, [ebx + edi]
push str.EnableMouseMsg
push eax
call fcn.10075086
add esp, 8
test eax, eax
jne 0x1005811e
push esi
lea ecx, [esp + 0x18]
call fcn.10040a00
mov eax, dword [eax + 0x988]
mov dword [0x100c098c], eax
mov edi, dword [esp + 0x18]
cmp edi, ebp
je 0x10058141
mov ecx, dword [esp + 0x1c]
sub ecx, edi
mov eax, 0x6b429e61
imul ecx
sar edx, 0xa
mov eax, edx
shr eax, 0x1f
add eax, edx
cmp esi, eax
jb 0x1005814a
call fcn.10074477
mov edi, dword [esp + 0x18]
lea eax, [ebx + edi]
push str.MoveTo
push eax
call fcn.10075086
add esp, 8
test eax, eax
jne 0x10058175
push esi
lea ecx, [esp + 0x18]
call fcn.10040a00
mov ecx, dword [eax + 0x988]
mov dword [0x100c0990], ecx
mov edi, dword [esp + 0x18]
cmp edi, ebp
je 0x10058198
mov ecx, dword [esp + 0x1c]
sub ecx, edi
mov eax, 0x6b429e61
imul ecx
sar edx, 0xa
mov eax, edx
shr eax, 0x1f
add eax, edx
cmp esi, eax
jb 0x100581a1
call fcn.10074477
mov edi, dword [esp + 0x18]
lea eax, [ebx + edi]
push str.MoveR
push eax
call fcn.10075086
add esp, 8
test eax, eax
jne 0x100581cc
push esi
lea ecx, [esp + 0x18]
call fcn.10040a00
mov edx, dword [eax + 0x988]
mov dword [0x100c0994], edx
mov edi, dword [esp + 0x18]
cmp edi, ebp
je 0x100581ef
mov ecx, dword [esp + 0x1c]
sub ecx, edi
mov eax, 0x6b429e61
imul ecx
sar edx, 0xa
mov eax, edx
shr eax, 0x1f
add eax, edx
cmp esi, eax
jb 0x100581f8
call fcn.10074477
mov edi, dword [esp + 0x18]
lea eax, [ebx + edi]
push str.LeftDown
push eax
call fcn.10075086
add esp, 8
test eax, eax
jne 0x10058222
push esi
lea ecx, [esp + 0x18]
call fcn.10040a00
mov eax, dword [eax + 0x988]
mov dword [0x100c0998], eax
mov edi, dword [esp + 0x18]
cmp edi, ebp
je 0x10058245
mov ecx, dword [esp + 0x1c]
sub ecx, edi
mov eax, 0x6b429e61
imul ecx
sar edx, 0xa
mov eax, edx
shr eax, 0x1f
add eax, edx
cmp esi, eax
jb 0x1005824e
call fcn.10074477
mov edi, dword [esp + 0x18]
lea eax, [ebx + edi]
push str.LeftUp
push eax
call fcn.10075086
add esp, 8
test eax, eax
jne 0x10058279
push esi
lea ecx, [esp + 0x18]
call fcn.10040a00
mov ecx, dword [eax + 0x988]
mov dword [0x100c099c], ecx
mov edi, dword [esp + 0x18]
cmp edi, ebp
je 0x1005829c
mov ecx, dword [esp + 0x1c]
sub ecx, edi
mov eax, 0x6b429e61
imul ecx
sar edx, 0xa
mov eax, edx
shr eax, 0x1f
add eax, edx
cmp esi, eax
jb 0x100582a5
call fcn.10074477
mov edi, dword [esp + 0x18]
lea eax, [ebx + edi]
push str.LeftClick
push eax
call fcn.10075086
add esp, 8
test eax, eax
jne 0x100582d0
push esi
lea ecx, [esp + 0x18]
call fcn.10040a00
mov edx, dword [eax + 0x988]
mov dword [0x100c09a0], edx
mov edi, dword [esp + 0x18]
cmp edi, ebp
je 0x100582f3
mov ecx, dword [esp + 0x1c]
sub ecx, edi
mov eax, 0x6b429e61
imul ecx
sar edx, 0xa
mov eax, edx
shr eax, 0x1f
add eax, edx
cmp esi, eax
jb 0x100582fc
call fcn.10074477
mov edi, dword [esp + 0x18]
lea eax, [ebx + edi]
push str.RightDown
push eax
call fcn.10075086
add esp, 8
test eax, eax
jne 0x10058326
push esi
lea ecx, [esp + 0x18]
call fcn.10040a00
mov eax, dword [eax + 0x988]
mov dword [0x100c09a4], eax
mov edi, dword [esp + 0x18]
cmp edi, ebp
je 0x10058349
mov ecx, dword [esp + 0x1c]
sub ecx, edi
mov eax, 0x6b429e61
imul ecx
sar edx, 0xa
mov eax, edx
shr eax, 0x1f
add eax, edx
cmp esi, eax
jb 0x10058352
call fcn.10074477
mov edi, dword [esp + 0x18]
lea eax, [ebx + edi]
push str.RightUp
push eax
call fcn.10075086
add esp, 8
test eax, eax
jne 0x1005837d
push esi
lea ecx, [esp + 0x18]
call fcn.10040a00
mov ecx, dword [eax + 0x988]
mov dword [0x100c09a8], ecx
mov edi, dword [esp + 0x18]
cmp edi, ebp
je 0x100583a0
mov ecx, dword [esp + 0x1c]
sub ecx, edi
mov eax, 0x6b429e61
imul ecx
sar edx, 0xa
mov eax, edx
shr eax, 0x1f
add eax, edx
cmp esi, eax
jb 0x100583a9
call fcn.10074477
mov edi, dword [esp + 0x18]
lea eax, [ebx + edi]
push str.RightClick
push eax
call fcn.10075086
add esp, 8
test eax, eax
jne 0x100583d4
push esi
lea ecx, [esp + 0x18]
call fcn.10040a00
mov edx, dword [eax + 0x988]
mov dword [0x100c09ac], edx
mov edi, dword [esp + 0x18]
cmp edi, ebp
je 0x100583f7
mov ecx, dword [esp + 0x1c]
sub ecx, edi
mov eax, 0x6b429e61
imul ecx
sar edx, 0xa
mov eax, edx
shr eax, 0x1f
add eax, edx
cmp esi, eax
jb 0x10058400
call fcn.10074477
mov edi, dword [esp + 0x18]
lea eax, [ebx + edi]
push str.MiddleClick
push eax
call fcn.10075086
add esp, 8
test eax, eax
jne 0x1005842a
push esi
lea ecx, [esp + 0x18]
call fcn.10040a00
mov eax, dword [eax + 0x988]
mov dword [0x100c09b0], eax
mov edi, dword [esp + 0x18]
cmp edi, ebp
je 0x1005844d
mov ecx, dword [esp + 0x1c]
sub ecx, edi
mov eax, 0x6b429e61
imul ecx
sar edx, 0xa
mov eax, edx
shr eax, 0x1f
add eax, edx
cmp esi, eax
jb 0x10058456
call fcn.10074477
mov edi, dword [esp + 0x18]
lea eax, [ebx + edi]
push str.MiddleDown
push eax
call fcn.10075086
add esp, 8
test eax, eax
jne 0x10058481
push esi
lea ecx, [esp + 0x18]
call fcn.10040a00
mov ecx, dword [eax + 0x988]
mov dword [0x100c09b4], ecx
mov edi, dword [esp + 0x18]
cmp edi, ebp
je 0x100584a4
mov ecx, dword [esp + 0x1c]
sub ecx, edi
mov eax, 0x6b429e61
imul ecx
sar edx, 0xa
mov eax, edx
shr eax, 0x1f
add eax, edx
cmp esi, eax
jb 0x100584ad
call fcn.10074477
mov edi, dword [esp + 0x18]
lea eax, [ebx + edi]
push str.MiddleUp
push eax
call fcn.10075086
add esp, 8
test eax, eax
jne 0x100584d8
push esi
lea ecx, [esp + 0x18]
call fcn.10040a00
mov edx, dword [eax + 0x988]
mov dword [0x100c09b8], edx
mov edi, dword [esp + 0x18]
cmp edi, ebp
je 0x100584fb
mov ecx, dword [esp + 0x1c]
sub ecx, edi
mov eax, 0x6b429e61
imul ecx
sar edx, 0xa
mov eax, edx
shr eax, 0x1f
add eax, edx
cmp esi, eax
jb 0x10058504
call fcn.10074477
mov edi, dword [esp + 0x18]
lea eax, [ebx + edi]
push str.WheelUp
push eax
call fcn.10075086
add esp, 8
test eax, eax
jne 0x1005852e
push esi
lea ecx, [esp + 0x18]
call fcn.10040a00
mov eax, dword [eax + 0x988]
mov dword [0x100c09bc], eax
mov edi, dword [esp + 0x18]
cmp edi, ebp
je 0x10058551
mov ecx, dword [esp + 0x1c]
sub ecx, edi
mov eax, 0x6b429e61
imul ecx
sar edx, 0xa
mov eax, edx
shr eax, 0x1f
add eax, edx
cmp esi, eax
jb 0x1005855a
call fcn.10074477
mov edi, dword [esp + 0x18]
lea eax, [ebx + edi]
push str.WheelDown
push eax
call fcn.10075086
add esp, 8
test eax, eax
jne 0x10058585
push esi
lea ecx, [esp + 0x18]
call fcn.10040a00
mov ecx, dword [eax + 0x988]
mov dword [0x100c09c0], ecx
mov edi, dword [esp + 0x18]
cmp edi, ebp
je 0x100585a8
mov ecx, dword [esp + 0x1c]
sub ecx, edi
mov eax, 0x6b429e61
imul ecx
sar edx, 0xa
mov eax, edx
shr eax, 0x1f
add eax, edx
cmp esi, eax
jb 0x100585b1
call fcn.10074477
mov edi, dword [esp + 0x18]
lea eax, [ebx + edi]
push str.LeftDoubleClick
push eax
call fcn.10075086
add esp, 8
test eax, eax
jne 0x100585dc
push esi
lea ecx, [esp + 0x18]
call fcn.10040a00
mov edx, dword [eax + 0x988]
mov dword [0x100c09c4], edx
mov edi, dword [esp + 0x18]
cmp edi, ebp
je 0x100585ff
mov ecx, dword [esp + 0x1c]
sub ecx, edi
mov eax, 0x6b429e61
imul ecx
sar edx, 0xa
mov eax, edx
shr eax, 0x1f
add eax, edx
cmp esi, eax
jb 0x10058608
call fcn.10074477
mov edi, dword [esp + 0x18]
lea eax, [ebx + edi]
push str.GetCursorShapeEx
push eax
call fcn.10075086
add esp, 8
test eax, eax
jne 0x10058632
push esi
lea ecx, [esp + 0x18]
call fcn.10040a00
mov eax, dword [eax + 0x988]
mov dword [0x100c09c8], eax
mov edi, dword [esp + 0x18]
cmp edi, ebp
je 0x10058655
mov ecx, dword [esp + 0x1c]
sub ecx, edi
mov eax, 0x6b429e61
imul ecx
sar edx, 0xa
mov eax, edx
shr eax, 0x1f
add eax, edx
cmp esi, eax
jb 0x1005865e
call fcn.10074477
mov edi, dword [esp + 0x18]
lea eax, [ebx + edi]
push 0x100a257c
push eax
call fcn.10075086
add esp, 8
test eax, eax
jne 0x10058689
push esi
lea ecx, [esp + 0x18]
call fcn.10040a00
mov ecx, dword [eax + 0x988]
mov dword [0x100c09cc], ecx
mov edi, dword [esp + 0x18]
cmp edi, ebp
je 0x100586ac
mov ecx, dword [esp + 0x1c]
sub ecx, edi
mov eax, 0x6b429e61
imul ecx
sar edx, 0xa
mov eax, edx
shr eax, 0x1f
add eax, edx
cmp esi, eax
jb 0x100586b5
call fcn.10074477
mov edi, dword [esp + 0x18]
lea eax, [ebx + edi]
push str.GetWindowTitle
push eax
call fcn.10075086
add esp, 8
test eax, eax
jne 0x100586e0
push esi
lea ecx, [esp + 0x18]
call fcn.10040a00
mov edx, dword [eax + 0x988]
mov dword [0x100c0928], edx
mov edi, dword [esp + 0x18]
cmp edi, ebp
je 0x10058703
mov ecx, dword [esp + 0x1c]
sub ecx, edi
mov eax, 0x6b429e61
imul ecx
sar edx, 0xa
mov eax, edx
shr eax, 0x1f
add eax, edx
cmp esi, eax
jb 0x1005870c
call fcn.10074477
mov edi, dword [esp + 0x18]
lea eax, [ebx + edi]
push str.GetWindowClass
push eax
call fcn.10075086
add esp, 8
test eax, eax
jne 0x10058736
push esi
lea ecx, [esp + 0x18]
call fcn.10040a00
mov eax, dword [eax + 0x988]
mov dword [0x100c092c], eax
mov edi, dword [esp + 0x18]
cmp edi, ebp
je 0x10058759
mov ecx, dword [esp + 0x1c]
sub ecx, edi
mov eax, 0x6b429e61
imul ecx
sar edx, 0xa
mov eax, edx
shr eax, 0x1f
add eax, edx
cmp esi, eax
jb 0x10058762
call fcn.10074477
mov edi, dword [esp + 0x18]
lea eax, [ebx + edi]
push str.EnableRealKeypad
push eax
call fcn.10075086
add esp, 8
test eax, eax
jne 0x1005878d
push esi
lea ecx, [esp + 0x18]
call fcn.10040a00
mov ecx, dword [eax + 0x988]
mov dword [0x100c09d8], ecx
mov edi, dword [esp + 0x18]
cmp edi, ebp
je 0x100587b0
mov ecx, dword [esp + 0x1c]
sub ecx, edi
mov eax, 0x6b429e61
imul ecx
sar edx, 0xa
mov eax, edx
shr eax, 0x1f
add eax, edx
cmp esi, eax
jb 0x100587b9
call fcn.10074477
mov edi, dword [esp + 0x18]
lea eax, [ebx + edi]
push str.SetKeypadDelay
push eax
call fcn.10075086
add esp, 8
test eax, eax
jne 0x100587e4
push esi
lea ecx, [esp + 0x18]
call fcn.10040a00
mov edx, dword [eax + 0x988]
mov dword [0x100c09d0], edx
mov edi, dword [esp + 0x18]
cmp edi, ebp
je 0x10058807
mov ecx, dword [esp + 0x1c]
sub ecx, edi
mov eax, 0x6b429e61
imul ecx
sar edx, 0xa
mov eax, edx
shr eax, 0x1f
add eax, edx
cmp esi, eax
jb 0x10058810
call fcn.10074477
mov edi, dword [esp + 0x18]
lea eax, [ebx + edi]
push str.EnableKeypadSync
push eax
call fcn.10075086
add esp, 8
test eax, eax
jne 0x1005883a
push esi
lea ecx, [esp + 0x18]
call fcn.10040a00
mov eax, dword [eax + 0x988]
mov dword [0x100c09d4], eax
mov edi, dword [esp + 0x18]
cmp edi, ebp
je 0x1005885d
mov ecx, dword [esp + 0x1c]
sub ecx, edi
mov eax, 0x6b429e61
imul ecx
sar edx, 0xa
mov eax, edx
shr eax, 0x1f
add eax, edx
cmp esi, eax
jb 0x10058866
call fcn.10074477
mov edi, dword [esp + 0x18]
lea eax, [ebx + edi]
push str.EnableKeypadMsg
push eax
call fcn.10075086
add esp, 8
test eax, eax
jne 0x10058891
push esi
lea ecx, [esp + 0x18]
call fcn.10040a00
mov ecx, dword [eax + 0x988]
mov dword [0x100c09dc], ecx
mov edi, dword [esp + 0x18]
cmp edi, ebp
je 0x100588b4
mov ecx, dword [esp + 0x1c]
sub ecx, edi
mov eax, 0x6b429e61
imul ecx
sar edx, 0xa
mov eax, edx
shr eax, 0x1f
add eax, edx
cmp esi, eax
jb 0x100588bd
call fcn.10074477
mov edi, dword [esp + 0x18]
lea eax, [ebx + edi]
push str.EnableKeypadPatch
push eax
call fcn.10075086
add esp, 8
test eax, eax
jne 0x100588e8
push esi
lea ecx, [esp + 0x18]
call fcn.10040a00
mov edx, dword [eax + 0x988]
mov dword [0x100c09e0], edx
mov edi, dword [esp + 0x18]
cmp edi, ebp
je 0x1005890b
mov ecx, dword [esp + 0x1c]
sub ecx, edi
mov eax, 0x6b429e61
imul ecx
sar edx, 0xa
mov eax, edx
shr eax, 0x1f
add eax, edx
cmp esi, eax
jb 0x10058914
call fcn.10074477
mov edi, dword [esp + 0x18]
lea eax, [ebx + edi]
push str.KeyDown
push eax
call fcn.10075086
add esp, 8
test eax, eax
jne 0x1005893e
cmp dword [0x100c08fc], ebp
je 0x10059649
cmp dword [0x100c0900], ebp
je 0x10059649
mov eax, dword [esp + 0x30]
add eax, 0xfffffff0
mov byte [esp + 0xa60], 5
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x100595be
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov eax, dword [esp + 0x28]
add eax, 0xfffffff0
mov byte [esp + 0xa60], 4
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x100595e6
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
lea ecx, [esp + 0x14]
call fcn.10043d20
mov eax, dword [esp + 0x24]
add eax, 0xfffffff0
mov byte [esp + 0xa60], 0
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x10059617
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov eax, dword [esp + 0x34]
mov dword [esp + 0xa60], 0xffffffff
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x1005963f
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov eax, 1
jmp 0x100596dd
mov eax, dword [esp + 0x30]
add eax, 0xfffffff0
mov byte [esp + 0xa60], 5
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x10059671
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov eax, dword [esp + 0x28]
add eax, 0xfffffff0
mov byte [esp + 0xa60], 4
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x1005709f
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
jmp 0x1005709f
push ebx
call fcn.1007482b
add esp, 4
lea ecx, [esp + 0x30]
call fcn.10001380
lea ecx, [esp + 0x28]
call fcn.10001380
lea ecx, [esp + 0x14]
call fcn.10043d20
lea ecx, [esp + 0x24]
call fcn.10001380
lea ecx, [esp + 0xa68]
call fcn.10001380
xor eax, eax
mov ecx, dword [esp + 0xa58]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebp
pop ebx
mov ecx, dword [esp + 0xa40]
xor ecx, esp
call fcn.1007368d
add esp, 0xa50
ret