Function at 0x87ef3c
Capabilities:
Check os version
Get number of processors
Resolve function by parsing pe exports

Disassembly:
push ebp
mov ebp, esp
mov ecx, 0x45
push 0
push 0
dec ecx
jne 0x87ef44
push ebx
push esi
push edi
mov dword [ebp - 0x60], edx
mov ebx, eax
xor eax, eax
push ebp
push 0x880f3f
push dword fs:[eax]
mov dword fs:[eax], esp
mov dl, 1
mov eax, dword [0x87ea8c]
call fcn.0040999c
mov dword [ebp - 0x90], eax
lea eax, [ebp - 0x5c]
mov edx, dword [ebp - 0x90]
test edx, edx
je 0x87ef83
sub edx, 0xfffffff8
call fcn.00410d98
mov eax, dword [ebp - 0x90]
mov dword [eax + 0x10], ebx
call fcn.0075081c
test al, al
jne 0x87efa1
push 0
call fcn.007507dc
call fcn.0075081c
test al, al
jne 0x87efb1
push 0
call fcn.007507dc
lea edx, [ebp - 0x58]
mov eax, 0x880f5c
call fcn.0043b77c
lea edx, [ebp - 0x178]
mov eax, 0x23
call fcn.007439cc
mov edx, dword [ebp - 0x178]
mov eax, dword [ebp - 0x90]
mov eax, dword [eax + 0x10]
add eax, 0x28
call fcn.0040bca4
mov eax, dword [ebp - 0x90]
mov ebx, dword [eax + 0x10]
lea eax, [ebx + 0x28]
mov edx, 0x880f78
call fcn.0040ca34
mov eax, dword [ebp - 0x90]
mov eax, dword [eax + 0x10]
mov eax, dword [eax + 0x28]
mov dl, 1
call fcn.00430614
test al, al
jne 0x87f045
xor eax, eax
push ebp
push 0x87f03b
push dword fs:[eax]
mov dword fs:[eax], esp
mov eax, dword [ebp - 0x90]
mov eax, dword [eax + 0x10]
mov eax, dword [eax + 0x28]
call fcn.00430e28
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x87f045
mov eax, 0xa
call fcn.004c719c
mov eax, dword [ebp - 0x90]
mov eax, dword [eax + 0x10]
add eax, 0x30
call fcn.0040b8d8
lea edx, [ebp - 0x180]
mov eax, dword [0x8d24f8]
mov eax, dword [eax]
call fcn.005e90fc
mov eax, dword [ebp - 0x180]
lea edx, [ebp - 0x17c]
call fcn.00430aac
mov edx, dword [ebp - 0x17c]
mov eax, dword [ebp - 0x90]
mov eax, dword [eax + 0x10]
add eax, 0x28
call fcn.0040bca4
mov eax, dword [ebp - 0x90]
mov eax, dword [eax + 0x10]
mov byte [eax + 0x54], 0
call fcn.00433768
fstp qword [ebp - 0x98]
wait
push dword [ebp - 0x94]
push dword [ebp - 0x98]
lea edx, [ebp - 0x184]
mov eax, dword [0x8d284c]
call fcn.00434764
mov edx, dword [ebp - 0x184]
mov eax, dword [ebp - 0x90]
add eax, 0x1c
call fcn.0040bca4
mov eax, dword [ebp - 0x90]
lea edx, [eax + 0x1c]
mov eax, dword [ebp - 0x90]
mov eax, dword [eax + 0x1c]
call fcn.0084a504
lea eax, [ebp - 0x188]
push eax
mov eax, dword [ebp - 0x90]
mov eax, dword [eax + 0x1c]
mov ecx, 4
mov edx, 5
call fcn.0040cc5c
push dword [ebp - 0x188]
lea eax, [ebp - 0x18c]
push eax
mov eax, dword [ebp - 0x90]
mov eax, dword [eax + 0x1c]
mov ecx, 2
mov edx, 3
call fcn.0040cc5c
push dword [ebp - 0x18c]
lea eax, [ebp - 0x190]
push eax
mov eax, dword [ebp - 0x90]
mov eax, dword [eax + 0x1c]
mov ecx, 2
mov edx, 1
call fcn.0040cc5c
push dword [ebp - 0x190]
mov eax, dword [ebp - 0x90]
mov eax, dword [eax + 0x10]
add eax, 0x58
mov edx, 3
call fcn.0040cb14
call fcn.004337c8
fstp qword [ebp - 0xa0]
wait
push dword [ebp - 0x9c]
push dword [ebp - 0xa0]
lea edx, [ebp - 0x194]
mov eax, dword [0x8d284c]
call fcn.00434788
mov edx, dword [ebp - 0x194]
mov eax, dword [ebp - 0x90]
add eax, 0x1c
call fcn.0040bca4
mov eax, dword [ebp - 0x90]
lea edx, [eax + 0x1c]
mov eax, dword [ebp - 0x90]
mov eax, dword [eax + 0x1c]
call fcn.0084a504
mov eax, dword [ebp - 0x90]
mov ebx, dword [eax + 0x10]
lea eax, [ebx + 0x58]
mov edx, dword [ebp - 0x90]
mov edx, dword [edx + 0x1c]
call fcn.0040ca34
mov eax, dword [ebp - 0x90]
mov eax, dword [eax + 0x10]
add eax, 0x2c
call fcn.0040b8b4
xor eax, eax
push ebp
push 0x87f237
push dword fs:[eax]
mov dword fs:[eax], esp
lea eax, [ebp - 0x198]
call fcn.0043e72c
mov edx, dword [ebp - 0x198]
mov eax, dword [ebp - 0x90]
mov eax, dword [eax + 0x10]
add eax, 0x2c
call fcn.0040bca4
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x87f241
mov eax, dword [ebp - 0x90]
mov ebx, dword [eax + 0x10]
cmp dword [ebx + 0x2c], 0
jne 0x87f254
mov al, 1
jmp 0x87f264
mov eax, dword [ebx + 0x2c]
test eax, eax
je 0x87f25e
mov eax, dword [eax - 4]
cmp eax, 0xa
setl al
test al, al
je 0x87f2ac
xor eax, eax
push ebp
push 0x87f2a2
push dword fs:[eax]
mov dword fs:[eax], esp
lea eax, [ebp - 0x19c]
call fcn.0043e72c
mov edx, dword [ebp - 0x19c]
mov eax, dword [ebp - 0x90]
mov eax, dword [eax + 0x10]
add eax, 0x2c
call fcn.0040bca4
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x87f2ac
lea eax, [ebp - 0xc]
mov edx, 0x880fa0
call fcn.0040bcec
lea eax, [ebp - 0x2c]
mov edx, 0x880fa0
call fcn.0040bcec
lea eax, [ebp - 0x10]
mov edx, 0x880fa0
call fcn.0040bcec
lea eax, [ebp - 0x34]
mov edx, 0x880fa0
call fcn.0040bcec
lea eax, [ebp - 0x14]
mov edx, 0x880fa0
call fcn.0040bcec
lea eax, [ebp - 0x20]
mov edx, 0x880fa0
call fcn.0040bcec
lea eax, [ebp - 0x30]
mov edx, 0x880fa0
call fcn.0040bcec
lea eax, [ebp - 0x28]
mov edx, 0x880fa0
call fcn.0040bcec
lea eax, [ebp - 0x24]
mov edx, 0x880fa0
call fcn.0040bcec
lea eax, [ebp - 0x18]
mov edx, 0x880fa0
call fcn.0040bcec
lea eax, [ebp - 0x1c]
mov edx, 0x880fa0
call fcn.0040bcec
mov eax, dword [ebp - 0x90]
add eax, 0x18
mov edx, 0x880fa0
call fcn.0040bca4
mov eax, dword [ebp - 0x90]
add eax, 0x14
mov edx, 0x880fa0
call fcn.0040bca4
lea eax, [ebp - 0x38]
mov edx, 0x880fa0
call fcn.0040bcec
lea eax, [ebp - 0x3c]
mov edx, 0x880fa0
call fcn.0040bcec
lea eax, [ebp - 0x40]
mov edx, 0x880fa0
call fcn.0040bcec
lea eax, [ebp - 0x44]
mov edx, 0x880fa0
call fcn.0040bcec
mov eax, dword [ebp - 0x90]
mov byte [eax + 0xd], 0
lea eax, [ebp - 0x48]
call fcn.0040b8b4
lea eax, [ebp - 0x4c]
call fcn.0040b8b4
lea eax, [ebp - 0x50]
call fcn.0040b8b4
lea eax, [ebp - 0x54]
call fcn.0040b8b4
mov eax, dword [ebp - 0x90]
add eax, 0x1c
call fcn.0040b8b4
mov eax, dword [ebp - 0x90]
mov eax, dword [eax + 0x10]
mov edx, dword [eax + 0x28]
lea eax, [ebp - 0x1a0]
mov ecx, 0x880fb0
call fcn.0040ca8c
mov eax, dword [ebp - 0x1a0]
mov dl, 1
call fcn.0043057c
cmp al, 1
jne 0x87f637
xor ebx, ebx
xor eax, eax
mov dword [ebp - 0x6c], eax
mov dl, 1
mov eax, dword [0x491020]
call fcn.0040999c
mov dword [ebp - 0x6c], eax
xor eax, eax
push ebp
push 0x87f456
push dword fs:[eax]
mov dword fs:[eax], esp
mov eax, dword [ebp - 0x90]
mov eax, dword [eax + 0x10]
mov edx, dword [eax + 0x28]
lea eax, [ebp - 0x1a4]
mov ecx, 0x880fb0
call fcn.0040ca8c
mov edx, dword [ebp - 0x1a4]
mov eax, dword [ebp - 0x6c]
call fcn.004ba868
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x87f462
test bl, bl
jne 0x87f600
mov eax, dword [ebp - 0x90]
add eax, 0x20
call fcn.0040b8d8
mov eax, dword [ebp - 0x6c]
mov edx, dword [eax]
call dword [edx + 0xc]
mov edx, eax
mov eax, dword [ebp - 0x90]
add eax, 0x20
xor ecx, ecx
call fcn.0040c438
mov eax, dword [ebp - 0x6c]
mov edx, dword [eax]
call dword [edx + 0xc]
push eax
mov eax, dword [ebp - 0x90]
add eax, 0x20
call fcn.0040be88
mov edx, eax
mov eax, dword [ebp - 0x6c]
mov eax, dword [eax + 4]
pop ecx
call fcn.00407720
push 0x880fd0
mov eax, dword [ebp - 0x90]
mov eax, dword [eax + 0x10]
push dword [eax + 0x3c]
push 0x88100c
lea eax, [ebp - 0x1b0]
mov edx, 3
call fcn.0040c1c4
mov edx, dword [ebp - 0x1b0]
lea eax, [ebp - 0x1ac]
call fcn.0040c8f4
push dword [ebp - 0x1ac]
mov eax, dword [ebp - 0x90]
mov eax, dword [eax + 0x10]
push dword [eax + 0x58]
push 0x88101c
lea eax, [ebp - 0x1b8]
mov edx, dword [ebp - 0x90]
mov edx, dword [edx + 0x20]
call fcn.0040c8f4
mov eax, dword [ebp - 0x1b8]
lea edx, [ebp - 0x1b4]
call fcn.0042f458
push dword [ebp - 0x1b4]
push 0x88102c
lea eax, [ebp - 0x1a8]
mov edx, 5
call fcn.0040cb14
mov edx, dword [ebp - 0x1a8]
mov eax, dword [ebp - 0x90]
add eax, 0x20
mov ecx, 0
call fcn.0040c4b4
mov eax, dword [0x8d1a20]
cmp byte [eax], 0
jne 0x87f58a
mov eax, dword [0x8d1a20]
cmp byte [eax], 1
je 0x880eef
mov edx, dword [ebp - 0x90]
test edx, edx
je 0x87f583
sub edx, 0xffffffb0
xor eax, eax
call fcn.004c703c
mov eax, dword [ebp - 0x90]
cmp dword [eax + 0x20], 0
je 0x87f5f2
push 0x88103c
mov eax, dword [ebp - 0x90]
push dword [eax + 0x20]
push 0x881050
mov eax, dword [ebp - 0x90]
add eax, 0x20
mov edx, 3
call fcn.0040c1c4
mov eax, 5
call fcn.004c719c
mov eax, dword [0x8d1a20]
cmp byte [eax], 0
jne 0x87f5f2
mov eax, dword [0x8d1a20]
cmp byte [eax], 1
je 0x880eef
mov edx, dword [ebp - 0x90]
test edx, edx
je 0x87f5eb
sub edx, 0xffffffb4
xor eax, eax
call fcn.004c703c
mov eax, dword [ebp - 0x90]
add eax, 0x20
call fcn.0040b8d8
mov eax, dword [ebp - 0x6c]
call fcn.004ba800
xor edx, edx
push ebp
push 0x87f62d
push dword fs:[edx]
mov dword fs:[edx], esp
mov eax, dword [ebp - 0x6c]
xor edx, edx
mov dword [ebp - 0x6c], edx
call fcn.004099cc
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x87f637
xor ebx, ebx
xor eax, eax
push ebp
push 0x87f662
push dword fs:[eax]
mov dword fs:[eax], esp
xor ecx, ecx
mov dl, 1
mov eax, dword [0x8745f0]
call fcn.00874cb0
mov dword [ebp - 0x80], eax
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x87f66e
test bl, bl
jne 0x87f6a0
xor eax, eax
push ebp
push 0x87f694
push dword fs:[eax]
mov dword fs:[eax], esp
mov dl, 1
mov eax, dword [ebp - 0x80]
mov ecx, dword [eax]
call dword [ecx + 0x44]
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x87f6a0
test bl, bl
jne 0x87f74c
mov eax, dword [ebp - 0x80]
mov eax, dword [eax + 0x88]
push dword [eax + 0x134]
push dword [eax + 0x130]
lea eax, [ebp - 0xc]
call fcn.0070ff48
lea eax, [ebp - 0x10]
mov edx, dword [ebp - 0x80]
mov ebx, dword [edx + 0x88]
mov edx, dword [ebx + 0x78]
call fcn.0040bcec
lea eax, [ebp - 0x24]
mov edx, dword [ebx + 0x7c]
call fcn.0040bcec
lea eax, [ebp - 0x18]
mov edx, dword [ebx + 0x140]
call fcn.0040bcec
lea eax, [ebp - 0x1c]
mov edx, dword [ebx + 0x48]
call fcn.0040bcec
movzx eax, byte [ebx + 0xac]
mov edx, dword [ebp - 0x90]
mov byte [edx + 0xd], al
lea edx, [ebp - 0x30]
mov eax, dword [ebp - 0x80]
mov eax, dword [eax + 0x88]
mov eax, dword [eax + 4]
call fcn.0042fd94
lea eax, [ebp - 0x14]
mov edx, dword [ebp - 0x80]
mov edx, dword [edx + 0x88]
mov edx, dword [edx + 0x44]
call fcn.0040bcec
lea eax, [ebp - 0x34]
mov edx, dword [ebp - 0x80]
mov edx, dword [edx + 0x88]
mov edx, dword [edx + 0x138]
call fcn.0040bcec
xor eax, eax
push ebp
push 0x87f76e
push dword fs:[eax]
mov dword fs:[eax], esp
xor edx, edx
mov eax, dword [ebp - 0x80]
mov ecx, dword [eax]
call dword [ecx + 0x44]
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x87f778
xor eax, eax
push ebp
push 0x87f798
push dword fs:[eax]
mov dword fs:[eax], esp
mov eax, dword [ebp - 0x80]
call fcn.004099cc
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x87f7a2
mov eax, 0xa
call fcn.004c719c
xor ebx, ebx
xor eax, eax
push ebp
push 0x87f7d7
push dword fs:[eax]
mov dword fs:[eax], esp
xor ecx, ecx
mov dl, 1
mov eax, dword [0x87c86c]
call fcn.0087cbdc
mov dword [ebp - 0x74], eax
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x87f7e3
test bl, bl
jne 0x87f815
xor eax, eax
push ebp
push 0x87f809
push dword fs:[eax]
mov dword fs:[eax], esp
mov dl, 1
mov eax, dword [ebp - 0x74]
mov ecx, dword [eax]
call dword [ecx + 0x44]
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x87f815
xor eax, eax
push ebp
push 0x87f927
push dword fs:[eax]
mov dword fs:[eax], esp
test bl, bl
jne 0x87f91d
lea eax, [ebp - 0x48]
mov edx, dword [ebp - 0x74]
mov edx, dword [edx + 0x88]
mov edx, dword [edx + 8]
call fcn.0040bcec
push dword [ebp - 0x48]
push 0x880fa0
lea edx, [ebp - 0x1bc]
mov eax, dword [ebp - 0x74]
mov eax, dword [eax + 0x88]
mov eax, dword [eax + 0x34]
call fcn.0042fd94
push dword [ebp - 0x1bc]
lea eax, [ebp - 0x48]
mov edx, 3
call fcn.0040cb14
push dword [ebp - 0x48]
push 0x880fa0
lea edx, [ebp - 0x1c0]
mov eax, dword [ebp - 0x74]
mov eax, dword [eax + 0x88]
mov eax, dword [eax + 0x84]
call fcn.0042fd94
push dword [ebp - 0x1c0]
lea eax, [ebp - 0x48]
mov edx, 3
call fcn.0040cb14
push dword [ebp - 0x48]
push 0x880fa0
mov eax, dword [ebp - 0x74]
mov eax, dword [eax + 0x88]
push dword [eax + 0x14]
push dword [eax + 0x10]
lea eax, [ebp - 0x1c4]
call fcn.0070ff48
push dword [ebp - 0x1c4]
lea eax, [ebp - 0x48]
mov edx, 3
call fcn.0040cb14
push dword [ebp - 0x48]
push 0x881064
mov eax, dword [ebp - 0x74]
mov eax, dword [eax + 0x88]
push dword [eax + 0x6c]
lea eax, [ebp - 0x48]
mov edx, 3
call fcn.0040cb14
push dword [ebp - 0x48]
push 0x88107c
mov eax, dword [ebp - 0x74]
mov eax, dword [eax + 0x88]
push dword [eax + 0x78]
lea eax, [ebp - 0x48]
mov edx, 3
call fcn.0040cb14
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x87f931
xor eax, eax
push ebp
push 0x87f953
push dword fs:[eax]
mov dword fs:[eax], esp
xor edx, edx
mov eax, dword [ebp - 0x74]
mov ecx, dword [eax]
call dword [ecx + 0x44]
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x87f95d
xor eax, eax
push ebp
push 0x87f97d
push dword fs:[eax]
mov dword fs:[eax], esp
mov eax, dword [ebp - 0x74]
call fcn.004099cc
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x87f987
mov eax, 0xa
call fcn.004c719c
xor ebx, ebx
xor eax, eax
push ebp
push 0x87f9bf
push dword fs:[eax]
mov dword fs:[eax], esp
xor ecx, ecx
mov dl, 1
mov eax, dword [0x868e64]
call fcn.0086933c
mov dword [ebp - 0x88], eax
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x87f9cb
test bl, bl
jne 0x87fa00
xor eax, eax
push ebp
push 0x87f9f4
push dword fs:[eax]
mov dword fs:[eax], esp
mov dl, 1
mov eax, dword [ebp - 0x88]
mov ecx, dword [eax]
call dword [ecx + 0x44]
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x87fa00
test bl, bl
jne 0x87fa42
lea eax, [ebp - 0x4c]
mov edx, dword [ebp - 0x88]
mov edx, dword [edx + 0x88]
mov edx, dword [edx + 0x2c]
call fcn.0040bcec
push dword [ebp - 0x4c]
push 0x880fa0
mov eax, dword [ebp - 0x88]
mov eax, dword [eax + 0x88]
push dword [eax + 0x80]
lea eax, [ebp - 0x4c]
mov edx, 3
call fcn.0040cb14
xor eax, eax
push ebp
push 0x87fa67
push dword fs:[eax]
mov dword fs:[eax], esp
xor edx, edx
mov eax, dword [ebp - 0x88]
mov ecx, dword [eax]
call dword [ecx + 0x44]
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x87fa71
xor eax, eax
push ebp
push 0x87fa94
push dword fs:[eax]
mov dword fs:[eax], esp
mov eax, dword [ebp - 0x88]
call fcn.004099cc
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x87fa9e
mov eax, 0xa
call fcn.004c719c
xor ebx, ebx
xor eax, eax
push ebp
push 0x87fad3
push dword fs:[eax]
mov dword fs:[eax], esp
xor ecx, ecx
mov dl, 1
mov eax, dword [0x86b67c]
call fcn.0086b9a4
mov dword [ebp - 0x78], eax
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x87fadf
test bl, bl
jne 0x87fb11
xor eax, eax
push ebp
push 0x87fb05
push dword fs:[eax]
mov dword fs:[eax], esp
mov dl, 1
mov eax, dword [ebp - 0x78]
mov ecx, dword [eax]
call dword [ecx + 0x44]
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x87fb11
test bl, bl
jne 0x87fb4a
lea eax, [ebp - 0x54]
mov edx, dword [ebp - 0x78]
mov edx, dword [edx + 0x88]
mov edx, dword [edx + 0x40]
call fcn.0040bcec
push dword [ebp - 0x54]
push 0x881094
mov eax, dword [ebp - 0x78]
mov eax, dword [eax + 0x88]
push dword [eax + 0x44]
lea eax, [ebp - 0x54]
mov edx, 3
call fcn.0040cb14
xor eax, eax
push ebp
push 0x87fb6c
push dword fs:[eax]
mov dword fs:[eax], esp
xor edx, edx
mov eax, dword [ebp - 0x78]
mov ecx, dword [eax]
call dword [ecx + 0x44]
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x87fb76
xor eax, eax
push ebp
push 0x87fb96
push dword fs:[eax]
mov dword fs:[eax], esp
mov eax, dword [ebp - 0x78]
call fcn.004099cc
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x87fba0
mov eax, 0xa
call fcn.004c719c
xor ebx, ebx
xor eax, eax
push ebp
push 0x87fbd5
push dword fs:[eax]
mov dword fs:[eax], esp
xor ecx, ecx
mov dl, 1
mov eax, dword [0x72f8cc]
call fcn.0072fbb0
mov dword [ebp - 0x7c], eax
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x87fbe1
test bl, bl
jne 0x87fc13
xor eax, eax
push ebp
push 0x87fc07
push dword fs:[eax]
mov dword fs:[eax], esp
mov dl, 1
mov eax, dword [ebp - 0x7c]
mov ecx, dword [eax]
call dword [ecx + 0x44]
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x87fc13
test bl, bl
jne 0x87fc43
lea edx, [ebp - 0x50]
mov eax, dword [ebp - 0x7c]
call fcn.0072ccac
push dword [ebp - 0x50]
push 0x8810b8
mov eax, dword [ebp - 0x7c]
mov eax, dword [eax + 0x88]
push dword [eax + 0x38]
lea eax, [ebp - 0x50]
mov edx, 3
call fcn.0040cb14
xor eax, eax
push ebp
push 0x87fc65
push dword fs:[eax]
mov dword fs:[eax], esp
xor edx, edx
mov eax, dword [ebp - 0x7c]
mov ecx, dword [eax]
call dword [ecx + 0x44]
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x87fc6f
xor eax, eax
push ebp
push 0x87fc8f
push dword fs:[eax]
mov dword fs:[eax], esp
mov eax, dword [ebp - 0x7c]
call fcn.004099cc
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x87fc99
mov eax, 0xa
call fcn.004c719c
xor ebx, ebx
test bl, bl
jne 0x87fcde
xor eax, eax
push ebp
push 0x87fcd2
push dword fs:[eax]
mov dword fs:[eax], esp
xor ecx, ecx
mov dl, 1
mov eax, dword [0x87a48c]
call fcn.0087a8e4
mov dword [ebp - 0x70], eax
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x87fcde
xor eax, eax
push ebp
push 0x87fd00
push dword fs:[eax]
mov dword fs:[eax], esp
mov dl, 1
mov eax, dword [ebp - 0x70]
mov ecx, dword [eax]
call dword [ecx + 0x44]
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x87fd0c
mov eax, dword [ebp - 0x90]
add eax, 0x18
mov edx, 0x8810d8
call fcn.0040bca4
mov eax, dword [ebp - 0x90]
add eax, 0x14
mov edx, 0x8810d8
call fcn.0040bca4
test bl, bl
jne 0x87fd92
lea edx, [ebp - 0x1c8]
mov eax, dword [ebp - 0x70]
mov eax, dword [eax + 0x88]
mov eax, dword [eax + 0x80]
call fcn.0042fd94
mov edx, dword [ebp - 0x1c8]
mov eax, dword [ebp - 0x90]
add eax, 0x18
call fcn.0040bca4
lea edx, [ebp - 0x1cc]
mov eax, dword [ebp - 0x70]
mov eax, dword [eax + 0x88]
mov eax, dword [eax + 0x88]
call fcn.0042fd94
mov edx, dword [ebp - 0x1cc]
mov eax, dword [ebp - 0x90]
add eax, 0x14
call fcn.0040bca4
xor eax, eax
push ebp
push 0x87fdb4
push dword fs:[eax]
mov dword fs:[eax], esp
xor edx, edx
mov eax, dword [ebp - 0x70]
mov ecx, dword [eax]
call dword [ecx + 0x44]
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x87fdbe
xor eax, eax
push ebp
push 0x87fdde
push dword fs:[eax]
mov dword fs:[eax], esp
mov eax, dword [ebp - 0x70]
call fcn.004099cc
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x87fde8
mov eax, 0xa
call fcn.004c719c
xor ebx, ebx
xor eax, eax
push ebp
push 0x87fe20
push dword fs:[eax]
mov dword fs:[eax], esp
xor ecx, ecx
mov dl, 1
mov eax, dword [0x86fdec]
call fcn.00870638
mov dword [ebp - 0x84], eax
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x87fe2c
test bl, bl
jne 0x87fe61
xor eax, eax
push ebp
push 0x87fe55
push dword fs:[eax]
mov dword fs:[eax], esp
mov dl, 1
mov eax, dword [ebp - 0x84]
mov ecx, dword [eax]
call dword [ecx + 0x44]
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x87fe61
test bl, bl
jne 0x87ff32
lea eax, [ebp - 0x38]
mov edx, dword [ebp - 0x84]
mov edx, dword [edx + 0x88]
mov edx, dword [edx + 0x24]
call fcn.0040bcec
mov eax, dword [ebp - 0x84]
mov eax, dword [eax + 0x88]
mov edx, dword [eax + 0x68]
mov dword [ebp - 0xa8], edx
mov edx, dword [eax + 0x6c]
mov dword [ebp - 0xa4], edx
push dword [ebp - 0xa4]
push dword [ebp - 0xa8]
lea edx, [ebp - 0x3c]
mov eax, dword [0x8d284c]
call fcn.00434764
mov eax, dword [ebp - 0x84]
mov eax, dword [eax + 0x88]
mov edx, dword [eax + 0x78]
mov dword [ebp - 0xb0], edx
mov edx, dword [eax + 0x7c]
mov dword [ebp - 0xac], edx
push dword [ebp - 0xac]
push dword [ebp - 0xb0]
lea edx, [ebp - 0x40]
mov eax, dword [0x8d284c]
call fcn.00434764
lea eax, [ebp - 0x44]
mov edx, dword [ebp - 0x84]
mov ebx, dword [edx + 0x88]
mov edx, dword [ebx + 0xc4]
call fcn.0040bcec
lea eax, [ebp - 0x28]
mov edx, dword [ebx + 0xa8]
call fcn.0040bcec
lea eax, [ebp - 0x2c]
mov edx, dword [ebx + 0x13c]
call fcn.0040bcec
lea eax, [ebp - 0x20]
mov edx, dword [ebx + 0xf0]
call fcn.0040bcec
xor eax, eax
push ebp
push 0x87ff57
push dword fs:[eax]
mov dword fs:[eax], esp
xor edx, edx
mov eax, dword [ebp - 0x84]
mov ecx, dword [eax]
call dword [ecx + 0x44]
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x87ff61
xor eax, eax
push ebp
push 0x87ff84
push dword fs:[eax]
mov dword fs:[eax], esp
mov eax, dword [ebp - 0x84]
call fcn.004099cc
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x87ff8e
movzx eax, byte [0x8810dc]
push eax
lea eax, [ebp - 0x1d0]
push eax
xor ecx, ecx
mov edx, 0x8810ec
mov eax, dword [ebp - 0x28]
call fcn.00439fe8
mov edx, dword [ebp - 0x1d0]
lea eax, [ebp - 0x28]
call fcn.0040bcec
mov eax, 0xa
call fcn.004c719c
mov eax, dword [ebp - 0x90]
mov eax, dword [eax + 0x10]
mov byte [eax + 0x54], 0
mov eax, dword [ebp - 0x90]
add eax, 0x1c
mov edx, 0x880fa0
call fcn.0040bca4
mov eax, dword [0x8d1a20]
cmp byte [eax], 1
je 0x880eef
mov eax, dword [0x8d1a20]
cmp byte [eax], 0
jne 0x880010
mov edx, dword [ebp - 0x90]
test edx, edx
je 0x880009
sub edx, 0xffffffb8
xor eax, eax
call fcn.004c703c
mov eax, dword [ebp - 0x90]
mov eax, dword [eax + 0x1c]
push eax
mov eax, dword [ebp - 0x60]
push eax
mov eax, dword [ebp - 0x90]
mov eax, dword [eax + 0x10]
mov ecx, 0x8810fc
mov edx, 0x881124
call fcn.0087ded4
mov eax, dword [ebp - 0x90]
mov eax, dword [eax + 0x10]
cmp byte [eax + 0x54], 0
jne 0x880092
mov eax, dword [ebp - 0x90]
add eax, 0x1c
mov edx, 0x880fa0
call fcn.0040bca4
mov edx, dword [ebp - 0x90]
test edx, edx
je 0x880065
sub edx, 0xffffffbc
xor eax, eax
call fcn.004c703c
mov eax, dword [ebp - 0x90]
mov eax, dword [eax + 0x1c]
push eax
mov eax, dword [ebp - 0x60]
push eax
mov eax, dword [ebp - 0x90]
mov eax, dword [eax + 0x10]
mov ecx, 0x881138
mov edx, 0x88116c
call fcn.0087ded4
mov edx, dword [ebp - 0x90]
test edx, edx
je 0x88009f
sub edx, 0xffffffc0
xor eax, eax
call fcn.004c703c
mov eax, dword [ebp - 0x90]
mov eax, dword [eax + 0x10]
cmp byte [eax + 0x54], 0
jne 0x8800d5
mov eax, dword [ebp - 0xc]
push eax
mov eax, dword [ebp - 0x60]
push eax
mov eax, dword [ebp - 0x90]
mov eax, dword [eax + 0x10]
mov ecx, 0x881180
mov edx, 0x8811a8
call fcn.0087ded4
mov eax, dword [ebp - 0x90]
mov eax, dword [eax + 0x10]
cmp byte [eax + 0x54], 0
jne 0x880104
mov eax, dword [ebp - 0x50]
push eax
mov eax, dword [ebp - 0x60]
push eax
mov eax, dword [ebp - 0x90]
mov eax, dword [eax + 0x10]
mov ecx, 0x8811bc
mov edx, 0x8811dc
call fcn.0087ded4
mov eax, dword [ebp - 0x90]
mov eax, dword [eax + 0x10]
cmp byte [eax + 0x54], 0
jne 0x880144
mov eax, dword [ebp - 0x54]
push eax
mov eax, dword [ebp - 0x60]
push eax
mov eax, dword [ebp - 0x90]
mov eax, dword [eax + 0x10]
mov ecx, 0x8811f0
mov edx, 0x881214
call fcn.0087ded4
mov eax, dword [ebp - 0x90]
mov eax, dword [eax + 0x10]
mov edx, dword [ebp - 0x60]
call fcn.00882448
mov eax, dword [ebp - 0x90]
mov eax, dword [eax + 0x10]
cmp byte [eax + 0x54], 0
jne 0x880173
mov eax, dword [ebp - 0x4c]
push eax
mov eax, dword [ebp - 0x60]
push eax
mov eax, dword [ebp - 0x90]
mov eax, dword [eax + 0x10]
mov ecx, 0x881228
mov edx, 0x88124c
call fcn.0087ded4
mov eax, dword [ebp - 0x90]
mov eax, dword [eax + 0x10]
cmp byte [eax + 0x54], 0
jne 0x8801a2
mov eax, dword [ebp - 0x48]
push eax
mov eax, dword [ebp - 0x60]
push eax
mov eax, dword [ebp - 0x90]
mov eax, dword [eax + 0x10]
mov ecx, 0x881260
mov edx, 0x881294
call fcn.0087ded4
mov eax, dword [ebp - 0x90]
mov eax, dword [eax + 0x10]
cmp byte [eax + 0x54], 0
jne 0x880223
mov eax, dword [0x8d2dc4]
mov eax, dword [eax]
call fcn.005e4da4
lea edx, [ebp - 0x1d8]
call fcn.0042fd94
push dword [ebp - 0x1d8]
push 0x8812a8
mov eax, dword [0x8d2dc4]
mov eax, dword [eax]
call fcn.005e4d9c
lea edx, [ebp - 0x1dc]
call fcn.0042fd94
push dword [ebp - 0x1dc]
lea eax, [ebp - 0x1d4]
mov edx, 3
call fcn.0040cb14
mov eax, dword [ebp - 0x1d4]
push eax
mov eax, dword [ebp - 0x60]
push eax
mov eax, dword [ebp - 0x90]
mov eax, dword [eax + 0x10]
mov ecx, 0x8812bc
mov edx, 0x8812dc
call fcn.0087ded4
mov eax, dword [ebp - 0x90]
mov eax, dword [eax + 0x10]
add eax, 0x2c
call fcn.0070ecd8
mov eax, dword [ebp - 0x90]
mov eax, dword [eax + 0x10]
cmp byte [eax + 0x54], 0
jne 0x88025a
mov edx, dword [eax + 0x2c]
push edx
mov edx, dword [ebp - 0x60]
push edx
mov ecx, 0x8812f0
mov edx, 0x881314
call fcn.0087ded4
mov eax, dword [ebp - 0x90]
mov eax, dword [eax + 0x10]
cmp byte [eax + 0x54], 0
jne 0x88032b
mov eax, dword [0x8d1a20]
cmp byte [eax], 1
je 0x880eef
mov eax, dword [0x8d1a20]
cmp byte [eax], 0
jne 0x880299
mov edx, dword [ebp - 0x90]
test edx, edx
je 0x880292
sub edx, 0xffffffc4
xor eax, eax
call fcn.004c703c
mov eax, dword [ebp - 0x90]
mov eax, dword [eax + 0x1c]
mov ecx, 1
mov edx, eax
mov eax, 0x881328
call fcn.0040cdb0
test eax, eax
jle 0x880305
mov eax, dword [ebp - 0x90]
mov eax, dword [eax + 0x1c]
mov dword [ebp - 0xb4], eax
mov ecx, 1
mov edx, dword [ebp - 0xb4]
mov eax, 0x881328
call fcn.0040cdb0
mov dword [ebp - 0xb8], eax
mov eax, dword [ebp - 0x90]
add eax, 0x1c
push eax
mov ecx, dword [ebp - 0xb8]
dec ecx
mov eax, dword [ebp - 0x90]
mov eax, dword [eax + 0x1c]
mov edx, 1
call fcn.0040cc5c
mov eax, dword [ebp - 0x90]
mov eax, dword [eax + 0x1c]
push eax
mov eax, dword [ebp - 0x60]
push eax
mov eax, dword [ebp - 0x90]
mov eax, dword [eax + 0x10]
mov ecx, 0x881338
mov edx, 0x88135c
call fcn.0087ded4
mov eax, dword [ebp - 0x90]
mov eax, dword [eax + 0x10]
cmp byte [eax + 0x54], 0
jne 0x88039f
mov eax, dword [ebp - 0x90]
add eax, 0x1c
mov edx, 0x880fa0
call fcn.0040bca4
mov eax, dword [0x8d1a20]
cmp byte [eax], 1
je 0x880eef
mov eax, dword [0x8d1a20]
cmp byte [eax], 0
jne 0x88039f
mov edx, dword [ebp - 0x90]
test edx, edx
je 0x880372
sub edx, 0xffffffc8
xor eax, eax
call fcn.004c703c
mov eax, dword [ebp - 0x90]
mov eax, dword [eax + 0x1c]
push eax
mov eax, dword [ebp - 0x60]
push eax
mov eax, dword [ebp - 0x90]
mov eax, dword [eax + 0x10]
mov ecx, 0x881370
mov edx, 0x8813a4
call fcn.0087ded4
mov eax, dword [ebp - 0x90]
mov eax, dword [eax + 0x10]
cmp byte [eax + 0x54], 0
jne 0x8803d4
mov eax, dword [ebp - 0x90]
mov eax, dword [eax + 0x18]
push eax
mov eax, dword [ebp - 0x60]
push eax
mov eax, dword [ebp - 0x90]
mov eax, dword [eax + 0x10]
mov ecx, 0x8813b8
mov edx, 0x8813e8
call fcn.0087ded4
mov eax, dword [ebp - 0x90]
mov eax, dword [eax + 0x10]
cmp byte [eax + 0x54], 0
jne 0x880409
mov eax, dword [ebp - 0x90]
mov eax, dword [eax + 0x14]
push eax
mov eax, dword [ebp - 0x60]
push eax
mov eax, dword [ebp - 0x90]
mov eax, dword [eax + 0x10]
mov ecx, 0x8813fc
mov edx, 0x88143c
call fcn.0087ded4
mov eax, dword [ebp - 0x90]
mov eax, dword [eax + 0x10]
cmp byte [eax + 0x54], 0
jne 0x88042f
mov edx, dword [eax + 0x28]
push edx
mov edx, dword [ebp - 0x60]
push edx
mov ecx, 0x881450
mov edx, 0x881488
call fcn.0087ded4
mov eax, dword [ebp - 0x90]
mov eax, dword [eax + 0x10]
cmp byte [eax + 0x54], 0
jne 0x88045e
mov eax, dword [ebp - 0x24]
push eax
mov eax, dword [ebp - 0x60]
push eax
mov eax, dword [ebp - 0x90]
mov eax, dword [eax + 0x10]
mov ecx, 0x88149c
mov edx, 0x8814b8
call fcn.0087ded4
mov eax, dword [ebp - 0x90]
mov eax, dword [eax + 0x10]
cmp byte [eax + 0x54], 0
jne 0x88048d
mov eax, dword [ebp - 0x28]
push eax
mov eax, dword [ebp - 0x60]
push eax
mov eax, dword [ebp - 0x90]
mov eax, dword [eax + 0x10]
mov ecx, 0x8814cc
mov edx, 0x8814f0
call fcn.0087ded4
mov eax, dword [ebp - 0x90]
mov eax, dword [eax + 0x10]
cmp byte [eax + 0x54], 0
jne 0x8804bc
mov eax, dword [ebp - 0x2c]
push eax
mov eax, dword [ebp - 0x60]
push eax
mov eax, dword [ebp - 0x90]
mov eax, dword [eax + 0x10]
mov ecx, 0x881504
mov edx, 0x881534
call fcn.0087ded4
mov eax, dword [ebp - 0x90]
mov eax, dword [eax + 0x10]
cmp byte [eax + 0x54], 0
jne 0x8804eb
mov eax, dword [ebp - 0x30]
push eax
mov eax, dword [ebp - 0x60]
push eax
mov eax, dword [ebp - 0x90]
mov eax, dword [eax + 0x10]
mov ecx, 0x881548
mov edx, 0x881578
call fcn.0087ded4
mov eax, dword [ebp - 0x90]
mov eax, dword [eax + 0x10]
cmp byte [eax + 0x54], 0
jne 0x88051a
mov eax, dword [ebp - 0x20]
push eax
mov eax, dword [ebp - 0x60]
push eax
mov eax, dword [ebp - 0x90]
mov eax, dword [eax + 0x10]
mov ecx, 0x88158c
mov edx, 0x8815b8
call fcn.0087ded4
mov eax, dword [ebp - 0x90]
mov eax, dword [eax + 0x10]
cmp byte [eax + 0x54], 0
jne 0x880549
mov eax, dword [ebp - 0x14]
push eax
mov eax, dword [ebp - 0x60]
push eax
mov eax, dword [ebp - 0x90]
mov eax, dword [eax + 0x10]
mov ecx, 0x8815cc
mov edx, 0x8815f4
call fcn.0087ded4
mov eax, dword [ebp - 0x90]
mov eax, dword [eax + 0x10]
cmp byte [eax + 0x54], 0
jne 0x880578
mov eax, dword [ebp - 0x34]
push eax
mov eax, dword [ebp - 0x60]
push eax
mov eax, dword [ebp - 0x90]
mov eax, dword [eax + 0x10]
mov ecx, 0x881608
mov edx, 0x881628
call fcn.0087ded4
mov eax, dword [ebp - 0x90]
mov eax, dword [eax + 0x10]
cmp byte [eax + 0x54], 0
jne 0x8805a7
mov eax, dword [ebp - 0x10]
push eax
mov eax, dword [ebp - 0x60]
push eax
mov eax, dword [ebp - 0x90]
mov eax, dword [eax + 0x10]
mov ecx, 0x88163c
mov edx, 0x881660
call fcn.0087ded4
mov eax, dword [ebp - 0x90]
mov eax, dword [eax + 0x10]
cmp byte [eax + 0x54], 0
jne 0x8805d6
mov eax, dword [ebp - 0x18]
push eax
mov eax, dword [ebp - 0x60]
push eax
mov eax, dword [ebp - 0x90]
mov eax, dword [eax + 0x10]
mov ecx, 0x881674
mov edx, 0x881694
call fcn.0087ded4
mov eax, dword [ebp - 0x90]
mov eax, dword [eax + 0x10]
cmp byte [eax + 0x54], 0
jne 0x880605
mov eax, dword [ebp - 0x1c]
push eax
mov eax, dword [ebp - 0x60]
push eax
mov eax, dword [ebp - 0x90]
mov eax, dword [eax + 0x10]
mov ecx, 0x8816a8
mov edx, 0x8816c4
call fcn.0087ded4
mov eax, dword [ebp - 0x90]
mov eax, dword [eax + 0x10]
cmp byte [eax + 0x54], 0
jne 0x880634
mov eax, dword [ebp - 0x38]
push eax
mov eax, dword [ebp - 0x60]
push eax
mov eax, dword [ebp - 0x90]
mov eax, dword [eax + 0x10]
mov ecx, 0x8816d8
mov edx, 0x8816ec
call fcn.0087ded4
mov eax, dword [ebp - 0x90]
mov eax, dword [eax + 0x10]
cmp byte [eax + 0x54], 0
jne 0x880663
mov eax, dword [ebp - 0x3c]
push eax
mov eax, dword [ebp - 0x60]
push eax
mov eax, dword [ebp - 0x90]
mov eax, dword [eax + 0x10]
mov ecx, 0x881700
mov edx, 0x88172c
call fcn.0087ded4
mov eax, dword [ebp - 0x90]
mov eax, dword [eax + 0x10]
cmp byte [eax + 0x54], 0
jne 0x880692
mov eax, dword [ebp - 0x44]
push eax
mov eax, dword [ebp - 0x60]
push eax
mov eax, dword [ebp - 0x90]
mov eax, dword [eax + 0x10]
mov ecx, 0x881740
mov edx, 0x881764
call fcn.0087ded4
mov eax, dword [ebp - 0x90]
mov eax, dword [eax + 0x10]
cmp byte [eax + 0x54], 0
jne 0x8806c1
mov eax, dword [ebp - 0x40]
push eax
mov eax, dword [ebp - 0x60]
push eax
mov eax, dword [ebp - 0x90]
mov eax, dword [eax + 0x10]
mov ecx, 0x881778
mov edx, 0x88179c
call fcn.0087ded4
lea eax, [ebp - 0x174]
push eax
call sub.kernel32.dll_GetTimeZoneInformation
mov eax, dword [ebp - 0x90]
mov eax, dword [eax + 0x10]
cmp byte [eax + 0x54], 0
jne 0x880750
xor eax, eax
push ebp
push 0x88070d
push dword fs:[eax]
mov dword fs:[eax], esp
mov eax, dword [ebp - 0x90]
add eax, 0x1c
lea edx, [ebp - 0x170]
mov ecx, 0x20
call fcn.0040c8d8
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x88072a
mov eax, dword [ebp - 0x90]
mov eax, dword [eax + 0x1c]
push eax
mov eax, dword [ebp - 0x60]
push eax
mov eax, dword [ebp - 0x90]
mov eax, dword [eax + 0x10]
mov ecx, 0x8817b0
mov edx, 0x8817dc
call fcn.0087ded4
mov eax, dword [ebp - 0x90]
mov eax, dword [eax + 0x10]
cmp byte [eax + 0x54], 0
jne 0x8807f6
xor eax, eax
push ebp
push 0x8807b3
push dword fs:[eax]
mov dword fs:[eax], esp
mov ecx, dword [ebp - 0x174]
mov eax, 0x77777777
imul ecx
sub edx, ecx
sar edx, 5
mov eax, edx
shr eax, 0x1f
add eax, edx
lea edx, [ebp - 0x1e0]
call fcn.0042fd94
mov edx, dword [ebp - 0x1e0]
mov eax, dword [ebp - 0x90]
add eax, 0x1c
call fcn.0040bca4
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x8807d0
mov eax, dword [ebp - 0x90]
mov eax, dword [eax + 0x1c]
push eax
mov eax, dword [ebp - 0x60]
push eax
mov eax, dword [ebp - 0x90]
mov eax, dword [eax + 0x10]
mov ecx, 0x8817f0
mov edx, 0x88181c
call fcn.0087ded4
mov eax, dword [ebp - 0x90]
mov eax, dword [eax + 0x10]
cmp byte [eax + 0x54], 0
jne 0x880857
mov eax, dword [0x8d1a20]
cmp byte [eax], 1
je 0x880eef
mov eax, dword [0x8d1a20]
cmp byte [eax], 0
jne 0x880857
mov edx, dword [ebp - 0x90]
test edx, edx
je 0x88082a
sub edx, 0xffffffcc
xor eax, eax
call fcn.004c703c
mov eax, dword [ebp - 0x90]
mov eax, dword [eax + 0x1c]
push eax
mov eax, dword [ebp - 0x60]
push eax
mov eax, dword [ebp - 0x90]
mov eax, dword [eax + 0x10]
mov ecx, 0x881830
mov edx, 0x881860
call fcn.0087ded4
mov eax, dword [ebp - 0x90]
mov eax, dword [eax + 0x10]
cmp byte [eax + 0x54], 0
jne 0x8808cb
mov eax, dword [ebp - 0x90]
add eax, 0x1c
mov edx, 0x880fa0
call fcn.0040bca4
mov eax, dword [0x8d1a20]
cmp byte [eax], 1
je 0x880eef
mov eax, dword [0x8d1a20]
cmp byte [eax], 0
jne 0x8808cb
mov edx, dword [ebp - 0x90]
test edx, edx
je 0x88089e
sub edx, 0xffffffd0
xor eax, eax
call fcn.004c703c
mov eax, dword [ebp - 0x90]
mov eax, dword [eax + 0x1c]
push eax
mov eax, dword [ebp - 0x60]
push eax
mov eax, dword [ebp - 0x90]
mov eax, dword [eax + 0x10]
mov ecx, 0x881874
mov edx, 0x881894
call fcn.0087ded4
mov eax, dword [ebp - 0x90]
mov eax, dword [eax + 0x10]
cmp byte [eax + 0x54], 0
jne 0x88096e
mov eax, dword [ebp - 0x90]
mov byte [eax + 0xc], 0
mov eax, dword [0x8d1a20]
cmp byte [eax], 1
je 0x880eef
mov eax, dword [0x8d1a20]
cmp byte [eax], 0
jne 0x880914
mov edx, dword [ebp - 0x90]
test edx, edx
je 0x88090d
sub edx, 0xffffffd4
xor eax, eax
call fcn.004c703c
mov eax, dword [ebp - 0x90]
cmp byte [eax + 0xc], 0
jne 0x880935
mov eax, dword [ebp - 0x90]
add eax, 0x1c
mov edx, 0x8818a8
call fcn.0040bca4
jmp 0x880948
mov eax, dword [ebp - 0x90]
add eax, 0x1c
mov edx, 0x8818bc
call fcn.0040bca4
mov eax, dword [ebp - 0x90]
mov eax, dword [eax + 0x1c]
push eax
mov eax, dword [ebp - 0x60]
push eax
mov eax, dword [ebp - 0x90]
mov eax, dword [eax + 0x10]
mov ecx, 0x8818d0
mov edx, 0x8818e4
call fcn.0087ded4
mov eax, dword [ebp - 0x90]
mov eax, dword [eax + 0x10]
add eax, 0x44
call fcn.0040b8d8
mov eax, dword [ebp - 0x60]
mov edx, 0x8818f8
call fcn.0040cc24
jne 0x880eef
xor ebx, ebx
xor eax, eax
push ebp
push 0x8809c0
push dword fs:[eax]
mov dword fs:[eax], esp
xor ecx, ecx
mov dl, 1
mov eax, dword [0x72dd04]
call fcn.0072e08c
mov dword [ebp - 0x8c], eax
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x8809cc
test bl, bl
jne 0x880a01
xor eax, eax
push ebp
push 0x8809f5
push dword fs:[eax]
mov dword fs:[eax], esp
mov dl, 1
mov eax, dword [ebp - 0x8c]
mov ecx, dword [eax]
call dword [ecx + 0x44]
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x880a01
test bl, bl
jne 0x880a59
xor eax, eax
push ebp
push 0x880a4f
push dword fs:[eax]
mov dword fs:[eax], esp
mov eax, dword [ebp - 0x8c]
call fcn.0072c8f8
lea edx, [ebp - 0x1e4]
mov ecx, dword [eax]
call dword [ecx + 0x1c]
mov edx, dword [ebp - 0x1e4]
mov eax, dword [ebp - 0x90]
mov eax, dword [eax + 0x10]
add eax, 0x40
mov ecx, 0
call fcn.0040c4b4
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x880a59
xor eax, eax
push ebp
push 0x880a7e
push dword fs:[eax]
mov dword fs:[eax], esp
xor edx, edx
mov eax, dword [ebp - 0x8c]
mov ecx, dword [eax]
call dword [ecx + 0x44]
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x880a88
xor eax, eax
push ebp
push 0x880aab
push dword fs:[eax]
mov dword fs:[eax], esp
mov eax, dword [ebp - 0x8c]
call fcn.004099cc
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x880ab5
mov eax, dword [ebp - 0x90]
mov eax, dword [eax + 0x10]
cmp dword [eax + 0x40], 0
je 0x880ee1
mov eax, dword [0x8d2950]
mov eax, dword [eax]
mov eax, dword [eax + 0x48c]
mov dword [ebp - 0xbc], eax
mov eax, dword [ebp - 0xbc]
test eax, eax
je 0x880ae8
mov eax, dword [eax - 4]
cmp eax, 9
jne 0x880ee1
xor eax, eax
push ebp
push 0x880b54
push dword fs:[eax]
mov dword fs:[eax], esp
lea eax, [ebp - 0x1ec]
mov edx, dword [ebp - 0x90]
mov edx, dword [edx + 0x10]
mov edx, dword [edx + 0x40]
call fcn.0040c8f4
mov eax, dword [ebp - 0x1ec]
push eax
call fcn.0060873c
lea ecx, [ebp - 0x1e8]
pop edx
call fcn.00608528
mov edx, dword [ebp - 0x1e8]
mov eax, dword [ebp - 0x90]
mov eax, dword [eax + 0x10]
add eax, 0x50
mov ecx, 0
call fcn.0040c4b4
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x880b6f
mov eax, dword [ebp - 0x90]
mov eax, dword [eax + 0x10]
cmp dword [eax + 0x50], 0
je 0x880ee1
call fcn.00433768
fstp qword [ebp - 0xc8]
wait
push dword [ebp - 0xc4]
push dword [ebp - 0xc8]
lea edx, [ebp - 0x1f0]
mov eax, dword [0x8d284c]
call fcn.00434764
mov edx, dword [ebp - 0x1f0]
mov eax, dword [ebp - 0x90]
mov eax, dword [eax + 0x10]
add eax, 0x60
call fcn.0040bca4
lea eax, [ebp - 0x1f4]
push eax
mov eax, dword [ebp - 0x90]
mov eax, dword [eax + 0x10]
mov eax, dword [eax + 0x60]
mov ecx, 2
mov edx, 4
call fcn.0040cc5c
push dword [ebp - 0x1f4]
push 0x881908
lea eax, [ebp - 0x1f8]
push eax
mov eax, dword [ebp - 0x90]
mov eax, dword [eax + 0x10]
mov eax, dword [eax + 0x60]
mov ecx, 2
mov edx, 1
call fcn.0040cc5c
push dword [ebp - 0x1f8]
push 0x881908
lea eax, [ebp - 0x1fc]
push eax
mov eax, dword [ebp - 0x90]
mov eax, dword [eax + 0x10]
mov eax, dword [eax + 0x60]
mov ecx, 4
mov edx, 7
call fcn.0040cc5c
push dword [ebp - 0x1fc]
mov eax, dword [ebp - 0x90]
mov eax, dword [eax + 0x10]
add eax, 0x64
mov edx, 5
call fcn.0040cb14
mov eax, dword [ebp - 0x90]
mov eax, dword [eax + 0x10]
add eax, 0x68
call fcn.0084f318
mov eax, dword [ebp - 0x90]
mov eax, dword [eax + 0x10]
add eax, 0x48
call fcn.0040b8d8
mov eax, dword [ebp - 0x90]
mov eax, dword [eax + 0x10]
add eax, 0x48
mov edx, 0x881918
call fcn.0040c0e8
mov eax, dword [ebp - 0x90]
mov eax, dword [ebp - 0x90]
mov eax, dword [eax + 0x10]
push dword [eax + 0x48]
mov eax, dword [0x8d2950]
mov eax, dword [eax]
push dword [eax + 0x48c]
push 0x88100c
mov eax, dword [ebp - 0x90]
mov eax, dword [eax + 0x10]
add eax, 0x48
mov edx, 3
call fcn.0040c1c4
lea eax, [ebp - 0x204]
mov edx, dword [ebp - 0x90]
mov edx, dword [edx + 0x10]
mov edx, dword [edx + 0x48]
call fcn.0040c8f4
push dword [ebp - 0x204]
lea edx, [ebp - 0x208]
mov eax, dword [ebp - 0x90]
mov eax, dword [eax + 0x10]
mov eax, dword [eax + 0x64]
call fcn.0042f458
push dword [ebp - 0x208]
push 0x88101c
lea eax, [ebp - 0x200]
mov edx, 3
call fcn.0040cb14
mov edx, dword [ebp - 0x200]
mov eax, dword [ebp - 0x90]
mov eax, dword [eax + 0x10]
add eax, 0x48
mov ecx, 0
call fcn.0040c4b4
lea eax, [ebp - 0x210]
mov edx, dword [ebp - 0x90]
mov edx, dword [edx + 0x10]
mov edx, dword [edx + 0x48]
call fcn.0040c8f4
push dword [ebp - 0x210]
lea eax, [ebp - 0x218]
mov edx, dword [ebp - 0x90]
mov edx, dword [edx + 0x10]
mov edx, dword [edx + 0x68]
call fcn.0040c8f4
mov eax, dword [ebp - 0x218]
lea edx, [ebp - 0x214]
call fcn.0042f458
push dword [ebp - 0x214]
push 0x88101c
lea eax, [ebp - 0x20c]
mov edx, 3
call fcn.0040cb14
mov edx, dword [ebp - 0x20c]
mov eax, dword [ebp - 0x90]
mov eax, dword [eax + 0x10]
add eax, 0x48
mov ecx, 0
call fcn.0040c4b4
lea eax, [ebp - 0x220]
mov edx, dword [ebp - 0x90]
mov edx, dword [edx + 0x10]
mov edx, dword [edx + 0x48]
call fcn.0040c8f4
push dword [ebp - 0x220]
lea eax, [ebp - 0x228]
mov edx, dword [ebp - 0x90]
mov edx, dword [edx + 0x10]
mov edx, dword [edx + 0x50]
call fcn.0040c8f4
mov eax, dword [ebp - 0x228]
lea edx, [ebp - 0x224]
call fcn.0042f458
push dword [ebp - 0x224]
push 0x88195c
lea eax, [ebp - 0x21c]
mov edx, 3
call fcn.0040cb14
mov edx, dword [ebp - 0x21c]
mov eax, dword [ebp - 0x90]
mov eax, dword [eax + 0x10]
add eax, 0x48
mov ecx, 0
call fcn.0040c4b4
mov eax, dword [ebp - 0x90]
mov eax, dword [eax + 0x10]
mov eax, dword [eax + 0x48]
mov edx, dword [0x196dd44]
call fcn.0040c28c
je 0x880ee1
mov eax, 0x196dd44
mov edx, dword [ebp - 0x90]
mov edx, dword [edx + 0x10]
mov edx, dword [edx + 0x48]
call fcn.0040bd48
mov eax, dword [0x8d1a20]
cmp byte [eax], 1
je 0x880eef
mov eax, dword [0x8d1a20]
cmp byte [eax], 0
jne 0x880e8d
mov edx, dword [ebp - 0x90]
test edx, edx
je 0x880e86
sub edx, 0xffffffd8
xor eax, eax
call fcn.004c703c
push 0x88103c
mov eax, dword [ebp - 0x90]
mov eax, dword [eax + 0x10]
push dword [eax + 0x48]
push 0x881050
mov eax, dword [ebp - 0x90]
mov eax, dword [eax + 0x10]
add eax, 0x48
mov edx, 3
call fcn.0040c1c4
mov eax, dword [0x8d1a20]
cmp byte [eax], 1
je 0x880eef
mov eax, dword [0x8d1a20]
cmp byte [eax], 0
jne 0x880ee1
mov edx, dword [ebp - 0x90]
test edx, edx
je 0x880eda
sub edx, 0xffffffdc
xor eax, eax
call fcn.004c703c
mov eax, dword [ebp - 0x90]
mov eax, dword [eax + 0x10]
call fcn.00881f28
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
push 0x880f46
lea eax, [ebp - 0x228]
mov edx, 0x1e
call fcn.0040b914
lea eax, [ebp - 0x1b0]
call fcn.0040b8d8
lea eax, [ebp - 0x1ac]
mov edx, 0xe
call fcn.0040b914
lea eax, [ebp - 0x5c]
call fcn.00410d80
lea eax, [ebp - 0x58]
mov edx, 0x14
call fcn.0040b914
pop eax
jmp eax