Function at 0x55fc10
Capabilities:
Check for time delay via gettickcount

Disassembly:
push ebp
mov ebp, esp
push ecx
mov ecx, 0xd
push 0
push 0
dec ecx
jne 0x55fc19
xchg dword [ebp - 4], ecx
push ebx
push esi
push edi
mov dword [ebp - 8], ecx
mov dword [ebp - 0x20], edx
mov dword [ebp - 4], eax
xor eax, eax
push ebp
push 0x5610c1
push dword fs:[eax]
mov dword fs:[eax], esp
xor eax, eax
push ebp
push 0x56107d
push dword fs:[eax]
mov dword fs:[eax], esp
mov eax, dword [ebp - 8]
mov ax, word [eax]
sub ax, 0x13
jne 0x55fca7
mov eax, dword [ebp - 8]
mov word [eax], 0
mov eax, dword [ebp - 4]
call fcn.0055ee70
push 0xffffff
push 0x5610dc
lea edx, [ebp - 0x30]
mov eax, dword [0x6e3cb4]
mov eax, dword [eax]
call fcn.004b48d4
push dword [ebp - 0x30]
push 0x56110c
lea eax, [ebp - 0x2c]
mov edx, 3
call fcn.00405768
mov edx, dword [ebp - 0x2c]
mov ecx, 0xff
mov eax, dword [0x6ef078]
call fcn.005a6c90
mov edx, dword [ebp - 8]
mov eax, dword [0x6e3c9c]
mov eax, dword [eax]
mov cl, byte [ebp + 8]
call fcn.004d82d0
test al, al
je 0x55fcca
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x561091
mov eax, dword [0x6e42cc]
cmp dword [eax], 0
je 0x55fce4
mov eax, dword [0x6ef078]
mov eax, dword [eax + 0x30]
cmp eax, dword [0x6ef088]
je 0x55fcf1
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x561091
mov eax, dword [0x6e450c]
cmp byte [eax], 1
jne 0x560cc9
mov eax, dword [ebp - 8]
cmp word [eax], 0
je 0x560bac
test byte [ebp + 8], 2
je 0x55fd37
mov eax, dword [0x6e4734]
mov eax, dword [eax + 0x254]
call fcn.0044f86c
mov edx, dword [ebp - 8]
cmp ax, word [edx]
jne 0x55fd37
mov eax, dword [ebp - 8]
mov word [eax], 0
jmp 0x560bac
test byte [ebp + 8], 2
je 0x55fd62
mov eax, dword [0x6e4734]
mov eax, dword [eax + 0x258]
call fcn.0044f86c
mov edx, dword [ebp - 8]
cmp ax, word [edx]
jne 0x55fd62
mov eax, dword [ebp - 8]
mov word [eax], 0
jmp 0x560bac
test byte [ebp + 8], 2
je 0x55fe27
mov eax, dword [0x6e4734]
mov eax, dword [eax + 0x25c]
call fcn.0044f86c
mov edx, dword [ebp - 8]
cmp ax, word [edx]
jne 0x55fe27
mov eax, dword [0x6e4410]
cmp dword [eax], 0
je 0x55fe1a
mov eax, dword [0x6e4410]
mov eax, dword [eax]
cmp byte [eax + 0x12], 0
jne 0x55fe1a
mov eax, dword [0x6e4410]
mov eax, dword [eax]
cmp byte [eax + 0x30], 0
jne 0x55fe1a
call sub.kernel32.dll_GetTickCount_1
mov edx, dword [0x6e39cc]
cmp eax, dword [edx]
jbe 0x55fe05
mov eax, dword [0x6e3ab8]
mov eax, dword [eax]
mov edx, dword [eax]
call dword [edx + 0x14]
test eax, eax
jne 0x55fe05
call sub.kernel32.dll_GetTickCount_1
add eax, 0x1388
mov edx, dword [0x6e39cc]
mov dword [edx], eax
mov eax, dword [0x6e4a7c]
mov eax, dword [eax]
mov cl, byte [eax + 0x110e]
mov eax, dword [0x6e4410]
mov eax, dword [eax]
mov edx, dword [eax + 0x98]
mov eax, dword [ebp - 4]
call fcn.00571020
jmp 0x55fe1a
mov eax, dword [0x6e4410]
mov eax, dword [eax]
mov edx, dword [eax + 0x98]
mov eax, dword [ebp - 4]
call fcn.0057112c
mov eax, dword [ebp - 8]
mov word [eax], 0
jmp 0x560bac
test byte [ebp + 8], 2
je 0x55fec0
mov eax, dword [0x6e4734]
mov eax, dword [eax + 0x260]
call fcn.0044f86c
mov edx, dword [ebp - 8]
cmp ax, word [edx]
jne 0x55fec0
mov eax, dword [0x6e4410]
cmp dword [eax], 0
je 0x55feb3
mov eax, dword [0x6e4410]
mov eax, dword [eax]
cmp byte [eax + 0x12], 0
jne 0x55feb3
mov eax, dword [0x6e4410]
mov eax, dword [eax]
cmp byte [eax + 0x30], 0
jne 0x55feb3
call sub.kernel32.dll_GetTickCount_1
mov edx, dword [0x6e39cc]
cmp eax, dword [edx]
jbe 0x55feb3
mov eax, dword [0x6e3ab8]
mov eax, dword [eax]
mov edx, dword [eax]
call dword [edx + 0x14]
test eax, eax
jle 0x55feb3
call sub.kernel32.dll_GetTickCount_1
add eax, 0x1388
mov edx, dword [0x6e39cc]
mov dword [edx], eax
mov eax, dword [0x6e4410]
mov eax, dword [eax]
mov edx, dword [eax + 0x98]
mov eax, dword [ebp - 4]
call fcn.00572244
mov eax, dword [ebp - 8]
mov word [eax], 0
jmp 0x560bac
test byte [ebp + 8], 2
je 0x55feeb
mov eax, dword [0x6e4734]
mov eax, dword [eax + 0x264]
call fcn.0044f86c
mov edx, dword [ebp - 8]
cmp ax, word [edx]
jne 0x55feeb
mov eax, dword [ebp - 8]
mov word [eax], 0
jmp 0x560bac
test byte [ebp + 8], 2
je 0x55ff66
mov eax, dword [0x6e4734]
mov eax, dword [eax + 0x268]
call fcn.0044f86c
mov edx, dword [ebp - 8]
cmp ax, word [edx]
jne 0x55ff66
mov eax, dword [0x6ef088]
mov eax, dword [eax + 0x34a0]
mov eax, dword [eax + 8]
dec eax
test eax, eax
jl 0x560bac
inc eax
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x10], 0
mov eax, dword [0x6ef088]
mov eax, dword [eax + 0x34a0]
mov edx, dword [ebp - 0x10]
call fcn.0041f32c
mov dword [ebp - 0x14], eax
mov eax, dword [ebp - 0x14]
cmp byte [eax + 0x30], 0
je 0x55ff51
mov eax, dword [ebp - 0x14]
mov byte [eax + 0x32], 1
mov eax, dword [ebp - 8]
mov word [eax], 0
inc dword [ebp - 0x10]
dec dword [ebp - 0x1c]
jne 0x55ff2b
jmp 0x560bac
test byte [ebp + 8], 2
je 0x55ff91
mov eax, dword [0x6e4734]
mov eax, dword [eax + 0x26c]
call fcn.0044f86c
mov edx, dword [ebp - 8]
cmp ax, word [edx]
jne 0x55ff91
mov eax, dword [ebp - 8]
mov word [eax], 0
jmp 0x560bac
test byte [ebp + 8], 2
je 0x5600b1
mov eax, dword [0x6e4734]
mov eax, dword [eax + 0x270]
call fcn.0044f86c
mov edx, dword [ebp - 8]
cmp ax, word [edx]
jne 0x5600b1
mov eax, dword [0x6e4410]
cmp dword [eax], 0
je 0x5600a4
mov eax, dword [0x6e4410]
mov eax, dword [eax]
cmp byte [eax + 0x12], 0
jne 0x5600a4
mov eax, dword [0x6e4410]
mov eax, dword [eax]
mov edx, dword [eax + 0x98]
mov eax, dword [0x6e39ec]
mov eax, dword [eax]
mov ecx, dword [eax]
call dword [ecx + 0x54]
mov dword [ebp - 0x10], eax
cmp dword [ebp - 0x10], 0xffffffff
jne 0x560054
mov eax, dword [0x6e4410]
mov eax, dword [eax]
mov edx, dword [eax + 0x98]
mov eax, dword [0x6e39ec]
mov eax, dword [eax]
mov ecx, dword [eax]
call dword [ecx + 0x38]
lea eax, [ebp - 0x34]
push eax
lea edx, [ebp - 0x38]
mov eax, 0x55fbf0
call fcn.004078ac
mov eax, dword [ebp - 0x38]
push eax
mov eax, dword [0x6e4410]
mov eax, dword [eax]
mov eax, dword [eax + 0x98]
mov dword [ebp - 0x40], eax
mov byte [ebp - 0x3c], 0xb
lea edx, [ebp - 0x40]
xor ecx, ecx
pop eax
call fcn.0040b9d8
mov edx, dword [ebp - 0x34]
mov eax, dword [0x6ef078]
call fcn.005a6800
jmp 0x5600a4
mov eax, dword [0x6e39ec]
mov eax, dword [eax]
mov edx, dword [ebp - 0x10]
mov ecx, dword [eax]
call dword [ecx + 0x48]
lea eax, [ebp - 0x44]
push eax
lea edx, [ebp - 0x48]
mov eax, 0x55fbf8
call fcn.004078ac
mov eax, dword [ebp - 0x48]
push eax
mov eax, dword [0x6e4410]
mov eax, dword [eax]
mov eax, dword [eax + 0x98]
mov dword [ebp - 0x40], eax
mov byte [ebp - 0x3c], 0xb
lea edx, [ebp - 0x40]
xor ecx, ecx
pop eax
call fcn.0040b9d8
mov edx, dword [ebp - 0x44]
mov eax, dword [0x6ef078]
call fcn.005a6800
mov eax, dword [ebp - 8]
mov word [eax], 0
jmp 0x560bac
test byte [ebp + 8], 2
je 0x5600dc
mov eax, dword [0x6e4734]
mov eax, dword [eax + 0x274]
call fcn.0044f86c
mov edx, dword [ebp - 8]
cmp ax, word [edx]
jne 0x5600dc
mov eax, dword [ebp - 8]
mov word [eax], 0
jmp 0x560bac
test byte [ebp + 8], 2
je 0x560107
mov eax, dword [0x6e4734]
mov eax, dword [eax + 0x278]
call fcn.0044f86c
mov edx, dword [ebp - 8]
cmp ax, word [edx]
jne 0x560107
mov eax, dword [ebp - 8]
mov word [eax], 0
jmp 0x560bac
test byte [ebp + 8], 2
je 0x560132
mov eax, dword [0x6e4734]
mov eax, dword [eax + 0x27c]
call fcn.0044f86c
mov edx, dword [ebp - 8]
cmp ax, word [edx]
jne 0x560132
mov eax, dword [ebp - 8]
mov word [eax], 0
jmp 0x560bac
test byte [ebp + 8], 2
je 0x56019d
mov eax, dword [0x6e4734]
mov eax, dword [eax + 0x280]
call fcn.0044f86c
mov edx, dword [ebp - 8]
cmp ax, word [edx]
jne 0x56019d
call sub.kernel32.dll_GetTickCount_1
mov edx, dword [ebp - 4]
cmp eax, dword [edx + 0x440]
jbe 0x56019d
mov eax, dword [0x6e46a4]
mov byte [eax], 1
call sub.kernel32.dll_GetTickCount_1
add eax, 0x1f4
mov edx, dword [ebp - 4]
mov dword [edx + 0x440], eax
push 0
push 0
push 0
xor ecx, ecx
mov edx, 0x51
mov eax, dword [ebp - 4]
call fcn.0056d958
mov eax, dword [ebp - 8]
mov word [eax], 0
jmp 0x560bac
test byte [ebp + 8], 2
je 0x5601c8
mov eax, dword [0x6e4734]
mov eax, dword [eax + 0x284]
call fcn.0044f86c
mov edx, dword [ebp - 8]
cmp ax, word [edx]
jne 0x5601c8
mov eax, dword [ebp - 8]
mov word [eax], 0
jmp 0x560bac
test byte [ebp + 8], 2
je 0x560285
mov eax, dword [0x6e4734]
mov eax, dword [eax + 0x288]
call fcn.0044f86c
mov edx, dword [ebp - 8]
cmp ax, word [edx]
jne 0x560285
mov eax, dword [0x6e3994]
mov eax, dword [eax]
mov eax, dword [eax + 0x6ac]
mov edx, dword [eax]
call dword [edx + 0xd8]
mov edx, eax
xor dl, 1
mov eax, dword [0x6e3994]
mov eax, dword [eax]
mov eax, dword [eax + 0x6ac]
mov ecx, dword [eax]
call dword [ecx + 0xdc]
mov eax, dword [0x6e3994]
mov eax, dword [eax]
mov eax, dword [eax + 0x6ac]
mov edx, dword [eax]
call dword [edx + 0xd8]
test al, al
je 0x560258
mov al, 0xff
call fcn.0055ba98
push eax
mov al, 0xdb
call fcn.0055ba98
mov ecx, eax
mov edx, 0x56111c
mov eax, dword [0x6ef078]
call fcn.005a6c90
jmp 0x560278
mov al, 0xff
call fcn.0055ba98
push eax
mov al, 0xdb
call fcn.0055ba98
mov ecx, eax
mov edx, 0x561134
mov eax, dword [0x6ef078]
call fcn.005a6c90
mov eax, dword [ebp - 8]
mov word [eax], 0
jmp 0x560bac
test byte [ebp + 8], 2
je 0x5602fb
mov eax, dword [0x6e4734]
mov eax, dword [eax + 0x28c]
call fcn.0044f86c
mov edx, dword [ebp - 8]
cmp ax, word [edx]
jne 0x5602fb
mov eax, dword [0x6e3c70]
cmp dword [eax], 0
jne 0x5602d5
mov eax, dword [0x6e3c70]
mov eax, dword [eax]
mov ecx, dword [ebp - 4]
or edx, 0xffffffff
mov ebx, dword [eax]
call dword [ebx + 0x2c]
mov edx, dword [0x6e3c70]
mov dword [edx], eax
mov eax, dword [0x6e3c70]
mov eax, dword [eax]
call fcn.004788e8
jmp 0x5602ee
mov eax, dword [0x6e3c70]
mov eax, dword [eax]
mov dl, byte [eax + 0x57]
xor dl, 1
mov eax, dword [0x6e3c70]
mov eax, dword [eax]
call fcn.00473fe0
mov eax, dword [ebp - 8]
mov word [eax], 0
jmp 0x560bac
test byte [ebp + 8], 2
je 0x560326
mov eax, dword [0x6e4734]
mov eax, dword [eax + 0x290]
call fcn.0044f86c
mov edx, dword [ebp - 8]
cmp ax, word [edx]
jne 0x560326
mov eax, dword [ebp - 8]
mov word [eax], 0
jmp 0x560bac
test byte [ebp + 8], 2
je 0x560446
mov eax, dword [0x6e4734]
mov eax, dword [eax + 0x294]
call fcn.0044f86c
mov edx, dword [ebp - 8]
cmp ax, word [edx]
jne 0x560446
mov eax, dword [0x6e4410]
cmp dword [eax], 0
je 0x560439
mov eax, dword [0x6e4410]
mov eax, dword [eax]
cmp byte [eax + 0x12], 0
jne 0x560439
mov eax, dword [0x6e4410]
mov eax, dword [eax]
mov edx, dword [eax + 0x98]
mov eax, dword [0x6e4140]
mov eax, dword [eax]
mov ecx, dword [eax]
call dword [ecx + 0x54]
mov dword [ebp - 0x10], eax
cmp dword [ebp - 0x10], 0xffffffff
jne 0x5603e9
mov eax, dword [0x6e4410]
mov eax, dword [eax]
mov edx, dword [eax + 0x98]
mov eax, dword [0x6e4140]
mov eax, dword [eax]
mov ecx, dword [eax]
call dword [ecx + 0x38]
lea eax, [ebp - 0x4c]
push eax
lea edx, [ebp - 0x50]
mov eax, 0x55fc00
call fcn.004078ac
mov eax, dword [ebp - 0x50]
push eax
mov eax, dword [0x6e4410]
mov eax, dword [eax]
mov eax, dword [eax + 0x98]
mov dword [ebp - 0x40], eax
mov byte [ebp - 0x3c], 0xb
lea edx, [ebp - 0x40]
xor ecx, ecx
pop eax
call fcn.0040b9d8
mov edx, dword [ebp - 0x4c]
mov eax, dword [0x6ef078]
call fcn.005a6800
jmp 0x560439
mov eax, dword [0x6e4140]
mov eax, dword [eax]
mov edx, dword [ebp - 0x10]
mov ecx, dword [eax]
call dword [ecx + 0x48]
lea eax, [ebp - 0x54]
push eax
lea edx, [ebp - 0x58]
mov eax, 0x55fc08
call fcn.004078ac
mov eax, dword [ebp - 0x58]
push eax
mov eax, dword [0x6e4410]
mov eax, dword [eax]
mov eax, dword [eax + 0x98]
mov dword [ebp - 0x40], eax
mov byte [ebp - 0x3c], 0xb
lea edx, [ebp - 0x40]
xor ecx, ecx
pop eax
call fcn.0040b9d8
mov edx, dword [ebp - 0x54]
mov eax, dword [0x6ef078]
call fcn.005a6800
mov eax, dword [ebp - 8]
mov word [eax], 0
jmp 0x560bac
test byte [ebp + 8], 2
je 0x560471
mov eax, dword [0x6e4734]
mov eax, dword [eax + 0x298]
call fcn.0044f86c
mov edx, dword [ebp - 8]
cmp ax, word [edx]
jne 0x560471
mov eax, dword [ebp - 8]
mov word [eax], 0
jmp 0x560bac
test byte [ebp + 8], 2
je 0x5604a6
mov eax, dword [0x6e4734]
mov eax, dword [eax + 0x29c]
call fcn.0044f86c
mov edx, dword [ebp - 8]
cmp ax, word [edx]
jne 0x5604a6
mov dl, 1
mov eax, dword [ebp - 4]
call fcn.0055e8d0
mov eax, dword [ebp - 8]
mov word [eax], 0
jmp 0x560bac
test byte [ebp + 8], 2
je 0x5604d9
mov eax, dword [0x6e4734]
mov eax, dword [eax + 0x2a0]
call fcn.0044f86c
mov edx, dword [ebp - 8]
cmp ax, word [edx]
jne 0x5604d9
mov eax, dword [ebp - 4]
call fcn.00478740
mov eax, dword [ebp - 8]
mov word [eax], 0
jmp 0x560bac
test byte [ebp + 8], 2
je 0x560592
mov eax, dword [0x6e4734]
mov eax, dword [eax + 0x2a4]
call fcn.0044f86c
mov edx, dword [ebp - 8]
cmp ax, word [edx]
jne 0x560592
mov eax, dword [0x6e4734]
cmp byte [eax + 0x70], 0
je 0x560592
mov ecx, dword [0x6e3f88]
mov ecx, dword [ecx]
mov edx, dword [0x6e40c0]
mov edx, dword [edx]
mov eax, dword [0x6ef0b4]
call fcn.0061db98
test al, al
je 0x560576
push 0x56114c
lea edx, [ebp - 0x60]
mov eax, dword [0x6e40c0]
mov eax, dword [eax]
call fcn.0040a650
push dword [ebp - 0x60]
push 0x56115c
lea edx, [ebp - 0x64]
mov eax, dword [0x6e3f88]
mov eax, dword [eax]
call fcn.0040a650
push dword [ebp - 0x64]
lea eax, [ebp - 0x5c]
mov edx, 4
call fcn.00405768
mov edx, dword [ebp - 0x5c]
mov eax, dword [0x6ef074]
call fcn.0056ec2c
jmp 0x560585
mov edx, 0x561168
mov eax, dword [0x6ef074]
call fcn.0056ec2c
mov eax, dword [ebp - 8]
mov word [eax], 0
jmp 0x560bac
test byte [ebp + 8], 4
je 0x5605bd
mov eax, dword [0x6e4734]
mov eax, dword [eax + 0x2a8]
call fcn.0044f86c
mov edx, dword [ebp - 8]
cmp ax, word [edx]
jne 0x5605bd
mov eax, dword [ebp - 8]
mov word [eax], 0
jmp 0x560bac
test byte [ebp + 8], 4
je 0x5605e8
mov eax, dword [0x6e4734]
mov eax, dword [eax + 0x2ac]
call fcn.0044f86c
mov edx, dword [ebp - 8]
cmp ax, word [edx]
jne 0x5605e8
mov eax, dword [ebp - 8]
mov word [eax], 0
jmp 0x560bac
test byte [ebp + 8], 4
je 0x560613
mov eax, dword [0x6e4734]
mov eax, dword [eax + 0x2b0]
call fcn.0044f86c
mov edx, dword [ebp - 8]
cmp ax, word [edx]
jne 0x560613
mov eax, dword [ebp - 8]
mov word [eax], 0
jmp 0x560bac
test byte [ebp + 8], 4
je 0x560745
mov eax, dword [0x6e4734]
mov eax, dword [eax + 0x2b4]
call fcn.0044f86c
mov edx, dword [ebp - 8]
cmp ax, word [edx]
jne 0x560745
mov eax, dword [0x6e3994]
mov eax, dword [eax]
mov eax, dword [eax + 0x81c]
mov edx, dword [eax]
call dword [edx + 0xd8]
mov edx, eax
xor dl, 1
mov eax, dword [0x6e3994]
mov eax, dword [eax]
mov eax, dword [eax + 0x81c]
mov ecx, dword [eax]
call dword [ecx + 0xdc]
mov eax, dword [0x6e3994]
mov eax, dword [eax]
mov eax, dword [eax + 0x81c]
mov edx, dword [eax]
call dword [edx + 0xd8]
mov edx, dword [0x6e4734]
mov byte [edx + 0x71], al
mov eax, dword [0x6e4734]
cmp byte [eax + 0x71], 0
je 0x5606b3
mov al, 0xff
call fcn.0055ba98
push eax
mov al, 0xdb
call fcn.0055ba98
mov ecx, eax
mov edx, 0x561178
mov eax, dword [0x6ef078]
call fcn.005a6c90
jmp 0x5606d3
mov al, 0xff
call fcn.0055ba98
push eax
mov al, 0xdb
call fcn.0055ba98
mov ecx, eax
mov edx, 0x561190
mov eax, dword [0x6ef078]
call fcn.005a6c90
mov eax, dword [0x6e4734]
cmp byte [eax + 0x71], 0
je 0x560726
mov eax, dword [0x6e4734]
cmp byte [eax + 0x2ec], 0
je 0x560726
mov eax, dword [0x6ef074]
mov eax, dword [eax + 0x398]
mov dl, 1
call fcn.0044af80
mov eax, dword [0x6e4734]
mov eax, dword [eax + 0x2fc]
call fcn.0040a78c
imul edx, eax, 0x3e8
mov eax, dword [0x6ef074]
mov eax, dword [eax + 0x398]
call fcn.0044af90
jmp 0x560738
mov eax, dword [0x6ef074]
mov eax, dword [eax + 0x398]
xor edx, edx
call fcn.0044af80
mov eax, dword [ebp - 8]
mov word [eax], 0
jmp 0x560bac
test byte [ebp + 8], 4
je 0x560770
mov eax, dword [0x6e4734]
mov eax, dword [eax + 0x2b8]
call fcn.0044f86c
mov edx, dword [ebp - 8]
cmp ax, word [edx]
jne 0x560770
mov eax, dword [ebp - 8]
mov word [eax], 0
jmp 0x560bac
test byte [ebp + 8], 4
je 0x56082d
mov eax, dword [0x6e4734]
mov eax, dword [eax + 0x2bc]
call fcn.0044f86c
mov edx, dword [ebp - 8]
cmp ax, word [edx]
jne 0x56082d
mov eax, dword [0x6e3994]
mov eax, dword [eax]
mov eax, dword [eax + 0x690]
mov edx, dword [eax]
call dword [edx + 0xd8]
mov edx, eax
xor dl, 1
mov eax, dword [0x6e3994]
mov eax, dword [eax]
mov eax, dword [eax + 0x690]
mov ecx, dword [eax]
call dword [ecx + 0xdc]
mov eax, dword [0x6e3994]
mov eax, dword [eax]
mov eax, dword [eax + 0x690]
mov edx, dword [eax]
call dword [edx + 0xd8]
test al, al
je 0x560800
mov al, 0xff
call fcn.0055ba98
push eax
mov al, 0xdb
call fcn.0055ba98
mov ecx, eax
mov edx, 0x5611a8
mov eax, dword [0x6ef078]
call fcn.005a6c90
jmp 0x560820
mov al, 0xff
call fcn.0055ba98
push eax
mov al, 0xdb
call fcn.0055ba98
mov ecx, eax
mov edx, 0x5611c0
mov eax, dword [0x6ef078]
call fcn.005a6c90
mov eax, dword [ebp - 8]
mov word [eax], 0
jmp 0x560bac
test byte [ebp + 8], 4
je 0x560963
mov eax, dword [0x6e4734]
mov eax, dword [eax + 0x2c0]
call fcn.0044f86c
mov edx, dword [ebp - 8]
cmp ax, word [edx]
jne 0x560963
mov eax, dword [0x6e3994]
mov eax, dword [eax]
mov eax, dword [eax + 0x7f0]
mov edx, dword [eax]
call dword [edx + 0xd8]
test al, al
je 0x56089d
mov eax, dword [0x6e3994]
mov eax, dword [eax]
mov eax, dword [eax + 0x7f4]
mov edx, dword [eax]
call dword [edx + 0xd8]
mov edx, eax
xor dl, 1
mov eax, dword [0x6e3994]
mov eax, dword [eax]
mov eax, dword [eax + 0x7f4]
mov ecx, dword [eax]
call dword [ecx + 0xdc]
jmp 0x5608fb
mov eax, dword [0x6e3994]
mov eax, dword [eax]
mov eax, dword [eax + 0x7f0]
mov edx, dword [eax]
call dword [edx + 0xd8]
mov edx, eax
xor dl, 1
mov eax, dword [0x6e3994]
mov eax, dword [eax]
mov eax, dword [eax + 0x7f0]
mov ecx, dword [eax]
call dword [ecx + 0xdc]
mov eax, dword [0x6e3994]
mov eax, dword [eax]
mov eax, dword [eax + 0x7f4]
mov edx, dword [eax]
call dword [edx + 0xd8]
mov edx, eax
xor dl, 1
mov eax, dword [0x6e3994]
mov eax, dword [eax]
mov eax, dword [eax + 0x7f4]
mov ecx, dword [eax]
call dword [ecx + 0xdc]
mov eax, dword [0x6e3994]
mov eax, dword [eax]
mov eax, dword [eax + 0x7f4]
mov edx, dword [eax]
call dword [edx + 0xd8]
test al, al
je 0x560936
mov al, 0xff
call fcn.0055ba98
push eax
mov al, 0xdb
call fcn.0055ba98
mov ecx, eax
mov edx, 0x5611d8
mov eax, dword [0x6ef078]
call fcn.005a6c90
jmp 0x560956
mov al, 0xff
call fcn.0055ba98
push eax
mov al, 0xdb
call fcn.0055ba98
mov ecx, eax
mov edx, 0x5611f0
mov eax, dword [0x6ef078]
call fcn.005a6c90
mov eax, dword [ebp - 8]
mov word [eax], 0
jmp 0x560bac
test byte [ebp + 8], 4
je 0x56098e
mov eax, dword [0x6e4734]
mov eax, dword [eax + 0x2c4]
call fcn.0044f86c
mov edx, dword [ebp - 8]
cmp ax, word [edx]
jne 0x56098e
mov eax, dword [ebp - 8]
mov word [eax], 0
jmp 0x560bac
test byte [ebp + 8], 4
je 0x5609b9
mov eax, dword [0x6e4734]
mov eax, dword [eax + 0x2c8]
call fcn.0044f86c
mov edx, dword [ebp - 8]
cmp ax, word [edx]
jne 0x5609b9
mov eax, dword [ebp - 8]
mov word [eax], 0
jmp 0x560bac
test byte [ebp + 8], 4
je 0x5609e4
mov eax, dword [0x6e4734]
mov eax, dword [eax + 0x2cc]
call fcn.0044f86c
mov edx, dword [ebp - 8]
cmp ax, word [edx]
jne 0x5609e4
mov eax, dword [ebp - 8]
mov word [eax], 0
jmp 0x560bac
test byte [ebp + 8], 4
je 0x560a0f
mov eax, dword [0x6e4734]
mov eax, dword [eax + 0x2d0]
call fcn.0044f86c
mov edx, dword [ebp - 8]
cmp ax, word [edx]
jne 0x560a0f
mov eax, dword [ebp - 8]
mov word [eax], 0
jmp 0x560bac
test byte [ebp + 8], 4
je 0x560ac6
mov eax, dword [0x6e4734]
mov eax, dword [eax + 0x2d4]
call fcn.0044f86c
mov edx, dword [ebp - 8]
cmp ax, word [edx]
jne 0x560ac6
mov eax, dword [0x6e3994]
mov eax, dword [eax]
mov eax, dword [eax + 0x444]
mov edx, dword [eax]
call dword [edx + 0xd8]
mov edx, eax
xor dl, 1
mov eax, dword [0x6e3994]
mov eax, dword [eax]
mov eax, dword [eax + 0x444]
mov ecx, dword [eax]
call dword [ecx + 0xdc]
mov eax, dword [0x6e3994]
mov eax, dword [eax]
mov eax, dword [eax + 0x444]
mov edx, dword [eax]
call dword [edx + 0xd8]
test al, al
je 0x560a9c
push 0xffffff
mov al, 0xdb
call fcn.0055ba98
mov ecx, eax
mov edx, 0x561208
mov eax, dword [0x6ef078]
call fcn.005a6c90
jmp 0x560ab9
push 0xffffff
mov al, 0xdb
call fcn.0055ba98
mov ecx, eax
mov edx, 0x561220
mov eax, dword [0x6ef078]
call fcn.005a6c90
mov eax, dword [ebp - 8]
mov word [eax], 0
jmp 0x560bac
test byte [ebp + 8], 4
je 0x560af1
mov eax, dword [0x6e4734]
mov eax, dword [eax + 0x2d8]
call fcn.0044f86c
mov edx, dword [ebp - 8]
cmp ax, word [edx]
jne 0x560af1
mov eax, dword [ebp - 8]
mov word [eax], 0
jmp 0x560bac
test byte [ebp + 8], 4
je 0x560b29
mov eax, dword [0x6e4734]
mov eax, dword [eax + 0x2dc]
call fcn.0044f86c
mov edx, dword [ebp - 8]
cmp ax, word [edx]
jne 0x560b29
mov edx, 0x561238
mov eax, dword [ebp - 4]
call fcn.0056ec2c
mov eax, dword [ebp - 8]
mov word [eax], 0
jmp 0x560bac
test byte [ebp + 8], 4
je 0x560b51
mov eax, dword [0x6e4734]
mov eax, dword [eax + 0x2e0]
call fcn.0044f86c
mov edx, dword [ebp - 8]
cmp ax, word [edx]
jne 0x560b51
mov eax, dword [ebp - 8]
mov word [eax], 0
jmp 0x560bac
test byte [ebp + 8], 4
je 0x560b86
mov eax, dword [0x6e4734]
mov eax, dword [eax + 0x2e4]
call fcn.0044f86c
mov edx, dword [ebp - 8]
cmp ax, word [edx]
jne 0x560b86
mov edx, 0x561248
mov eax, dword [ebp - 4]
call fcn.0056ec2c
mov eax, dword [ebp - 8]
mov word [eax], 0
jmp 0x560bac
test byte [ebp + 8], 4
je 0x560bac
mov eax, dword [0x6e4734]
mov eax, dword [eax + 0x2e8]
call fcn.0044f86c
mov edx, dword [ebp - 8]
cmp ax, word [edx]
jne 0x560bac
mov eax, dword [ebp - 8]
mov word [eax], 0
mov eax, dword [0x6e3994]
mov eax, dword [eax]
mov eax, dword [eax + 0x80c]
mov eax, dword [eax + 0x278]
call fcn.004ad464
dec eax
test eax, eax
jl 0x560d35
inc eax
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x10], 0
mov eax, dword [0x6e3994]
mov eax, dword [eax]
mov eax, dword [eax + 0x80c]
mov eax, dword [eax + 0x278]
mov edx, dword [ebp - 0x10]
call fcn.004ad49c
mov dword [ebp - 0x18], eax
mov eax, dword [ebp - 0x18]
cmp dword [eax + 0x24], 0
je 0x560cbb
lea ecx, [ebp - 0x68]
mov eax, dword [ebp - 0x18]
mov eax, dword [eax + 8]
mov edx, 1
mov ebx, dword [eax]
call dword [ebx + 0xc]
cmp dword [ebp - 0x68], 0
je 0x560cbb
lea ecx, [ebp - 0x6c]
mov eax, dword [ebp - 0x18]
mov eax, dword [eax + 8]
mov edx, 1
mov ebx, dword [eax]
call dword [ebx + 0xc]
mov eax, dword [ebp - 0x6c]
call fcn.0044f86c
mov edx, dword [ebp - 8]
cmp ax, word [edx]
jne 0x560cbb
call sub.kernel32.dll_GetTickCount_1
mov edx, dword [ebp - 4]
cmp eax, dword [edx + 0x440]
jbe 0x560cbb
call sub.kernel32.dll_GetTickCount_1
add eax, 0x1f4
mov edx, dword [ebp - 4]
mov dword [edx + 0x440], eax
call sub.kernel32.dll_GetTickCount_1
mov edx, dword [0x6e40ec]
mov dword [edx], eax
mov eax, dword [0x6e3f84]
xor edx, edx
mov dword [eax], edx
mov eax, dword [0x6e43e4]
mov eax, dword [eax]
mov edx, dword [ebp - 0x10]
call fcn.0041f32c
push eax
push 0
mov ecx, dword [0x6e47ac]
mov ecx, dword [ecx]
mov edx, dword [0x6e495c]
mov edx, dword [edx]
mov eax, dword [ebp - 4]
call fcn.00562d30
mov eax, dword [ebp - 8]
mov word [eax], 0
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x561091
inc dword [ebp - 0x10]
dec dword [ebp - 0x1c]
jne 0x560bd8
jmp 0x560d35
mov eax, dword [ebp - 8]
mov ax, word [eax]
sub ax, 0x41
je 0x560d22
sub ax, 7
je 0x560ce9
sub ax, 9
je 0x560d10
sub ax, 7
je 0x560cfe
jmp 0x560d35
test byte [ebp + 8], 4
je 0x560d35
mov edx, 0x561248
mov eax, dword [ebp - 4]
call fcn.0056ec2c
jmp 0x560d35
test byte [ebp + 8], 2
je 0x560d35
mov dl, 1
mov eax, dword [ebp - 4]
call fcn.0055e8d0
jmp 0x560d35
test byte [ebp + 8], 2
je 0x560d35
mov eax, dword [0x6ef074]
call fcn.00478740
jmp 0x560d35
test byte [ebp + 8], 4
je 0x560d35
mov edx, 0x561238
mov eax, dword [ebp - 4]
call fcn.0056ec2c
mov eax, dword [ebp - 8]
movzx eax, word [eax]
cmp eax, 0x78
jg 0x560d65
je 0x560e17
sub eax, 0x46
je 0x560e91
sub eax, 0xd
je 0x560f5c
add eax, 0xffffffe3
sub eax, 8
jb 0x560d81
jmp 0x560f97
sub eax, 0x79
je 0x560e28
dec eax
je 0x560e50
dec eax
je 0x560e72
jmp 0x560f97
call sub.kernel32.dll_GetTickCount_1
mov edx, dword [0x6e40ec]
sub eax, dword [edx]
mov edx, dword [0x6e4298]
mov edx, dword [edx]
mov ecx, dword [0x6e3f84]
add edx, dword [ecx]
cmp eax, edx
jbe 0x560e0a
mov eax, dword [0x6e42cc]
mov eax, dword [eax]
cmp byte [eax + 0x1b], 0
je 0x560dbd
mov eax, dword [0x6e4734]
cmp byte [eax + 0x222], 0
je 0x560e0a
mov eax, dword [0x6e42cc]
mov eax, dword [eax]
cmp byte [eax + 0x6d], 0
jne 0x560e0a
test byte [ebp + 8], 4
je 0x560de6
mov eax, dword [ebp - 8]
mov ax, word [eax]
sub ax, 0x64
mov edx, dword [ebp - 4]
mov word [edx + 0x3dc], ax
jmp 0x560df6
mov eax, dword [ebp - 8]
mov ax, word [eax]
mov edx, dword [ebp - 4]
mov word [edx + 0x3dc], ax
mov eax, dword [ebp - 4]
mov ax, word [eax + 0x3dc]
mov edx, dword [ebp - 4]
mov word [edx + 0x3de], ax
mov eax, dword [ebp - 8]
mov word [eax], 0
jmp 0x560f97
mov eax, dword [0x6e4a7c]
mov eax, dword [eax]
call fcn.005da884
jmp 0x560f97
mov eax, dword [0x6e4a7c]
mov eax, dword [eax]
xor edx, edx
mov dword [eax + 0xe68], edx
mov eax, dword [0x6e4a7c]
mov eax, dword [eax]
call fcn.005da744
mov eax, dword [ebp - 8]
mov word [eax], 0
jmp 0x560f97
mov eax, dword [0x6e4a7c]
mov eax, dword [eax]
mov dword [eax + 0xe68], 3
mov eax, dword [0x6e4a7c]
mov eax, dword [eax]
call fcn.005da744
jmp 0x560f97
mov eax, dword [0x6e42cc]
cmp dword [eax], 0
je 0x560f97
mov eax, dword [0x6e4a7c]
mov eax, dword [eax]
call fcn.0060ab08
jmp 0x560f97
test byte [ebp + 8], 4
je 0x560f97
mov eax, dword [0x6e4488]
cmp dword [eax], 7
jge 0x560eae
mov eax, dword [0x6e4488]
inc dword [eax]
jmp 0x560eb7
mov eax, dword [0x6e4488]
xor edx, edx
mov dword [eax], edx
mov eax, dword [0x6e4510]
mov edx, dword [0x6e4488]
mov edx, dword [edx]
mov ecx, dword [0x6e4ae8]
mov edx, dword [ecx + edx*4]
call fcn.00405428
mov edx, dword [0x6e4510]
mov edx, dword [edx]
mov eax, dword [0x6ef074]
mov eax, dword [eax + 0x68]
call fcn.00430c98
mov eax, dword [0x6ef074]
call fcn.00475200
mov eax, dword [eax + 0xc]
mov edx, dword [0x6e4510]
mov edx, dword [edx]
call fcn.00430c98
mov edx, dword [0x6e4510]
mov edx, dword [edx]
mov eax, dword [0x6e4a7c]
mov eax, dword [eax]
mov eax, dword [eax + 0xc1c]
mov eax, dword [eax + 0x68]
call fcn.00430c98
mov ecx, 0x56125c
mov dl, 1
mov eax, dword [0x42cf84]
call fcn.0042d03c
mov dword [ebp - 0xc], eax
cmp dword [ebp - 0xc], 0
je 0x560f97
mov eax, dword [0x6e4510]
mov eax, dword [eax]
push eax
mov ecx, 0x561270
mov edx, 0x561284
mov eax, dword [ebp - 0xc]
mov ebx, dword [eax]
call dword [ebx + 4]
mov eax, dword [ebp - 0xc]
call fcn.00404454
jmp 0x560f97
test byte [ebp + 8], 4
je 0x560f97
mov eax, dword [0x6e4078]
cmp dword [eax], 0
je 0x560f97
call sub.kernel32.dll_GetTickCount_1
mov edx, dword [ebp - 4]
cmp eax, dword [edx + 0x440]
jbe 0x560f97
call sub.kernel32.dll_GetTickCount_1
add eax, 0x3e8
mov edx, dword [ebp - 4]
mov dword [edx + 0x440], eax
mov eax, dword [ebp - 4]
call fcn.005898d4
mov eax, dword [ebp - 8]
mov ax, word [eax]
sub ax, 0x21
je 0x560ffc
dec ax
je 0x56101e
sub ax, 4
je 0x560fb9
sub ax, 2
je 0x560fd5
jmp 0x561073
mov eax, dword [0x6ef078]
cmp dword [eax + 0x44], 0
jle 0x561073
mov eax, dword [0x6ef078]
dec dword [eax + 0x44]
jmp 0x561073
mov eax, dword [0x6ef078]
mov eax, dword [eax + 0x34]
mov edx, dword [eax]
call dword [edx + 0x14]
dec eax
mov edx, dword [0x6ef078]
cmp eax, dword [edx + 0x44]
jle 0x561073
mov eax, dword [0x6ef078]
inc dword [eax + 0x44]
jmp 0x561073
mov eax, dword [0x6ef078]
cmp dword [eax + 0x44], 9
jle 0x561012
mov eax, dword [0x6ef078]
sub dword [eax + 0x44], 9
jmp 0x561073
mov eax, dword [0x6ef078]
xor edx, edx
mov dword [eax + 0x44], edx
jmp 0x561073
mov eax, dword [0x6ef078]
mov eax, dword [eax + 0x34]
mov edx, dword [eax]
call dword [edx + 0x14]
dec eax
mov edx, dword [0x6ef078]
mov edx, dword [edx + 0x44]
add edx, 9
cmp eax, edx
jle 0x561047
mov eax, dword [0x6ef078]
add dword [eax + 0x44], 9
jmp 0x56105e
mov eax, dword [0x6ef078]
mov eax, dword [eax + 0x34]
mov edx, dword [eax]
call dword [edx + 0x14]
dec eax
mov edx, dword [0x6ef078]
mov dword [edx + 0x44], eax
mov eax, dword [0x6ef078]
cmp dword [eax + 0x44], 0
jge 0x561073
mov eax, dword [0x6ef078]
xor edx, edx
mov dword [eax + 0x44], edx
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x561091
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
push 0x5610c8
lea eax, [ebp - 0x6c]
mov edx, 0xb
call fcn.004053f8
lea eax, [ebp - 0x38]
mov edx, 4
call fcn.004053f8
lea eax, [ebp - 0x24]
call fcn.004053d4
ret