Function at 0x100280b6
Capabilities:
Log keystrokes via polling

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x80
cmp dword [0x100b9ef4], 0
jne 0x10028a47
mov eax, dword [0x100b9efc]
push eax
mov ebx, eax
call fcn.100026a6
pop eax
sub ebx, eax
push ecx
push ebx
push eax
shl ecx, 2
add ecx, ebx
push ecx
call fcn.10069538
add esp, 4
pop esi
mov edi, eax
pop ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
pop ecx
test ecx, ecx
je 0x1002815f
push eax
lodsd eax, dword [esi]
push esi
push edi
push ecx
push eax
push 0x14
call fcn.10069538
add esp, 4
pop esi
mov edi, eax
push eax
lodsd eax, dword [esi]
stosd dword es:[edi], eax
lodsd eax, dword [esi]
stosd dword es:[edi], eax
lodsd eax, dword [esi]
push esi
push edi
test eax, eax
je 0x10028136
push eax
mov ebx, eax
call fcn.10001534
inc eax
push eax
call fcn.10069538
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
pop edi
pop esi
stosd dword es:[edi], eax
lodsd eax, dword [esi]
stosd dword es:[edi], eax
lodsd eax, dword [esi]
push esi
push edi
push eax
push 0xc
call fcn.10069538
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
pop edi
pop esi
stosd dword es:[edi], eax
pop eax
pop ecx
pop edi
pop esi
stosd dword es:[edi], eax
dec ecx
jne 0x10028100
pop eax
push eax
mov ebx, dword [0x100b9ef8]
push ebx
mov ecx, dword [ebx]
add ebx, 4
test ecx, ecx
je 0x10028181
mov eax, dword [ebx]
add ebx, 4
dec ecx
je 0x1002817d
imul eax, dword [ebx]
jmp 0x10028172
mov ecx, eax
test ecx, ecx
je 0x100281c0
push ecx
push ebx
mov ebx, dword [ebx]
push ebx
add ebx, 8
push ebx
mov ebx, dword [ebx]
test ebx, ebx
je 0x1002819f
push ebx
call fcn.1006953e
add esp, 4
pop ebx
add ebx, 8
push ebx
mov ebx, dword [ebx]
push ebx
call fcn.1006953e
add esp, 4
pop ebx
call fcn.1006953e
add esp, 4
pop ebx
add ebx, 4
pop ecx
dec ecx
jne 0x10028187
call fcn.1006953e
add esp, 4
pop eax
mov dword [0x100b9ef8], eax
mov eax, dword [0x100b9f04]
push eax
mov ebx, eax
call fcn.100026a6
pop eax
sub ebx, eax
push ecx
push ebx
push eax
shl ecx, 2
add ecx, ebx
push ecx
call fcn.10069538
add esp, 4
pop esi
mov edi, eax
pop ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
pop ecx
test ecx, ecx
je 0x1002825f
push eax
lodsd eax, dword [esi]
push esi
push edi
push ecx
push eax
push 0x10
call fcn.10069538
add esp, 4
pop esi
mov edi, eax
push eax
lodsd eax, dword [esi]
stosd dword es:[edi], eax
lodsd eax, dword [esi]
stosd dword es:[edi], eax
lodsd eax, dword [esi]
push esi
push edi
test eax, eax
je 0x10028238
push eax
mov ebx, eax
call fcn.10001534
inc eax
push eax
call fcn.10069538
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
pop edi
pop esi
stosd dword es:[edi], eax
lodsd eax, dword [esi]
push esi
push edi
push eax
push 0xc
call fcn.10069538
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
pop edi
pop esi
stosd dword es:[edi], eax
pop eax
pop ecx
pop edi
pop esi
stosd dword es:[edi], eax
dec ecx
jne 0x10028202
pop eax
push eax
mov ebx, dword [0x100b9f00]
push ebx
mov ecx, dword [ebx]
add ebx, 4
test ecx, ecx
je 0x10028281
mov eax, dword [ebx]
add ebx, 4
dec ecx
je 0x1002827d
imul eax, dword [ebx]
jmp 0x10028272
mov ecx, eax
test ecx, ecx
je 0x100282c0
push ecx
push ebx
mov ebx, dword [ebx]
push ebx
add ebx, 8
push ebx
mov ebx, dword [ebx]
test ebx, ebx
je 0x1002829f
push ebx
call fcn.1006953e
add esp, 4
pop ebx
add ebx, 4
push ebx
mov ebx, dword [ebx]
push ebx
call fcn.1006953e
add esp, 4
pop ebx
call fcn.1006953e
add esp, 4
pop ebx
add ebx, 4
pop ecx
dec ecx
jne 0x10028287
call fcn.1006953e
add esp, 4
pop eax
mov dword [0x100b9f00], eax
mov eax, dword [0x100b9f0c]
push eax
mov ebx, eax
call fcn.100026a6
pop eax
sub ebx, eax
push ecx
push ebx
push eax
shl ecx, 2
add ecx, ebx
push ecx
call fcn.10069538
add esp, 4
pop esi
mov edi, eax
pop ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
pop ecx
test ecx, ecx
je 0x1002835f
push eax
lodsd eax, dword [esi]
push esi
push edi
push ecx
push eax
push 0x10
call fcn.10069538
add esp, 4
pop esi
mov edi, eax
push eax
lodsd eax, dword [esi]
stosd dword es:[edi], eax
lodsd eax, dword [esi]
stosd dword es:[edi], eax
lodsd eax, dword [esi]
push esi
push edi
test eax, eax
je 0x10028338
push eax
mov ebx, eax
call fcn.10001534
inc eax
push eax
call fcn.10069538
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
pop edi
pop esi
stosd dword es:[edi], eax
lodsd eax, dword [esi]
push esi
push edi
push eax
push 0xc
call fcn.10069538
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
pop edi
pop esi
stosd dword es:[edi], eax
pop eax
pop ecx
pop edi
pop esi
stosd dword es:[edi], eax
dec ecx
jne 0x10028302
pop eax
push eax
mov ebx, dword [0x100b9f08]
push ebx
mov ecx, dword [ebx]
add ebx, 4
test ecx, ecx
je 0x10028381
mov eax, dword [ebx]
add ebx, 4
dec ecx
je 0x1002837d
imul eax, dword [ebx]
jmp 0x10028372
mov ecx, eax
test ecx, ecx
je 0x100283c0
push ecx
push ebx
mov ebx, dword [ebx]
push ebx
add ebx, 8
push ebx
mov ebx, dword [ebx]
test ebx, ebx
je 0x1002839f
push ebx
call fcn.1006953e
add esp, 4
pop ebx
add ebx, 4
push ebx
mov ebx, dword [ebx]
push ebx
call fcn.1006953e
add esp, 4
pop ebx
call fcn.1006953e
add esp, 4
pop ebx
add ebx, 4
pop ecx
dec ecx
jne 0x10028387
call fcn.1006953e
add esp, 4
pop eax
mov dword [0x100b9f08], eax
mov dword [0x100b9ef4], 1
cmp dword [0x100b9f10], 0
je 0x10028a1a
mov eax, dword [0x100b9f18]
push eax
mov ebx, eax
call fcn.100026a6
pop eax
sub ebx, eax
push ecx
push ebx
push eax
shl ecx, 2
add ecx, ebx
push ecx
call fcn.10069538
add esp, 4
pop esi
mov edi, eax
pop ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
pop ecx
test ecx, ecx
je 0x10028461
push eax
lodsd eax, dword [esi]
push esi
push edi
push ecx
push eax
push 0x10
call fcn.10069538
add esp, 4
pop esi
mov edi, eax
push eax
lodsd eax, dword [esi]
stosd dword es:[edi], eax
lodsd eax, dword [esi]
stosd dword es:[edi], eax
lodsd eax, dword [esi]
push esi
push edi
test eax, eax
je 0x1002844f
push eax
mov ebx, eax
call fcn.10001534
inc eax
push eax
call fcn.10069538
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
pop edi
pop esi
stosd dword es:[edi], eax
lodsd eax, dword [esi]
stosd dword es:[edi], eax
pop eax
pop ecx
pop edi
pop esi
stosd dword es:[edi], eax
dec ecx
jne 0x10028419
pop eax
push eax
mov ebx, dword [0x100b9f14]
push ebx
mov ecx, dword [ebx]
add ebx, 4
test ecx, ecx
je 0x10028483
mov eax, dword [ebx]
add ebx, 4
dec ecx
je 0x1002847f
imul eax, dword [ebx]
jmp 0x10028474
mov ecx, eax
test ecx, ecx
je 0x100284b2
push ecx
push ebx
mov ebx, dword [ebx]
push ebx
add ebx, 8
push ebx
mov ebx, dword [ebx]
test ebx, ebx
je 0x100284a1
push ebx
call fcn.1006953e
add esp, 4
pop ebx
call fcn.1006953e
add esp, 4
pop ebx
add ebx, 4
pop ecx
dec ecx
jne 0x10028489
call fcn.1006953e
add esp, 4
pop eax
mov dword [0x100b9f14], eax
mov eax, dword [0x100b9f20]
push eax
mov ebx, eax
call fcn.100026a6
pop eax
sub ebx, eax
push ecx
push ebx
push eax
shl ecx, 2
add ecx, ebx
push ecx
call fcn.10069538
add esp, 4
pop esi
mov edi, eax
pop ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
pop ecx
test ecx, ecx
je 0x1002853c
push eax
lodsd eax, dword [esi]
push esi
push edi
push ecx
push eax
push 0x10
call fcn.10069538
add esp, 4
pop esi
mov edi, eax
push eax
lodsd eax, dword [esi]
stosd dword es:[edi], eax
lodsd eax, dword [esi]
stosd dword es:[edi], eax
lodsd eax, dword [esi]
push esi
push edi
test eax, eax
je 0x1002852a
push eax
mov ebx, eax
call fcn.10001534
inc eax
push eax
call fcn.10069538
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
pop edi
pop esi
stosd dword es:[edi], eax
lodsd eax, dword [esi]
stosd dword es:[edi], eax
pop eax
pop ecx
pop edi
pop esi
stosd dword es:[edi], eax
dec ecx
jne 0x100284f4
pop eax
push eax
mov ebx, dword [0x100b9f1c]
push ebx
mov ecx, dword [ebx]
add ebx, 4
test ecx, ecx
je 0x1002855e
mov eax, dword [ebx]
add ebx, 4
dec ecx
je 0x1002855a
imul eax, dword [ebx]
jmp 0x1002854f
mov ecx, eax
test ecx, ecx
je 0x1002858d
push ecx
push ebx
mov ebx, dword [ebx]
push ebx
add ebx, 8
push ebx
mov ebx, dword [ebx]
test ebx, ebx
je 0x1002857c
push ebx
call fcn.1006953e
add esp, 4
pop ebx
call fcn.1006953e
add esp, 4
pop ebx
add ebx, 4
pop ecx
dec ecx
jne 0x10028564
call fcn.1006953e
add esp, 4
pop eax
mov dword [0x100b9f1c], eax
mov eax, dword [0x100b9f28]
push eax
mov ebx, eax
call fcn.100026a6
pop eax
sub ebx, eax
push ecx
push ebx
push eax
shl ecx, 2
add ecx, ebx
push ecx
call fcn.10069538
add esp, 4
pop esi
mov edi, eax
pop ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
pop ecx
test ecx, ecx
je 0x1002862c
push eax
lodsd eax, dword [esi]
push esi
push edi
push ecx
push eax
push 0x10
call fcn.10069538
add esp, 4
pop esi
mov edi, eax
push eax
lodsd eax, dword [esi]
stosd dword es:[edi], eax
lodsd eax, dword [esi]
stosd dword es:[edi], eax
lodsd eax, dword [esi]
push esi
push edi
test eax, eax
je 0x10028605
push eax
mov ebx, eax
call fcn.10001534
inc eax
push eax
call fcn.10069538
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
pop edi
pop esi
stosd dword es:[edi], eax
lodsd eax, dword [esi]
push esi
push edi
push eax
push 0xc
call fcn.10069538
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
pop edi
pop esi
stosd dword es:[edi], eax
pop eax
pop ecx
pop edi
pop esi
stosd dword es:[edi], eax
dec ecx
jne 0x100285cf
pop eax
push eax
mov ebx, dword [0x100b9f24]
push ebx
mov ecx, dword [ebx]
add ebx, 4
test ecx, ecx
je 0x1002864e
mov eax, dword [ebx]
add ebx, 4
dec ecx
je 0x1002864a
imul eax, dword [ebx]
jmp 0x1002863f
mov ecx, eax
test ecx, ecx
je 0x1002868d
push ecx
push ebx
mov ebx, dword [ebx]
push ebx
add ebx, 8
push ebx
mov ebx, dword [ebx]
test ebx, ebx
je 0x1002866c
push ebx
call fcn.1006953e
add esp, 4
pop ebx
add ebx, 4
push ebx
mov ebx, dword [ebx]
push ebx
call fcn.1006953e
add esp, 4
pop ebx
call fcn.1006953e
add esp, 4
pop ebx
add ebx, 4
pop ecx
dec ecx
jne 0x10028654
call fcn.1006953e
add esp, 4
pop eax
mov dword [0x100b9f24], eax
mov eax, dword [0x100b9f30]
push eax
mov ebx, eax
call fcn.100026a6
pop eax
sub ebx, eax
push ecx
push ebx
push eax
shl ecx, 2
add ecx, ebx
push ecx
call fcn.10069538
add esp, 4
pop esi
mov edi, eax
pop ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
pop ecx
test ecx, ecx
je 0x10028717
push eax
lodsd eax, dword [esi]
push esi
push edi
push ecx
push eax
push 0x10
call fcn.10069538
add esp, 4
pop esi
mov edi, eax
push eax
lodsd eax, dword [esi]
stosd dword es:[edi], eax
lodsd eax, dword [esi]
stosd dword es:[edi], eax
lodsd eax, dword [esi]
push esi
push edi
test eax, eax
je 0x10028705
push eax
mov ebx, eax
call fcn.10001534
inc eax
push eax
call fcn.10069538
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
pop edi
pop esi
stosd dword es:[edi], eax
lodsd eax, dword [esi]
stosd dword es:[edi], eax
pop eax
pop ecx
pop edi
pop esi
stosd dword es:[edi], eax
dec ecx
jne 0x100286cf
pop eax
push eax
mov ebx, dword [0x100b9f2c]
push ebx
mov ecx, dword [ebx]
add ebx, 4
test ecx, ecx
je 0x10028739
mov eax, dword [ebx]
add ebx, 4
dec ecx
je 0x10028735
imul eax, dword [ebx]
jmp 0x1002872a
mov ecx, eax
test ecx, ecx
je 0x10028768
push ecx
push ebx
mov ebx, dword [ebx]
push ebx
add ebx, 8
push ebx
mov ebx, dword [ebx]
test ebx, ebx
je 0x10028757
push ebx
call fcn.1006953e
add esp, 4
pop ebx
call fcn.1006953e
add esp, 4
pop ebx
add ebx, 4
pop ecx
dec ecx
jne 0x1002873f
call fcn.1006953e
add esp, 4
pop eax
mov dword [0x100b9f2c], eax
mov eax, dword [0x100b9f38]
push eax
mov ebx, eax
call fcn.100026a6
pop eax
sub ebx, eax
push ecx
push ebx
push eax
shl ecx, 2
add ecx, ebx
push ecx
call fcn.10069538
add esp, 4
pop esi
mov edi, eax
pop ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
pop ecx
test ecx, ecx
je 0x10028809
push eax
lodsd eax, dword [esi]
push esi
push edi
push ecx
push eax
push 0x14
call fcn.10069538
add esp, 4
pop esi
mov edi, eax
push eax
lodsd eax, dword [esi]
stosd dword es:[edi], eax
lodsd eax, dword [esi]
stosd dword es:[edi], eax
lodsd eax, dword [esi]
push esi
push edi
test eax, eax
je 0x100287e0
push eax
mov ebx, eax
call fcn.10001534
inc eax
push eax
call fcn.10069538
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
pop edi
pop esi
stosd dword es:[edi], eax
lodsd eax, dword [esi]
stosd dword es:[edi], eax
lodsd eax, dword [esi]
push esi
push edi
push eax
push 0xc
call fcn.10069538
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
pop edi
pop esi
stosd dword es:[edi], eax
pop eax
pop ecx
pop edi
pop esi
stosd dword es:[edi], eax
dec ecx
jne 0x100287aa
pop eax
push eax
mov ebx, dword [0x100b9f34]
push ebx
mov ecx, dword [ebx]
add ebx, 4
test ecx, ecx
je 0x1002882b
mov eax, dword [ebx]
add ebx, 4
dec ecx
je 0x10028827
imul eax, dword [ebx]
jmp 0x1002881c
mov ecx, eax
test ecx, ecx
je 0x1002886a
push ecx
push ebx
mov ebx, dword [ebx]
push ebx
add ebx, 8
push ebx
mov ebx, dword [ebx]
test ebx, ebx
je 0x10028849
push ebx
call fcn.1006953e
add esp, 4
pop ebx
add ebx, 8
push ebx
mov ebx, dword [ebx]
push ebx
call fcn.1006953e
add esp, 4
pop ebx
call fcn.1006953e
add esp, 4
pop ebx
add ebx, 4
pop ecx
dec ecx
jne 0x10028831
call fcn.1006953e
add esp, 4
pop eax
mov dword [0x100b9f34], eax
mov dword [0x100b9f10], 0
mov ebx, dword [0x100b9f18]
push ebx
mov ecx, dword [ebx]
add ebx, 4
test ecx, ecx
je 0x100288a3
mov eax, dword [ebx]
add ebx, 4
dec ecx
je 0x1002889f
imul eax, dword [ebx]
jmp 0x10028894
mov ecx, eax
test ecx, ecx
je 0x100288d2
push ecx
push ebx
mov ebx, dword [ebx]
push ebx
add ebx, 8
push ebx
mov ebx, dword [ebx]
test ebx, ebx
je 0x100288c1
push ebx
call fcn.1006953e
add esp, 4
pop ebx
call fcn.1006953e
add esp, 4
pop ebx
add ebx, 4
pop ecx
dec ecx
jne 0x100288a9
call fcn.1006953e
add esp, 4
mov eax, 0x10082277
mov dword [0x100b9f18], eax
mov ebx, dword [0x100b9f20]
push ebx
mov ecx, dword [ebx]
add ebx, 4
test ecx, ecx
je 0x10028905
mov eax, dword [ebx]
add ebx, 4
dec ecx
je 0x10028901
imul eax, dword [ebx]
jmp 0x100288f6
mov ecx, eax
test ecx, ecx
je 0x10028934
push ecx
push ebx
mov ebx, dword [ebx]
push ebx
add ebx, 8
push ebx
mov ebx, dword [ebx]
test ebx, ebx
je 0x10028923
push ebx
call fcn.1006953e
add esp, 4
pop ebx
call fcn.1006953e
add esp, 4
pop ebx
add ebx, 4
pop ecx
dec ecx
jne 0x1002890b
call fcn.1006953e
add esp, 4
mov eax, 0x10082277
mov dword [0x100b9f20], eax
mov ebx, dword [0x100b9f28]
push ebx
mov ecx, dword [ebx]
add ebx, 4
test ecx, ecx
je 0x10028967
mov eax, dword [ebx]
add ebx, 4
dec ecx
je 0x10028963
imul eax, dword [ebx]
jmp 0x10028958
mov ecx, eax
test ecx, ecx
je 0x100289a6
push ecx
push ebx
mov ebx, dword [ebx]
push ebx
add ebx, 8
push ebx
mov ebx, dword [ebx]
test ebx, ebx
je 0x10028985
push ebx
call fcn.1006953e
add esp, 4
pop ebx
add ebx, 4
push ebx
mov ebx, dword [ebx]
push ebx
call fcn.1006953e
add esp, 4
pop ebx
call fcn.1006953e
add esp, 4
pop ebx
add ebx, 4
pop ecx
dec ecx
jne 0x1002896d
call fcn.1006953e
add esp, 4
mov eax, 0x10082277
mov dword [0x100b9f28], eax
mov ebx, dword [0x100b9f30]
push ebx
mov ecx, dword [ebx]
add ebx, 4
test ecx, ecx
je 0x100289d9
mov eax, dword [ebx]
add ebx, 4
dec ecx
je 0x100289d5
imul eax, dword [ebx]
jmp 0x100289ca
mov ecx, eax
test ecx, ecx
je 0x10028a08
push ecx
push ebx
mov ebx, dword [ebx]
push ebx
add ebx, 8
push ebx
mov ebx, dword [ebx]
test ebx, ebx
je 0x100289f7
push ebx
call fcn.1006953e
add esp, 4
pop ebx
call fcn.1006953e
add esp, 4
pop ebx
add ebx, 4
pop ecx
dec ecx
jne 0x100289df
call fcn.1006953e
add esp, 4
mov eax, 0x10082277
mov dword [0x100b9f30], eax
mov ebx, 6
call fcn.10002c26
push reloc.WS2_32.dll_getsockname
push 0
push 0x10041280
push 3
mov ebx, 0
mov eax, 0x1006eb90
call fcn.10069d70
add esp, 0x28
call fcn.1002928a
push dword [0x100b9f44]
push dword [0x100b9f40]
call fcn.1002a0b4
mov dword [ebp - 4], eax
mov eax, dword [ebp - 4]
push eax
mov ebx, dword [0x100b9f3c]
push ebx
call fcn.1006953e
add esp, 4
pop eax
mov dword [0x100b9f3c], eax
push 0x100b9f50
push dword [0x100b9f4c]
push dword [0x100b9f48]
call fcn.1002a2a8
mov ebx, dword [0x100b9ef0]
add ebx, 0xc
mov dword [ebp - 4], ebx
mov dword [ebp - 8], esp
mov ebx, dword [ebp - 4]
push dword [ebx]
xor eax, eax
call dword [sym.imp.USER32.dll_GetAsyncKeyState]
nop
nop
cmp dword [ebp - 8], esp
je 0x10028ac9
push 0x3ce
push 0x4010df3
push 6
call fcn.10069544
add esp, 0xc
mov dword [ebp - 0x10], eax
cmp dword [ebp - 0x10], 0
mov eax, 0
setne al
mov dword [0x100b9f54], eax
mov ebx, dword [0x100b9ef0]
add ebx, 0x14
mov dword [ebp - 4], ebx
mov ebx, dword [ebp - 4]
mov eax, dword [ebx]
mov dword [0x100b9f58], eax
mov ebx, dword [0x100b9ef0]
add ebx, 0x20
mov dword [ebp - 4], ebx
mov ebx, dword [ebp - 4]
cmp dword [ebx], 0
je 0x10028bc7
mov ebx, dword [0x100b9ea8]
mov dword [ebp - 4], ebx
mov ebx, dword [0x100b9e34]
mov dword [ebp - 8], ebx
mov ebx, dword [ebp - 4]
fld dword [ebx]
mov ebx, dword [ebp - 8]
fild dword [ebx]
fstp qword [ebp - 0x10]
fadd qword [ebp - 0x10]
fstp qword [ebp - 0x18]
mov ebx, dword [0x100b9ea8]
add ebx, 4
mov dword [ebp - 0x1c], ebx
mov ebx, dword [0x100b9e34]
add ebx, 4
mov dword [ebp - 0x20], ebx
mov ebx, dword [ebp - 0x1c]
fld dword [ebx]
mov ebx, dword [ebp - 0x20]
fild dword [ebx]
fstp qword [ebp - 0x28]
fadd qword [ebp - 0x28]
fstp qword [ebp - 0x30]
mov ebx, dword [0x100b9ef0]
add ebx, 0x14
mov dword [ebp - 0x34], ebx
mov dword [ebp - 0x38], 0
push 0
push dword [ebp - 0x38]
push 0xffffff
call fcn.1002b643
mov dword [ebp - 0x3c], eax
mov ebx, dword [0x100b9ef0]
add ebx, 0x14
mov dword [ebp - 0x40], ebx
mov ebx, dword [ebp - 0x40]
fld dword [ebx]
fmul qword [0x100848d8]
fstp qword [ebp - 0x48]
fld qword [ebp - 0x48]
call fcn.10001b62
push eax
push 0x3f800000
push dword [ebp - 0x3c]
mov ebx, dword [ebp - 0x34]
push dword [ebx]
fld qword [ebp - 0x30]
fstp dword [ebp - 0x4c]
push dword [ebp - 0x4c]
fld qword [ebp - 0x18]
fstp dword [ebp - 0x50]
push dword [ebp - 0x50]
call fcn.1002b7c7
mov ebx, dword [0x100b9e24]
add ebx, 0xfc
mov dword [ebp - 4], ebx
mov ebx, dword [ebp - 4]
cmp dword [ebx], 0
je 0x10028ddc
mov ebx, dword [0x100b9ea8]
mov dword [ebp - 4], ebx
mov ebx, dword [0x100b9e34]
mov dword [ebp - 8], ebx
mov ebx, dword [ebp - 4]
fld dword [ebx]
mov ebx, dword [ebp - 8]
fild dword [ebx]
fstp qword [ebp - 0x10]
fadd qword [ebp - 0x10]
fstp qword [ebp - 0x18]
mov ebx, dword [0x100b9ea8]
add ebx, 4
mov dword [ebp - 0x1c], ebx
mov ebx, dword [0x100b9e34]
add ebx, 4
mov dword [ebp - 0x20], ebx
mov ebx, dword [ebp - 0x1c]
fld dword [ebx]
mov ebx, dword [ebp - 0x20]
fild dword [ebx]
fstp qword [ebp - 0x28]
fadd qword [ebp - 0x28]
fstp qword [ebp - 0x30]
fld qword [ebp - 0x30]
fsub qword [0x1008527b]
fstp qword [ebp - 0x38]
mov ebx, dword [0x100b9ea8]
mov dword [ebp - 0x3c], ebx
mov ebx, dword [0x100b9e34]
mov dword [ebp - 0x40], ebx
mov ebx, dword [ebp - 0x3c]
fld dword [ebx]
mov ebx, dword [ebp - 0x40]
fild dword [ebx]
fstp qword [ebp - 0x48]
fadd qword [ebp - 0x48]
fstp qword [ebp - 0x50]
mov ebx, dword [0x100b9ea8]
add ebx, 4
mov dword [ebp - 0x54], ebx
mov ebx, dword [0x100b9e34]
add ebx, 4
mov dword [ebp - 0x58], ebx
mov ebx, dword [ebp - 0x54]
fld dword [ebx]
mov ebx, dword [ebp - 0x58]
fild dword [ebx]
fstp qword [ebp - 0x60]
fadd qword [ebp - 0x60]
fadd qword [0x1008527b]
fstp qword [ebp - 0x68]
mov dword [ebp - 0x6c], 0
push 0
push dword [ebp - 0x6c]
push 0xff00
call fcn.1002b643
push eax
push 0x3f800000
fld qword [ebp - 0x68]
fstp dword [ebp - 0x74]
push dword [ebp - 0x74]
fld qword [ebp - 0x50]
fstp dword [ebp - 0x78]
push dword [ebp - 0x78]
fld qword [ebp - 0x38]
fstp dword [ebp - 0x7c]
push dword [ebp - 0x7c]
fld qword [ebp - 0x18]
fstp dword [ebp - 0x80]
push dword [ebp - 0x80]
call fcn.1002b89b
mov ebx, dword [0x100b9ea8]
mov dword [ebp - 4], ebx
mov ebx, dword [0x100b9e34]
mov dword [ebp - 8], ebx
mov ebx, dword [ebp - 4]
fld dword [ebx]
mov ebx, dword [ebp - 8]
fild dword [ebx]
fstp qword [ebp - 0x10]
fadd qword [ebp - 0x10]
fadd qword [0x1008527b]
fstp qword [ebp - 0x18]
mov ebx, dword [0x100b9ea8]
add ebx, 4
mov dword [ebp - 0x1c], ebx
mov ebx, dword [0x100b9e34]
add ebx, 4
mov dword [ebp - 0x20], ebx
mov ebx, dword [ebp - 0x1c]
fld dword [ebx]
mov ebx, dword [ebp - 0x20]
fild dword [ebx]
fstp qword [ebp - 0x28]
fadd qword [ebp - 0x28]
fstp qword [ebp - 0x30]
mov ebx, dword [0x100b9ea8]
mov dword [ebp - 0x34], ebx
mov ebx, dword [0x100b9e34]
mov dword [ebp - 0x38], ebx
mov ebx, dword [ebp - 0x34]
fld dword [ebx]
mov ebx, dword [ebp - 0x38]
fild dword [ebx]
fstp qword [ebp - 0x40]
fadd qword [ebp - 0x40]
fstp qword [ebp - 0x48]
fld qword [ebp - 0x48]
fsub qword [0x1008527b]
fstp qword [ebp - 0x50]
mov ebx, dword [0x100b9ea8]
add ebx, 4
mov dword [ebp - 0x54], ebx
mov ebx, dword [0x100b9e34]
add ebx, 4
mov dword [ebp - 0x58], ebx
mov ebx, dword [ebp - 0x54]
fld dword [ebx]
mov ebx, dword [ebp - 0x58]
fild dword [ebx]
fstp qword [ebp - 0x60]
fadd qword [ebp - 0x60]
fstp qword [ebp - 0x68]
mov dword [ebp - 0x6c], 0
push 0
push dword [ebp - 0x6c]
push 0xff00
call fcn.1002b643
push eax
push 0x3f800000
fld qword [ebp - 0x68]
fstp dword [ebp - 0x74]
push dword [ebp - 0x74]
fld qword [ebp - 0x50]
fstp dword [ebp - 0x78]
push dword [ebp - 0x78]
fld qword [ebp - 0x30]
fstp dword [ebp - 0x7c]
push dword [ebp - 0x7c]
fld qword [ebp - 0x18]
fstp dword [ebp - 0x80]
push dword [ebp - 0x80]
call fcn.1002b89b
mov ebx, dword [0x100b9e24]
add ebx, 0xd4
mov dword [ebp - 4], ebx
mov ebx, dword [ebp - 4]
cmp dword [ebx], 0
je 0x10028e87
mov ebx, dword [0x100b9e34]
mov dword [ebp - 4], ebx
mov ebx, dword [0x100b9ea8]
mov dword [ebp - 8], ebx
mov ebx, dword [ebp - 4]
fild dword [ebx]
fstp qword [ebp - 0x10]
fld qword [ebp - 0x10]
mov ebx, dword [ebp - 8]
fadd dword [ebx]
fstp qword [ebp - 0x18]
fld qword [ebp - 0x18]
fsub qword [0x100b2058]
fstp qword [ebp - 0x20]
mov ebx, dword [0x100b9e34]
add ebx, 4
mov dword [ebp - 0x24], ebx
mov ebx, dword [ebp - 0x24]
fild dword [ebx]
fstp qword [ebp - 0x2c]
fld qword [ebp - 0x2c]
fadd qword [0x100b2060]
fstp qword [ebp - 0x34]
mov dword [ebp - 0x38], 0
push 0
push dword [ebp - 0x38]
push 0xc080ff
call fcn.1002b643
mov dword [ebp - 0x3c], eax
push 1
push 0x41800000
push dword [ebp - 0x3c]
push 0x100b9f5c
fld qword [ebp - 0x34]
fstp dword [ebp - 0x40]
push dword [ebp - 0x40]
fld qword [ebp - 0x20]
fstp dword [ebp - 0x44]
push dword [ebp - 0x44]
call fcn.1002b97b
call fcn.1002bac6
mov ebx, dword [0x100b9e24]
add ebx, 0x104
mov dword [ebp - 4], ebx
mov ebx, dword [ebp - 4]
push dword [ebx]
call fcn.10029eb6
test eax, eax
je 0x10028ebb
and dword [0x100b9f60], 1
xor dword [0x100b9f60], 1
cmp dword [0x100b9f60], 0
je 0x10028f7d
mov ebx, dword [0x100b9e34]
mov dword [ebp - 4], ebx
mov ebx, dword [0x100b9e34]
add ebx, 4
mov dword [ebp - 8], ebx
mov ebx, dword [0x100b9e24]
add ebx, 0x104
mov dword [ebp - 0xc], ebx
mov ebx, dword [ebp - 0xc]
push dword [ebx]
call fcn.1002fc7a
mov dword [ebp - 0x10], eax
push 0x100b2068
push dword [ebp - 0x10]
push 0x100b2077
mov ecx, 3
call fcn.1000159f
add esp, 0xc
mov dword [ebp - 0x14], eax
mov ebx, dword [ebp - 0x10]
test ebx, ebx
je 0x10028f26
push ebx
call fcn.1006953e
add esp, 4
mov dword [ebp - 0x18], 0
push 0
push dword [ebp - 0x18]
push 0xff00
call fcn.1002b643
mov dword [ebp - 0x1c], eax
push 1
push 0x41800000
push dword [ebp - 0x1c]
lea eax, [ebp - 0x14]
push eax
mov ebx, dword [ebp - 8]
fild dword [ebx]
fstp dword [ebp - 0x20]
push dword [ebp - 0x20]
mov ebx, dword [ebp - 4]
fild dword [ebx]
fstp dword [ebp - 0x24]
push dword [ebp - 0x24]
call fcn.1002b97b
mov ebx, dword [ebp - 0x14]
test ebx, ebx
je 0x10028f78
push ebx
call fcn.1006953e
add esp, 4
jmp 0x10028f91
call fcn.1002fede
call fcn.100308e0
call fcn.10031d74
call fcn.10032034
mov ebx, dword [0x100b9e24]
add ebx, 0x10
mov dword [ebp - 4], ebx
mov ebx, dword [ebp - 4]
cmp dword [ebx], 0
je 0x100290f0
fild qword [0x100b9f64]
fstp qword [ebp - 8]
fld qword [ebp - 8]
fadd qword [0x100b208a]
fstp qword [ebp - 0x10]
fld qword [ebp - 0x10]
call fcn.10001b62
push edx
push eax
call fcn.10029d7c
mov dword [ebp - 0x18], eax
mov dword [ebp - 0x14], edx
fild qword [0x100b9f64]
fstp qword [ebp - 0x20]
fld qword [ebp - 0x20]
fadd qword [0x100b2092]
fstp qword [ebp - 0x28]
fld qword [ebp - 0x28]
call fcn.10001b62
push edx
push eax
call fcn.10029d7c
mov dword [ebp - 0x38], eax
mov dword [ebp - 0x34], edx
fild qword [ebp - 0x38]
fstp qword [ebp - 0x38]
fld qword [ebp - 0x38]
fadd qword [0x10085126]
fstp qword [ebp - 0x40]
push 1
push 0x20
fld qword [ebp - 0x40]
call fcn.10001b62
push edx
push eax
call fcn.10029c9a
mov dword [ebp - 0x44], eax
lea eax, [ebp - 0x44]
push eax
call fcn.1002eade
mov dword [ebp - 0x48], eax
mov ebx, dword [ebp - 0x44]
test ebx, ebx
je 0x10029044
push ebx
call fcn.1006953e
add esp, 4
fild qword [0x100b9f64]
fstp qword [ebp - 0x50]
fld qword [ebp - 0x50]
fadd qword [0x100b209a]
fstp qword [ebp - 0x58]
fld qword [ebp - 0x58]
call fcn.10001b62
push edx
push eax
call fcn.10029bb3
push 0x80000301
push 0
push eax
push 1
mov ebx, 0x168
call fcn.10069e80
add esp, 0x10
mov dword [ebp - 0x60], eax
push dword [ebp - 0x60]
push 0x100b20a2
push dword [ebp - 0x48]
push 0x100b20ad
mov ecx, 4
call fcn.1000159f
add esp, 0x10
mov dword [ebp - 0x64], eax
mov ebx, dword [ebp - 0x48]
test ebx, ebx
je 0x100290b5
push ebx
call fcn.1006953e
add esp, 4
mov ebx, dword [ebp - 0x60]
test ebx, ebx
je 0x100290c5
push ebx
call fcn.1006953e
add esp, 4
lea eax, [ebp - 0x64]
push eax
push dword [ebp - 0x14]
push dword [ebp - 0x18]
push dword [0x100b9f68]
push dword [0x100b9f64]
call fcn.10032d77
mov ebx, dword [ebp - 0x64]
test ebx, ebx
je 0x100290f0
push ebx
call fcn.1006953e
add esp, 4
mov ebx, dword [0x100b9e24]
mov dword [ebp - 4], ebx
mov ebx, dword [ebp - 4]
cmp dword [ebx], 0
je 0x1002910a
call fcn.10037aca
cmp dword [0x100b9f54], 0
je 0x100291e2
mov ebx, dword [0x100b9ef0]
mov dword [ebp - 4], ebx
mov ebx, dword [ebp - 4]
cmp dword [ebx], 0
je 0x10029140
cmp dword [0x100b9f6c], 1
jne 0x10029140
mov eax, 1
jmp 0x10029145
mov eax, 0
test eax, eax
je 0x1002915c
call fcn.1003ecb1
call fcn.100403d1
jmp 0x100291dd
mov ebx, dword [0x100b9ef0]
add ebx, 4
mov dword [ebp - 4], ebx
mov ebx, dword [ebp - 4]
cmp dword [ebx], 0
je 0x10029188
cmp dword [0x100b9f6c], 2
jne 0x10029188
mov eax, 1
jmp 0x1002918d
mov eax, 0
test eax, eax
je 0x1002919f
call fcn.1003ecb1
jmp 0x100291dd
mov ebx, dword [0x100b9ef0]
add ebx, 8
mov dword [ebp - 4], ebx
mov ebx, dword [ebp - 4]
cmp dword [ebx], 0
je 0x100291cb
cmp dword [0x100b9f6c], 3
jne 0x100291cb
mov eax, 1
jmp 0x100291d0
mov eax, 0
test eax, eax
je 0x100291dd
call fcn.1003ecb1
jmp 0x1002920a
mov dword [0x100b9f70], 0
mov dword [0x100b9f64], 0
mov dword [0x100b9f68], 0
mov dword [0x100b9f6c], 0
push 0x24
call fcn.10029eb6
test eax, eax
je 0x10029231
mov ebx, dword [0x100b9e24]
mov dword [ebp - 4], ebx
mov ebx, dword [ebp - 4]
and dword [ebx], 1
mov ebx, dword [ebp - 4]
xor dword [ebx], 1
push 0x23
call fcn.10029eb6
test eax, eax
je 0x10029286
call fcn.10024633
mov dword [ebp - 4], esp
push 0
push dword [0x100b9e08]
xor eax, eax
call dword [sym.imp.USER32.dll_ShowWindowAsync]
nop
nop
cmp dword [ebp - 4], esp
je 0x1002927c
push 0x10de
push 0x4010df3
push 6
call fcn.10069544
add esp, 0xc
push 0
call fcn.1006955c
add esp, 4
mov esp, ebp
pop ebp
ret