Function at 0x100afeb0
Capabilities:
Check for software breakpoints
Check for time delay via gettickcount
Enumerate pe sections

Disassembly:
push ebp
mov ebp, esp
sub esp, 0xd8
mov eax, dword [0x100fa040]
xor eax, ebp
mov dword [ebp - 4], eax
movzx eax, byte [ebp + 8]
push ebx
mov ebx, dword [ebp + 0xc]
mov dword [ebp - 0x7c], ebx
push esi
push edi
cmp eax, 0xf6
ja case.default.0x100b3237
movzx eax, byte [eax + 0x100b34c4]
mov edi, 1
mov esi, dword [sym.imp.KERNEL32.dll_GetTickCount]
jmp dword [eax*4 + 0x100b3444]
call fcn.10014680
test al, al
je case.default.0x100b3237
mov ecx, ebx
call fcn.100b37f0
mov eax, edi
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.100c0b64
mov esp, ebp
pop ebp
ret
call fcn.10014680
test al, al
je case.default.0x100b3237
mov ecx, ebx
call fcn.100b4250
mov eax, edi
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.100c0b64
mov esp, ebp
pop ebp
ret
movzx ecx, byte [ebx + 3]
movzx eax, byte [ebx + 4]
shl ecx, 8
or ecx, eax
and ecx, 0x7fff
cmp dword [0x107e7ce0], ecx
jne 0x100aff6d
mov eax, dword [ebx + 0xc]
mov dword [0x107e7ba0], eax
mov eax, dword [ebx + 0x10]
mov dword [0x107e7ba8], eax
mov eax, dword [ebx + 0x18]
mov dl, byte [ebx + 7]
mov ecx, dword [ebx + 0x14]
mov dword [0x107e7cd0], eax
mov eax, dword [0x107e7cbc]
mov dword [0x107e7cd4], ecx
test dl, 0x10
je 0x100affa2
cmp eax, 3
jae 0x100affa2
mov dword [eax*4 + 0x107e7cc0], ecx
inc eax
mov dword [0x107e7cbc], eax
mov dword [0x107e7cb8], eax
test dl, 0x20
je case.default.0x100b3237
cmp eax, 4
jae case.default.0x100b3237
mov dword [eax*4 + 0x107e7cc0], ecx
inc eax
mov dword [0x107e7cbc], eax
mov dword [0x107e7cb8], eax
jmp case.default.0x100b3237
cmp byte [ebx + 3], 0
mov dword [ebp - 0x88], 0
jbe case.0x100b3237.244
lea edx, [ebx + 4]
mov ecx, 0x861110
mov dword [ebp - 0x70], edx
mov edi, 0x402bc0
nop
movzx esi, byte [edx]
movzx eax, byte [edx + 1]
shl esi, 8
or esi, eax
mov dword [ebp - 0x80], esi
call ecx
mov ecx, eax
mov eax, 0x861420
call eax
mov ecx, eax
mov eax, 0x668890
call eax
push eax
call edi
mov ecx, eax
mov eax, 0x96a4c0
call eax
test eax, eax
je 0x100b003d
movzx eax, word [eax + 0x7e]
cmp eax, esi
jne 0x100b003d
push 0xf
mov eax, 0x861110
call eax
mov ecx, eax
mov eax, 0x85f9a0
call eax
push esi
mov eax, 0x57d9a0
call eax
add esp, 4
push eax
call edi
mov ecx, eax
mov eax, 0x96a4c0
call eax
mov edi, eax
mov dword [ebp - 0x74], edi
test edi, edi
je 0x100b00e7
cmp dword [0x8793710], 0
je 0x100b0098
movzx eax, word [edi + 0x84]
mov ecx, 0xda
cmp ax, cx
jne 0x100b0082
mov ecx, 0x8793710
jmp 0x100b0091
mov ecx, 0xd9
cmp ax, cx
jne 0x100b0098
mov ecx, 0x8793726
mov eax, 0x668770
call eax
lea ecx, [edi + 0x4ec]
mov eax, 0x4c88b0
call eax
xor esi, esi
mov dword [ebp - 0x64], eax
test eax, eax
jle 0x100b00e4
mov eax, dword [ebp - 0x74]
mov ebx, dword [ebp - 0x64]
add eax, 0x308
mov dword [ebp - 0x74], eax
nop dword [eax]
push esi
lea ecx, [edi + 0x4ec]
mov eax, 0x4c88d0
call eax
push dword [ebp - 0x74]
push eax
mov eax, 0x6684b0
call eax
inc esi
add esp, 8
cmp esi, ebx
jl 0x100b00c0
mov ebx, dword [ebp - 0x7c]
mov esi, dword [ebp - 0x80]
push esi
mov eax, 0x57d760
call eax
push esi
mov eax, 0x6685d0
call eax
add esp, 8
test eax, eax
je 0x100b0109
push eax
mov eax, 0x6685b0
call eax
add esp, 4
mov ecx, dword [ebp - 0x88]
mov edi, 0x402bc0
mov edx, dword [ebp - 0x70]
inc ecx
movzx eax, byte [ebx + 3]
add edx, 2
mov dword [ebp - 0x88], ecx
cmp ecx, eax
mov dword [ebp - 0x70], edx
mov ecx, 0x861110
jl 0x100afff0
mov eax, 1
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.100c0b64
mov esp, ebp
pop ebp
ret
mov eax, dword [ebx + 0xc]
mov dword [0x107e7cd4], eax
jmp case.default.0x100b3237
movzx ecx, byte [ebx + 3]
movzx eax, byte [ebx + 4]
shl ecx, 8
or ecx, eax
and ecx, 0x7fff
cmp dword [0x107e7ce0], ecx
jne case.default.0x100b3237
mov dword [0x107e7ba0], 0
jmp case.default.0x100b3237
cmp byte [ebx + 4], 0
mov dword [ebp - 0x70], 0
jbe case.0x100b3237.244
movss xmm1, dword [0x100f14a4]
lea esi, [ebx + 8]
movsd xmm2, qword [0x100f19a0]
mov edx, 0x5f7b60
nop
movzx eax, byte [esi - 1]
movzx ecx, byte [esi - 3]
shl ecx, 8
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movzx eax, byte [esi]
addss xmm0, xmm1
cvtps2pd xmm0, xmm0
mulsd xmm0, xmm2
cvtpd2ps xmm0, xmm0
movss dword [ebp - 0x6c], xmm0
movd xmm0, eax
movzx eax, byte [esi - 2]
cvtdq2ps xmm0, xmm0
or ecx, eax
mov edi, ecx
and edi, 0x7fff
addss xmm0, xmm1
cvtps2pd xmm0, xmm0
mulsd xmm0, xmm2
cvtpd2ps xmm0, xmm0
movss dword [ebp - 0x68], xmm0
cmp edi, 0x3e8
jae 0x100b0273
shr ecx, 0xf
lea eax, [esi + 1]
push ecx
lea ecx, [ebp - 0x6c]
push ecx
push eax
lea eax, [edi + 0x273c0]
imul eax, eax, 0x350
push eax
call edx
movss xmm1, dword [0x100f14a4]
add esp, 0x10
cmp dword [0x102c7350], 1
mov edx, 0x5f7b60
movsd xmm2, qword [0x100f19a0]
jne 0x100b0273
lea ecx, [edi + edi*4]
mov byte [ecx*4 + 0x10699450], 1
movq xmm0, qword [esi + 1]
movq qword [ecx*4 + 0x10699451], xmm0
mov eax, dword [esi + 9]
mov dword [ecx*4 + 0x10699459], eax
mov eax, dword [esi + 0xd]
mov dword [ecx*4 + 0x10699460], eax
mov ecx, dword [ebp - 0x70]
add esi, 0x14
movzx eax, byte [ebx + 4]
inc ecx
mov dword [ebp - 0x70], ecx
cmp ecx, eax
jl 0x100b01b0
mov eax, 1
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.100c0b64
mov esp, ebp
pop ebp
ret
cmp dword [0x102c7350], edi
jne case.default.0x100b3237
xor esi, esi
cmp byte [ebx + 4], 0
jbe case.default.0x100b3237
lea edx, [ebx + 5]
nop word [eax + eax]
movzx eax, byte [edx]
lea edx, [edx + 2]
movzx ecx, byte [edx - 1]
inc esi
shl eax, 8
or ecx, eax
lea eax, [ecx + ecx*4]
mov byte [eax*4 + 0x10699450], 0
mov dword [eax*4 + 0x10699451], 0xffffffff
mov dword [eax*4 + 0x10699455], 0xffffffff
mov dword [eax*4 + 0x10699459], 0xffffffff
mov dword [eax*4 + 0x10699460], 0
movzx eax, byte [ebx + 4]
cmp esi, eax
jl 0x100b02c0
jmp case.default.0x100b3237
push 9
mov eax, 0x861110
call eax
mov edx, 0x85ec20
mov ecx, eax
call edx
test al, al
jne case.default.0x100b3237
mov al, byte [ebx + 3]
cmp al, 3
je 0x100b0349
cmp al, 5
jb 0x100b033d
cmp al, 8
jbe 0x100b0349
cmp al, 9
je 0x100b0349
cmp al, 0xa
jne case.default.0x100b3237
mov eax, 0x7dd1b0
mov byte [0x81f6bef], 0
call eax
mov dword [0x8793744], 0
mov eax, edi
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.100c0b64
mov esp, ebp
pop ebp
ret
cmp byte [ebx + 3], 0xfe
jne 0x100b038a
mov eax, dword [ebx + 0xc]
mov dword [0x107e7b9c], eax
mov eax, dword [ebx + 0x10]
mov dword [0x107e7ba4], eax
cmp byte [ebx + 3], 0xff
jne case.default.0x100b3237
cmp dword [0x107e7ba0], 0
je 0x100b03a5
mov eax, dword [ebx + 0xc]
mov dword [0x107e7ba0], eax
mov eax, dword [ebx + 0x10]
mov dword [0x107e7ba8], eax
jmp case.default.0x100b3237
cmp byte [ebx + 3], 0xfe
jne 0x100b03c8
mov eax, dword [ebx + 8]
mov dword [0x107e7bcc], eax
mov eax, dword [ebx + 0xc]
mov dword [0x107e7bc8], eax
cmp byte [ebx + 3], 0xff
jne case.default.0x100b3237
mov eax, dword [ebx + 8]
mov dword [0x107e7b98], eax
mov eax, dword [ebx + 0xc]
mov dword [0x107e7bbc], eax
jmp case.default.0x100b3237
mov al, byte [ebx + 3]
test al, al
je 0x100b03fe
cmp al, 3
je 0x100b03fe
cmp al, 6
je 0x100b03fe
cmp al, 0x11
jne case.default.0x100b3237
mov eax, dword [ebx + 8]
mov dword [0x107e7cdc], eax
mov eax, dword [ebx + 0xc]
mov dword [0x107e7cd8], eax
mov eax, dword [ebx + 0x10]
mov dword [0x107e7ca4], eax
mov eax, dword [ebx + 0x14]
mov dword [0x107e7ca0], eax
mov eax, dword [ebx + 0x18]
mov dword [0x107e7c9c], eax
mov eax, dword [ebx + 0x1c]
mov dword [0x107e7bb8], eax
mov eax, dword [ebx + 0x20]
mov dword [0x107e7bb0], eax
jmp case.default.0x100b3237
cmp dword [0x102c736c], 0
je case.default.0x100b3237
cmp byte [ebx + 8], 0
jne 0x100b04af
mov al, byte [ebx + 0x10]
test al, al
je 0x100b04af
xor esi, esi
mov ecx, 0x108381d8
nop dword [eax]
mov edx, dword [ecx]
test edx, edx
je 0x100b0481
movzx eax, al
cmp edx, eax
je 0x100b0487
mov al, byte [ebx + 0x10]
add ecx, 0xc
inc esi
cmp ecx, 0x10838358
jl 0x100b0460
jmp case.default.0x100b3237
inc dword [0x108381cc]
movzx eax, byte [ebx + 0x10]
lea ecx, [esi + esi*2]
mov dword [ecx*4 + 0x108381d8], eax
mov eax, dword [ebx + 0xc]
dec eax
mov dword [ecx*4 + 0x108381dc], eax
mov eax, dword [ebx + 0xc]
mov dword [ecx*4 + 0x108381e0], eax
jmp case.default.0x100b3237
movzx edx, byte [ebx + 0x10]
xor ecx, ecx
mov eax, 0x108381d8
nop word [eax + eax]
cmp dword [eax], edx
je 0x100b04d4
add eax, 0xc
inc ecx
cmp eax, 0x10838358
jl 0x100b04c0
jmp case.default.0x100b3237
lea eax, [ecx + ecx*2]
mov dword [eax*4 + 0x108381d8], 0
mov dword [eax*4 + 0x108381dc], 0
mov dword [eax*4 + 0x108381e0], 0
dec dword [0x108381cc]
jmp case.default.0x100b3237
push ebx
call fcn.100a4c40
jmp case.default.0x100b3237
cmp byte [ebx + 3], 1
je 0x100b051e
xorps xmm0, xmm0
movups xmmword [0x10887188], xmm0
mov byte [0x102a893d], 0
mov dword [0xe8cb3c], 0
jmp case.default.0x100b3237
mov eax, dword [ebx + 4]
mov dword [0x10887198], eax
mov eax, dword [ebx + 8]
mov dword [0x1088719c], eax
mov eax, dword [ebx + 0xc]
mov dword [0x108871a0], eax
mov eax, dword [ebx + 0x10]
mov dword [0x108871a4], eax
jmp case.default.0x100b3237
xorps xmm0, xmm0
movups xmmword [0x10887188], xmm0
movups xmmword [0x10887198], xmm0
movups xmmword [0x108871a8], xmm0
jmp case.default.0x100b3237
cmp byte [ebx], 0xc1
jne 0x100b0580
mov al, byte [ebx + 3]
jmp 0x100b0583
mov al, byte [ebx + 4]
test al, al
je 0x100b059a
cmp al, 3
jne case.default.0x100b3237
push ebx
call fcn.10067050
jmp case.default.0x100b3237
push ebx
call fcn.10066e10
jmp case.default.0x100b3237
lea eax, [ebx + 3]
mov word [ebp - 0x7e], 0
mov byte [ebp - 0x76], 0
xorps xmm0, xmm0
movq qword [ebp - 0x68], xmm0
test eax, eax
je 0x100b05d1
movq xmm0, qword [eax]
mov ax, word [eax + 8]
movq qword [ebp - 0x68], xmm0
mov word [ebp - 0x7e], ax
jmp 0x100b05e1
call fcn.100cae4d
mov dword [eax], 0x16
call fcn.100c9e27
lea esi, [ebx + 0xe]
test esi, esi
je 0x100b05f5
mov ecx, 0x16
lea edi, [ebp - 0x60]
rep movsd dword es:[edi], dword [esi]
movsb byte es:[edi], byte [esi]
jmp 0x100b0615
push 0x59
lea eax, [ebp - 0x60]
push 0
push eax
call fcn.100c2d20
add esp, 0xc
call fcn.100cae4d
mov dword [eax], 0x16
call fcn.100c9e27
lea edi, [ebp - 0x60]
lea ecx, [edi + 1]
nop dword [eax + eax]
mov al, byte [edi]
inc edi
test al, al
jne 0x100b0620
sub edi, ecx
cmp edi, 0x2d
jle 0x100b0689
mov ecx, 0x2b
lea edx, [ebp - 0x38]
mov eax, 0x28
sub ecx, edx
mov dword [ebp - 0x70], eax
mov dword [ebp - 0x74], ecx
lea esi, [ebp - 0x60]
add esi, eax
mov al, byte [esi]
mov byte [ebp - 0x75], al
movsx eax, al
push eax
call fcn.100caef0
add esp, 4
test eax, eax
jne 0x100b0663
cmp byte [ebp - 0x75], 0x20
jne 0x100b067e
mov eax, dword [ebp - 0x74]
add eax, esi
mov word [esi], 0x2e2e
mov byte [esi + 2], 0x2e
cmp eax, 0x59
jae 0x100b343d
mov byte [esi + 3], 0
mov eax, dword [ebp - 0x70]
inc eax
mov dword [ebp - 0x70], eax
cmp eax, edi
jl 0x100b0643
mov eax, dword [0x10246760]
cmp eax, 0xe
jle 0x100b069a
xor eax, eax
mov dword [0x10246760], eax
mov cx, word [ebp - 0x7e]
lea esi, [ebp - 0x60]
movq xmm0, qword [ebp - 0x68]
imul eax, eax, 0xcf
add eax, 0x10246768
movq qword [eax], xmm0
mov word [eax + 8], cx
mov cl, byte [ebp - 0x76]
mov byte [eax + 0xa], cl
mov ecx, 0x16
imul edi, dword [0x10246760], 0xcf
add edi, 0x10246773
rep movsd dword es:[edi], dword [esi]
mov ecx, 0x1a
movsb byte es:[edi], byte [esi]
imul edi, dword [0x10246760], 0xcf
lea esi, [ebx + 0x67]
mov ebx, 0x10247394
add edi, 0x102467cc
rep movsd dword es:[edi], dword [esi]
movsw word es:[edi], word [esi]
movsb byte es:[edi], byte [esi]
mov eax, dword [0x10246760]
inc eax
mov dword [0x10246760], eax
dec eax
mov dword [ebp - 0x80], eax
nop dword [eax + eax]
imul edx, eax, 0xcf
mov ecx, 0x16
mov edi, ebx
movq xmm0, qword [edx + 0x10246768]
lea esi, [edx + 0x10246773]
movq qword [ebx - 0xb], xmm0
mov ax, word [edx + 0x10246770]
mov word [ebx - 3], ax
mov al, byte [edx + 0x10246772]
mov byte [ebx - 1], al
rep movsd dword es:[edi], dword [esi]
mov ecx, 0x1a
mov eax, dword [ebp - 0x80]
movsb byte es:[edi], byte [esi]
lea esi, [edx + 0x102467cc]
lea edi, [ebx + 0x59]
rep movsd dword es:[edi], dword [esi]
movsw word es:[edi], word [esi]
movsb byte es:[edi], byte [esi]
test eax, eax
jg 0x100b0768
mov eax, 0xe
jmp 0x100b0769
dec eax
add ebx, 0xcf
mov dword [ebp - 0x80], eax
cmp ebx, 0x10247ee6
jle 0x100b0710
mov ebx, dword [ebp - 0x7c]
push dword [ebp + 0x14]
movzx eax, byte [ebp + 8]
push dword [ebp + 0x10]
push ebx
push eax
mov eax, 0x663b20
call eax
add esp, 0x10
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.100c0b64
mov esp, ebp
pop ebp
ret
mov eax, dword [ebx + 4]
mov dword [0x1050c99c], eax
mov eax, dword [ebx + 8]
mov dword [0x1050c998], eax
mov eax, dword [ebx + 0xc]
mov dword [0x1050c994], eax
jmp case.default.0x100b3237
mov ecx, ebx
call fcn.100b5520
mov eax, edi
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.100c0b64
mov esp, ebp
pop ebp
ret
xor esi, esi
mov edi, 0x402bc0
mov ebx, 0x96a4c0
push esi
call edi
mov ecx, eax
call ebx
inc esi
mov byte [eax + 0x17], 0
cmp esi, 0x190
jl 0x100b07e4
jmp 0x100b077a
mov ecx, ebx
call fcn.100b45f0
mov eax, edi
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.100c0b64
mov esp, ebp
pop ebp
ret
movzx ecx, byte [ebx + 3]
movzx eax, byte [ebx + 4]
shl ecx, 8
or ecx, eax
and ecx, 0x7fff
cmp dword [0x107e7ce0], ecx
jne case.default.0x100b3237
mov eax, dword [ebx + 8]
mov dword [0x107e7cd8], eax
jmp case.default.0x100b3237
cmp byte [ebx], 0xc1
jne 0x100b084a
mov al, byte [ebx + 3]
jmp 0x100b084d
mov al, byte [ebx + 4]
movzx eax, al
sub eax, 0
je 0x100b092f
sub eax, 1
jne case.default.0x100b3237
cmp dword [0x102c736c], eax
je 0x100b089e
mov dword [0x108381cc], eax
mov eax, 0x108381dc
nop dword [eax]
nop dword [eax + eax]
mov dword [eax - 4], 0
mov dword [eax], 0
mov dword [eax + 4], 0
add eax, 0xc
cmp eax, 0x1083835c
jl 0x100b0880
mov eax, dword [0x107e7d00]
cmp eax, 1
je case.default.0x100b3237
cmp byte [ebx + 4], 1
mov esi, dword [sym.imp.KERNEL32.dll_GetTickCount]
jne 0x100b0920
mov ecx, dword [0x107e7cfc]
xor edi, edi
cmp ecx, 3
cmove edi, eax
xor eax, eax
cmp ecx, 3
mov dword [0x107e7d00], edi
cmove eax, ecx
mov dword [0x107e7cfc], eax
call esi
mov dword [0x107e7cf8], eax
call esi
xor ecx, ecx
mov dword [0x107e7cf4], eax
mov eax, dword [0x107e7ce8]
test edi, edi
mov dword [0x107e7cf0], 0
cmove eax, ecx
mov dword [0x107e7cec], 0
mov dword [0x107e7ce8], eax
test edi, edi
mov eax, dword [0x107e7ce4]
cmove eax, ecx
mov dword [0x107e7ce4], eax
jmp case.default.0x100b3237
mov dword [0x107e7cfc], 0
jmp 0x100b09c3
cmp dword [0x102c736c], 0
je 0x100b096e
mov dword [0x108381cc], 0
mov eax, 0x108381dc
nop word [eax + eax]
mov dword [eax - 4], 0
mov dword [eax], 0
mov dword [eax + 4], 0
add eax, 0xc
cmp eax, 0x1083835c
jl 0x100b0950
mov dword [0x8793714], edi
movzx esi, word [ebx + 0x14]
cmp dword [0x107e7d00], edi
jne 0x100b098d
cmp dword [0x107e7cfc], 3
jne case.default.0x100b3237
lea eax, [ebx + 4]
push eax
push 0x10
push 0x107e7d04
call fcn.100c9f6b
xor ecx, ecx
mov word [0x1069ebdc], si
add esp, 0xc
cmp dword [0x107e7cfc], 3
cmove ecx, dword [0x107e7cfc]
mov dword [0x107e7cfc], ecx
mov esi, dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [0x107e7d00], 2
call esi
mov dword [0x107e7cf8], eax
call esi
mov dword [0x107e7cf4], eax
mov dword [0x107e7cf0], 0
mov dword [0x107e7cec], 0
jmp case.default.0x100b3237
cmp byte [ebx], 0xc1
jne 0x100b09fe
mov al, byte [ebx + 3]
jmp 0x100b0a01
mov al, byte [ebx + 4]
cmp al, 0x14
je 0x100b0b8d
cmp al, 0x20
jne case.default.0x100b3237
movzx ecx, byte [ebx + 4]
movzx eax, byte [ebx + 5]
shl ecx, 8
or ecx, eax
mov eax, 0x57d9a0
push ecx
call eax
add esp, 4
push eax
mov eax, 0x402bc0
call eax
mov edx, 0x96a4c0
mov ecx, eax
call edx
mov edi, eax
test edi, edi
je case.0x100b3237.244
mov ecx, dword [0x8793710]
test ecx, ecx
je 0x100b0ad9
mov eax, dword [ebx + 8]
mov esi, 0xda
mov edx, dword [ebx + 0xc]
cmp word [edi + 0x84], si
jne 0x100b0a9f
mov dword [ecx + 2], eax
mov dword [ecx + 6], edx
movq xmm0, qword [ebx + 0x10]
movq qword [ecx + 0xb], xmm0
mov ax, word [ebx + 0x18]
mov word [ecx + 0x13], ax
mov al, byte [ebx + 6]
mov byte [ecx], al
mov al, byte [ebx + 7]
mov byte [ecx + 1], al
mov eax, 1
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.100c0b64
mov esp, ebp
pop ebp
ret
mov dword [ecx + 0x18], eax
mov dword [ecx + 0x1c], edx
movq xmm0, qword [ebx + 0x10]
movq qword [ecx + 0x21], xmm0
mov ax, word [ebx + 0x18]
mov word [ecx + 0x29], ax
mov al, byte [ebx + 6]
mov byte [ecx + 0x16], al
mov al, byte [ebx + 7]
mov byte [ecx + 0x17], al
mov eax, 1
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.100c0b64
mov esp, ebp
pop ebp
ret
push 0x2c
mov eax, 0x9cdb52
call eax
mov esi, eax
add esp, 4
test esi, esi
je 0x100b0afe
push 0x668cc0
push 2
push 0x16
push esi
mov eax, 0x4086f0
call eax
jmp 0x100b0b00
xor esi, esi
mov dword [0x8793710], esi
mov edx, 0xda
mov eax, dword [ebx + 8]
mov ecx, dword [ebx + 0xc]
cmp word [edi + 0x84], dx
jne 0x100b0b53
mov dword [esi + 2], eax
mov dword [esi + 6], ecx
movq xmm0, qword [ebx + 0x10]
movq qword [esi + 0xb], xmm0
mov ax, word [ebx + 0x18]
mov word [esi + 0x13], ax
mov al, byte [ebx + 6]
mov byte [esi], al
mov al, byte [ebx + 7]
mov byte [esi + 1], al
mov eax, 1
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.100c0b64
mov esp, ebp
pop ebp
ret
mov dword [esi + 0x18], eax
mov dword [esi + 0x1c], ecx
movq xmm0, qword [ebx + 0x10]
movq qword [esi + 0x21], xmm0
mov ax, word [ebx + 0x18]
mov word [esi + 0x29], ax
mov al, byte [ebx + 6]
mov byte [esi + 0x16], al
mov al, byte [ebx + 7]
mov byte [esi + 0x17], al
mov eax, 1
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.100c0b64
mov esp, ebp
pop ebp
ret
movzx ecx, byte [ebx + 4]
movzx eax, byte [ebx + 5]
shl ecx, 8
or ecx, eax
mov eax, 0x57d9a0
push ecx
call eax
add esp, 4
mov edi, 0x402bc0
push eax
call edi
mov esi, 0x96a4c0
mov ecx, eax
call esi
test eax, eax
je case.0x100b3237.244
mov cl, byte [ebx + 8]
test cl, cl
je 0x100b0cc6
cmp cl, 1
jne 0x100b0c06
mov eax, 0x669fc0
lea ecx, [ebp - 0x70]
call eax
lea eax, [ebp - 0x70]
push eax
mov eax, 0x66d2e0
call eax
add esp, 4
lea ecx, [ebp - 0x70]
mov eax, 0x669fe0
call eax
mov eax, 1
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.100c0b64
mov esp, ebp
pop ebp
ret
cmp cl, 2
jne case.0x100b3237.244
movzx ecx, byte [ebx + 6]
movzx eax, byte [ebx + 7]
shl ecx, 8
or ecx, eax
mov eax, 0x57d9a0
push ecx
call eax
add esp, 4
push eax
call edi
mov ecx, eax
call esi
mov esi, eax
test esi, esi
je case.0x100b3237.244
mov eax, 0x66a000
lea ecx, [ebp - 0x74]
call eax
lea ecx, [ebp - 0x7c]
mov dword [ebp - 0x7c], 0
push ecx
push eax
mov eax, 0x66d360
call eax
add esp, 8
lea ecx, [ebp - 0x74]
mov eax, 0x66a020
call eax
cmp dword [ebp - 0x7c], 0
je case.0x100b3237.244
add esi, 0x38
mov edi, 0x402320
push esi
push 0x5ce
mov ecx, 0x8128adc
call edi
push eax
push dword [ebp - 0x7c]
push 0x102a22b0
call fcn.100720b0
add esp, 0x10
mov ecx, 0x8128adc
push esi
push 0x5d0
call edi
push eax
push dword [ebp - 0x7c]
push 0x102a22b0
call fcn.100720b0
add esp, 0x10
mov eax, 1
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.100c0b64
mov esp, ebp
pop ebp
ret
mov ecx, 0xda
cmp word [eax + 0x84], cx
mov eax, 0x668770
mov ecx, 0x8793710
je 0x100b0ce3
mov ecx, 0x8793726
call eax
mov eax, 0x669f80
lea ecx, [ebp - 0x70]
call eax
lea eax, [ebp - 0x70]
push eax
mov eax, 0x66d260
call eax
add esp, 4
lea ecx, [ebp - 0x70]
mov eax, 0x669fa0
call eax
mov eax, 1
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.100c0b64
mov esp, ebp
pop ebp
ret
cmp byte [ebx], 0xc1
jne 0x100b0d27
mov al, byte [ebx + 3]
jmp 0x100b0d2a
mov al, byte [ebx + 4]
cmp al, 0x32
jne case.default.0x100b3237
mov eax, 0x102c3c88
nop word [eax + eax]
mov dword [eax - 4], 0xffffffff
mov dword [eax], 0xffffffff
add eax, 8
cmp eax, 0x102c3d88
jl 0x100b0d40
xor esi, esi
cmp byte [ebx + 5], 0
jbe case.default.0x100b3237
lea edx, [ebx + 6]
mov ecx, dword [edx]
lea edx, [edx + 8]
mov eax, dword [edx - 4]
inc esi
mov dword [ecx*8 + 0x102c3628], eax
movzx eax, byte [ebx + 5]
cmp esi, eax
jl 0x100b0d66
jmp case.default.0x100b3237
cmp byte [ebx], 0xc1
jne 0x100b0d8d
mov al, byte [ebx + 3]
jmp 0x100b0d90
mov al, byte [ebx + 4]
cmp al, 0x20
jne case.default.0x100b3237
mov eax, 0x861110
call eax
mov edx, 0x861280
mov ecx, eax
call edx
mov ecx, dword [eax + 0x10]
test ecx, ecx
je case.0x100b3237.244
movzx eax, word [ebx + 6]
push eax
mov eax, 0x7da760
call eax
test eax, eax
je case.0x100b3237.244
mov ecx, dword [ebx + 8]
mov dword [eax + 0x63], ecx
mov eax, 1
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.100c0b64
mov esp, ebp
pop ebp
ret
cmp byte [ebx], 0xc1
jne 0x100b0ded
mov al, byte [ebx + 3]
jmp 0x100b0df0
mov al, byte [ebx + 4]
movzx eax, al
sub eax, 0
je 0x100b0f45
sub eax, 1
je 0x100b0e34
sub eax, 1
jne case.default.0x100b3237
cmp dword [0x107e7d00], edi
je case.default.0x100b3237
mov al, byte [ebx + 4]
test al, al
je 0x100b0e25
cmp al, 2
jne case.default.0x100b3237
mov dword [0x107e7cfc], 0
jmp 0x100b09bd
mov al, byte [ebx + 4]
cmp dword [0x107e7cfc], edi
jne 0x100b0f3b
cmp dword [0x107e7ce8], 0
je 0x100b0f3b
cmp al, 1
jne 0x100b0ead
xor eax, eax
mov dword [ebp - 0x7c], 0xf304c1
lea ecx, [ebp - 0x7c]
mov byte [ebp - 0x79], al
lea edx, [eax + 4]
call fcn.100b5210
mov esi, dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [0x107e7d00], edi
mov dword [0x107e7cfc], 2
call esi
mov dword [0x107e7cf8], eax
call esi
mov dword [0x107e7cf4], eax
mov dword [0x107e7cf0], 0x7530
mov dword [0x107e7cec], 0x7530
call fcn.100b5470
jmp case.default.0x100b3237
mov esi, dword [sym.imp.KERNEL32.dll_GetTickCount]
cmp al, 3
jne 0x100b0ef9
mov dword [0x107e7d00], edi
mov dword [0x107e7cfc], edi
call esi
mov dword [0x107e7cf8], eax
call esi
mov dword [0x107e7cf4], eax
mov dword [0x107e7cf0], 0x2710
mov dword [0x107e7cec], 0x7530
mov dword [0x107e7ce8], 0
call fcn.100b5470
jmp case.default.0x100b3237
mov dword [0x107e7d00], 2
mov dword [0x107e7cfc], 0
call esi
mov dword [0x107e7cf8], eax
call esi
mov dword [0x107e7cf4], eax
mov ecx, 0x8793750
mov eax, 0x63a180
mov dword [0x107e7cf0], 0
mov dword [0x107e7cec], 0
call eax
call fcn.100b5470
jmp case.default.0x100b3237
movzx ecx, byte [ebx + 5]
movzx eax, byte [ebx + 6]
shl ecx, 8
or ecx, eax
mov dword [0x107e7ce0], ecx
jmp case.default.0x100b3237
cmp byte [ebx], 0xc1
jne 0x100b0f67
mov al, byte [ebx + 3]
jmp 0x100b0f6a
mov al, byte [ebx + 4]
movzx eax, al
movzx eax, byte [eax + 0x100b36c4]
jmp dword [eax*4 + 0x100b35bc]
cmp dword [0x102c736c], 0
je 0x100b0fb1
mov dword [0x108381cc], 0
mov eax, 0x108381dc
mov dword [eax - 4], 0
mov dword [eax], 0
mov dword [eax + 4], 0
add eax, 0xc
cmp eax, 0x1083835c
jl 0x100b0f93
call fcn.100af870
mov ecx, 0x102a222c
call fcn.10063740
mov ecx, 0x102a2234
call fcn.10063680
push ebx
call fcn.10053c20
mov eax, edi
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.100c0b64
mov esp, ebp
pop ebp
ret
push ebx
call fcn.10054110
mov eax, edi
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.100c0b64
mov esp, ebp
pop ebp
ret
mov ecx, ebx
call fcn.100b4840
jmp case.0x100b0f74.2
mov eax, dword [ebx + 0x1c]
mov dword [0x107e7ba0], eax
mov eax, dword [ebx + 0x20]
mov dword [0x107e7b98], eax
mov eax, dword [ebx + 0x24]
mov dword [0x107e7bbc], eax
mov eax, dword [ebx + 0x28]
mov dword [0x107e7ba8], eax
jmp case.0x100b0f74.2
mov ecx, ebx
call fcn.100b4ac0
mov eax, edi
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.100c0b64
mov esp, ebp
pop ebp
ret
mov al, byte [ebx + 4]
sub al, 0x10
cmp al, 4
ja case.0x100b0f74.2
mov eax, dword [ebx + 0xc]
mov dword [0x107e7cd8], eax
mov eax, dword [ebx + 0x10]
mov dword [0x107e7b9c], eax
mov eax, dword [ebx + 0x14]
mov dword [0x107e7bcc], eax
mov eax, dword [ebx + 0x18]
mov dword [0x107e7bc8], eax
mov eax, dword [ebx + 0x1c]
mov dword [0x107e7ba4], eax
mov eax, dword [ebx + 0x20]
mov dword [0x107e7ca4], eax
mov eax, dword [ebx + 0x24]
mov dword [0x107e7ca0], eax
mov eax, dword [ebx + 0x28]
mov dword [0x107e7c9c], eax
mov eax, dword [ebx + 0x2c]
mov dword [0x107e7bb8], eax
mov eax, dword [ebx + 0x30]
mov dword [0x107e7bb0], eax
jmp case.0x100b0f74.2
mov eax, dword [ebx + 8]
mov dword [0x107e7ba0], eax
mov eax, dword [ebx + 0xc]
mov dword [0x107e7ba8], eax
mov eax, dword [ebx + 0x10]
mov dword [0x107e7cd4], eax
mov eax, dword [ebx + 0x14]
mov dword [0x107e7cd0], eax
jmp case.0x100b0f74.2
mov ecx, ebx
call fcn.100b4dd0
jmp case.0x100b0f74.2
mov eax, dword [ebx + 0x14]
mov dword [0x107e7b9c], eax
mov eax, dword [ebx + 0x18]
mov dword [0x107e7bcc], eax
mov eax, dword [ebx + 0x1c]
mov dword [0x107e7bc8], eax
mov eax, dword [ebx + 0x20]
mov dword [0x107e7ba4], eax
mov eax, dword [ebx + 0x28]
mov ecx, dword [ebx + 0x2c]
mov dword [0x107e7cb0], eax
mov dword [0x107e7cb4], ecx
mov eax, dword [ebx + 0x30]
mov ecx, dword [ebx + 0x34]
mov dword [0x107e7ca8], eax
mov dword [0x107e7cac], ecx
mov ecx, dword [0x8128ac8]
movzx eax, word [ebx + 0x12]
mov word [ecx + 0x40], ax
mov ecx, dword [0x8128ac8]
movzx eax, word [ebx + 0x12]
mov word [ecx + 0x42], ax
jmp case.0x100b0f74.2
mov dword [0x1069940c], 0
mov dword [0x10699410], 0
mov dword [0x10699414], 0
jmp case.0x100b0f74.2
movaps xmm0, xmmword [0x100f21a0]
push 0x120
push 0xff
push 0x10869e34
mov dword [0x10869de0], 0
movups xmmword [0x10869e1c], xmm0
mov dword [0x10869e2c], 0
mov dword [0x10869e30], 0
call fcn.100c2d20
add esp, 0xc
cmp byte [ebx + 0x1d], 0
jbe case.0x100b3237.244
movzx eax, byte [ebx + 0x1c]
cmp dword [0x10869de8], eax
jne case.0x100b3237.244
mov dword [0x10869de0], edi
xor edx, edx
movzx eax, byte [ebx + 0x1d]
mov dword [0x10869dec], eax
movsx eax, word [ebx + 6]
mov dword [0x10869e1c], eax
movsx eax, word [ebx + 8]
mov dword [0x10869e20], eax
mov eax, dword [ebx + 0xc]
mov dword [0x10869e24], eax
mov eax, dword [ebx + 0x10]
mov dword [0x10869e28], eax
mov eax, dword [ebx + 0x14]
mov dword [0x10869e2c], eax
mov eax, dword [ebx + 0x18]
mov dword [0x10869e30], eax
cmp byte [ebx + 0x1e], dl
jbe case.0x100b3237.244
mov eax, 0x10869e13
lea ecx, [ebx + 0x23]
sub eax, ebx
mov edi, 0x10869e11
mov dword [ebp - 0x74], eax
mov esi, 0x10869e1d
mov eax, 0x10869e14
sub edi, ebx
sub eax, ebx
mov dword [ebp - 0x64], eax
mov eax, 0x10869e15
sub eax, ebx
mov dword [ebp - 0x84], eax
mov eax, 0x10869e16
sub eax, ebx
mov dword [ebp - 0x8c], eax
mov eax, 0x10869e19
sub eax, ebx
sub esi, ebx
mov dword [ebp - 0x70], eax
mov ax, word [ecx - 3]
lea ecx, [ecx + 0x18]
mov ebx, dword [ebp - 0x74]
inc edx
mov word [edi + ecx - 0x18], ax
mov al, byte [ecx - 0x19]
mov byte [ebx + ecx - 0x18], al
mov al, byte [ecx - 0x18]
mov ebx, dword [ebp - 0x64]
mov byte [ebx + ecx - 0x18], al
mov al, byte [ecx - 0x17]
mov ebx, dword [ebp - 0x84]
mov byte [ebx + ecx - 0x18], al
mov al, byte [ecx - 0x16]
mov ebx, dword [ebp - 0x8c]
mov byte [ebx + ecx - 0x18], al
mov ebx, dword [ebp - 0x70]
mov eax, dword [ecx - 0x13]
mov dword [ebx + ecx - 0x18], eax
movq xmm0, qword [ecx - 0xf]
mov ebx, dword [ebp - 0x7c]
movq qword [esi + ecx - 0x18], xmm0
mov eax, dword [ecx - 7]
mov dword [esi + ecx - 0x10], eax
movzx eax, byte [ebx + 0x1e]
cmp edx, eax
jl 0x100b1252
mov eax, 1
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.100c0b64
mov esp, ebp
pop ebp
ret
mov al, byte [ebx + 4]
cmp al, 0xa
jbe 0x100b1329
mov eax, 0x9cfb8d
mov dword [0x10869e00], 0x41a00000
call eax
cdq
mov ecx, 0x3c
idiv ecx
add edx, 0x96
mov dword [0x10869e04], edx
movzx eax, byte [ebx + 4]
sub eax, 0xa
mov dword [0x10869e18], eax
mov eax, dword [0x10869e30]
test eax, eax
jle case.0x100b3237.244
dec eax
mov dword [0x10869e30], eax
lea eax, [ecx - 0x3b]
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.100c0b64
mov esp, ebp
pop ebp
ret
cmp al, 3
jne 0x100b134d
mov dword [0x10869e14], 2
mov eax, 1
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.100c0b64
mov esp, ebp
pop ebp
ret
cmp al, 4
jne 0x100b1385
mov dword [0x10869e08], 0
mov eax, 1
mov dword [0x10869e04], 0xffffffff
mov dword [0x10869e14], 0
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.100c0b64
mov esp, ebp
pop ebp
ret
mov dword [0x10869e14], edi
mov eax, 1
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.100c0b64
mov esp, ebp
pop ebp
ret
cmp byte [ebx], 0xc1
jne 0x100b3223
mov al, byte [ebx + 3]
jmp 0x100b3226
mov al, byte [ebx + 4]
movzx eax, al
add eax, 0xffffff10
cmp eax, 4
ja case.default.0x100b3237
jmp dword [eax*4 + 0x100b37d8]
mov byte [0x102a527d], 1
mov dword [0xe8cb3c], 1
movzx eax, word [ebx + 8]
mov dword [0x10109c4c], eax
movzx eax, word [ebx + 6]
mov dword [0x10109c3c], eax
mov eax, dword [ebx + 0xc]
mov dword [0x10109c40], eax
mov eax, dword [ebx + 0x10]
mov dword [0x10109c44], eax
mov eax, dword [ebx + 0x14]
mov dword [0x10109c48], eax
mov dword [0x102a5328], 0xbf800000
mov dword [0x102a52c8], 0xbf800000
call esi
sub eax, 0xc8
mov dword [0x102a52d8], eax
call esi
sub eax, 0xc8
lea esi, [ebx + 0x58]
mov dword [0x102a5338], eax
mov ecx, 0x40
movups xmm0, xmmword [ebx + 0x18]
mov edi, 0x10109cb0
movups xmmword [0x10109c70], xmm0
movups xmm0, xmmword [ebx + 0x28]
movups xmmword [0x10109c80], xmm0
movups xmm0, xmmword [ebx + 0x38]
movups xmmword [0x10109c90], xmm0
movups xmm0, xmmword [ebx + 0x48]
movups xmmword [0x10109ca0], xmm0
rep movsd dword es:[edi], dword [esi]
jmp case.default.0x100b3237
cmp byte [ebx + 4], 1
jne case.default.0x100b3237
mov eax, dword [ebx + 8]
mov dword [0x102aa60c], eax
call esi
mov dword [0x102aa610], eax
mov eax, dword [0xe61e18]
mov dword [0x102aa614], eax
jmp case.default.0x100b3237
mov eax, dword [0x100fc064]
xor edi, edi
mov ecx, dword [0x100fc068]
cmp eax, ecx
je 0x100b3326
mov ecx, eax
mov dword [0x100fc068], ecx
cmp dword [ebx + 8], edi
jle 0x100b337a
lea esi, [ebx + 0xc]
nop
cmp ecx, dword [0x100fc06c]
je 0x100b335f
movups xmm0, xmmword [esi]
movups xmmword [ecx], xmm0
movq xmm0, qword [esi + 0x10]
movq qword [ecx + 0x10], xmm0
mov eax, dword [esi + 0x18]
mov dword [ecx + 0x18], eax
mov ecx, dword [0x100fc068]
add ecx, 0x1c
mov dword [0x100fc068], ecx
jmp 0x100b3371
push esi
push ecx
mov ecx, 0x100fc064
call fcn.10013fe0
mov ecx, dword [0x100fc068]
inc edi
add esi, 0x1c
cmp edi, dword [ebx + 8]
jl 0x100b3330
cmp dword [0x100fc0ac], edi
jge case.0x100b3237.244
mov dword [0x100fc0ac], edi
mov eax, 1
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.100c0b64
mov esp, ebp
pop ebp
ret
mov eax, dword [0x100fc070]
xor edx, edx
mov ecx, dword [0x100fc074]
mov dword [ebp - 0x74], edx
cmp eax, ecx
je 0x100b33be
mov ecx, eax
mov dword [0x100fc074], ecx
xor edi, edi
cmp dword [ebx + 8], edx
jle 0x100b3419
lea esi, [ebx + 0xc]
cmp ecx, dword [0x100fc078]
je 0x100b33f7
movups xmm0, xmmword [esi]
movups xmmword [ecx], xmm0
movq xmm0, qword [esi + 0x10]
movq qword [ecx + 0x10], xmm0
mov eax, dword [esi + 0x18]
mov dword [ecx + 0x18], eax
mov ecx, dword [0x100fc074]
add ecx, 0x1c
mov dword [0x100fc074], ecx
jmp 0x100b340c
push esi
push ecx
mov ecx, 0x100fc070
call fcn.10013fe0
mov ecx, dword [0x100fc074]
mov edx, dword [ebp - 0x74]
inc edx
inc edi
add esi, 0x1c
mov dword [ebp - 0x74], edx
cmp edi, dword [ebx + 8]
jl 0x100b33c8
cmp dword [0x100fc0ac], edx
jge case.0x100b3237.244
mov dword [0x100fc0ac], edx
mov ecx, dword [ebp - 4]
mov eax, 1
pop edi
pop esi
xor ecx, ebp
pop ebx
call fcn.100c0b64
mov esp, ebp
pop ebp
ret
call fcn.100c12b0
nop
hlt