Function at 0x101cc9b0
Capabilities:
Check for peb beingdebugged flag
Check for time delay via queryperformancecounter

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x74
mov eax, dword [0x11ad127c]
xor eax, ebp
mov dword [ebp - 4], eax
push ebx
mov ebx, ecx
push esi
push edi
push ebx
mov ecx, dword [ebx]
and byte [ebx + 0xf58], 0xfe
call fcn.101ddb80
mov esi, eax
mov dword [ebp - 0x70], esi
test esi, esi
js 0x101cd912
mov eax, dword [ebx + 0x11d8]
test byte [eax + 0x605], 0x10
je 0x101cca01
mov eax, dword [eax + 0x5e0]
mov ecx, dword [eax + 0x3c]
mov eax, dword [ecx]
call dword [eax + 0x2c]
mov dword [ebp - 0x70], eax
mov ecx, dword [ebx + 0x11d0]
push 0
push ebx
mov eax, dword [ecx]
call dword [eax + 0x2c]
mov eax, dword [ebx + 0xf7c]
and byte [eax + 0xb50], 0xfd
mov ecx, dword [ebx + 0xf7c]
call fcn.1007afd0
test al, al
je 0x101cd90d
mov ecx, ebx
call fcn.1001fc50
test al, al
jne 0x101cca50
mov eax, 0x80004005
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.1045066c
mov esp, ebp
pop ebp
ret
mov eax, dword [ebx]
mov eax, dword [eax + 0x162c]
shr eax, 7
test al, 1
je 0x101ccbb6
mov edx, dword fs:[0x2c]
xor ecx, ecx
mov eax, dword [0x11d0c5b8]
xorps xmm0, xmm0
mov dword [ebp - 0x28], ecx
mov dword [ebp - 0x1c], ecx
and ecx, 0xfffffffe
mov eax, dword [edx + eax*4]
mov edx, dword [eax + 0x10]
mov eax, dword [edx + 0xbe2c]
mov eax, dword [eax + 0x11cc]
mov dword [ebp - 0x2c], eax
lea eax, [ebp - 0x68]
mov dword [ebp - 0x28], ecx
xor ecx, ecx
mov dword [ebp - 0x24], eax
mov eax, dword [ebp - 0x48]
mov dword [ebp - 0x20], 0x35
movlpd qword [ebp - 0x54], xmm0
mov dword [ebp - 0x4c], 0
movlpd qword [ebp - 0x44], xmm0
mov dword [ebp - 0x3c], ecx
mov byte [ebp - 0x34], cl
mov dword [ebp - 0x68], 0x4e564441
mov dword [ebp - 0x64], 0x10002
mov dword [ebp - 0x60], 0x35
mov dword [ebp - 0x5c], 0x4e564458
mov dword [ebp - 0x58], 0x1000109
mov dword [ebp - 0x48], eax
mov dword [ebp - 0x38], ecx
mov edi, dword [edx + 0xbe2c]
mov esi, dword [edi + 0x10b4]
test esi, esi
je 0x101ccb8a
mov eax, dword [edi]
test eax, eax
je 0x101ccb8a
mov edx, dword [eax + 0xbe28]
test edx, edx
je 0x101ccb8a
mov edx, dword [edx + 0x14]
test edx, edx
je 0x101ccb8a
cmp dword [eax + 0xd45c], 1
jne 0x101ccb7c
mov esi, dword [sym.imp.KERNEL32.dll_QueryPerformanceCounter]
lea eax, [edi + 0x1428]
push eax
call esi
mov ecx, dword [edi + 0x10b4]
lea eax, [ebp - 0x2c]
push eax
mov eax, dword [edi]
mov eax, dword [eax + 0xbe28]
push dword [eax + 0x14]
call ecx
mov dword [ebp - 0x6c], eax
xorps xmm0, xmm0
lea eax, [ebp - 0x10]
movlpd qword [ebp - 0x10], xmm0
push eax
call esi
mov ecx, dword [ebp - 0x10]
sub ecx, dword [edi + 0x1428]
mov eax, dword [ebp - 0xc]
sbb eax, dword [edi + 0x142c]
add dword [edi + 0x1420], ecx
adc dword [edi + 0x1424], eax
mov eax, dword [ebp - 0x6c]
jmp 0x101ccb83
lea eax, [ebp - 0x2c]
push eax
push edx
call esi
test eax, eax
jne 0x101ccb97
mov ecx, dword [ebp - 0x3c]
test ecx, ecx
je 0x101ccb97
cmp byte [ebp - 0x34], 0
setne cl
jmp 0x101ccb99
xor cl, cl
mov eax, dword [ebx + 0xf7c]
mov byte [eax + 0xb3a], cl
mov ecx, dword [ebx + 0xf7c]
mov edx, dword [ecx + 0x15d8]
call fcn.100fd2d0
push 0x10
push 0x3c
call fcn.10434a32
mov esi, eax
add esp, 8
test esi, esi
je 0x101cd903
push 0x3c
push 0
push esi
call fcn.10425c00
add esp, 0xc
mov dword [ebx + 0x13f0], esi
push 0x10
push 0x1c
call fcn.10434a32
mov esi, eax
add esp, 8
test esi, esi
je 0x101cd8f7
mov dword [esi], 0
mov dword [esi + 4], 0
mov ecx, dword [esi + 8]
mov edx, ecx
and ecx, 0xfffffff0
mov dword [esi + 0xc], 0
and edx, 0xf
mov dword [esi + 0x10], 0
btr edx, 0
mov dword [esi + 0x14], 0
or edx, ecx
mov dword [ebp - 0x18], 0
mov eax, edx
mov dword [ebp - 0x14], 0x10000000
and eax, 0xf
mov dword [ebp - 0x10], 0
btr eax, 1
mov dword [ebp - 0xc], 0
and edx, 0xfffffff0
mov dword [ebp - 0x28], 0
or eax, edx
mov dword [ebp - 0x24], 0x20000000
mov ecx, eax
mov dword [ebp - 0x20], 0
and ecx, 0xf
mov dword [ebp - 0x1c], 0
and eax, 0xfffffff0
btr ecx, 2
or ecx, eax
mov eax, ecx
and ecx, 0xfffffff0
and eax, 0xf
btr eax, 3
or eax, ecx
mov dword [esi + 8], eax
mov dword [esi + 0x18], 0
mov dword [ebx + 0x13f4], esi
mov dword [esi + 4], ebx
mov eax, dword [esi + 8]
mov ecx, eax
and ecx, 0xf
mov dword [esi + 0xc], 0
and eax, 0xfffffff0
mov dword [esi + 0x10], 0
btr ecx, 0
mov dword [esi + 0x14], 0
or ecx, eax
movups xmm0, xmmword [ebp - 0x28]
mov eax, ecx
and ecx, 0xfffffff0
movups xmm1, xmmword [ebp - 0x18]
and eax, 0xf
btr eax, 1
or eax, ecx
por xmm1, xmm0
mov ecx, eax
movaps xmm0, xmm1
and ecx, 0xf
psrldq xmm0, 4
and eax, 0xfffffff0
btr ecx, 2
or ecx, eax
mov eax, ecx
and ecx, 0xfffffff0
and eax, 0xf
btr eax, 3
or eax, ecx
mov dword [esi + 8], eax
mov dword [esi + 0x18], 0
mov esi, dword [ebx]
movd eax, xmm0
movaps xmm0, xmm1
psrldq xmm0, 8
mov edx, dword [esi + 0x188]
mov ecx, dword [esi + 0x18c]
and edx, eax
movd eax, xmm0
movaps xmm0, xmm1
and ecx, eax
or edx, ecx
mov ecx, dword [esi + 0x190]
psrldq xmm0, 0xc
movd eax, xmm0
and ecx, eax
mov eax, dword [esi + 0x184]
or edx, ecx
movd ecx, xmm1
and eax, ecx
and eax, 0x7fffffff
or edx, eax
je 0x101ccd79
shr ecx, 0x1f
test cl, cl
jne 0x101ccd79
mov dword [esi + 0x6abc], 2
mov eax, dword [ebx]
mov dword [eax + 0x6ac0], 1
jmp 0x101ccd8f
mov dword [esi + 0x6abc], 8
mov eax, dword [ebx]
mov dword [eax + 0x6ac0], 2
push 0x10
push 1
call fcn.10434a32
add esp, 8
test eax, eax
je 0x101cd8eb
xor ecx, ecx
mov dword [ebx + 0x2c98], eax
call fcn.100a4c20
push 0xff0
lea ecx, [ebx + 0x17a8]
mov dword [ebp - 0x6c], eax
push 0
push ecx
call fcn.10425c00
add esp, 0xc
lea ecx, [ebx + 0x17d8]
xor edi, edi
lea esi, [ebx + 0x2798]
xorps xmm0, xmm0
movq qword [esi], xmm0
mov edx, dword [esi]
mov eax, dword [esi + 4]
and edx, 0xfff8ffff
bts edx, 0x10
and eax, 0xffffe000
or eax, dword [ebp - 0x6c]
and edx, 0xffc7ffff
bts edx, 0x13
and eax, 0x83ffffff
and edx, 0xfe3fffff
bts eax, 0x1a
bts edx, 0x16
and edx, 0xf1ffffff
bts edx, 0x19
and edx, 0xcfffffff
bts edx, 0x1c
and edx, 0x3fffffff
bts edx, 0x1e
mov dword [esi], edx
mov dword [esi + 4], eax
cmp edi, 0x10
jae 0x101cce49
mov eax, edi
and edx, 0xffff0fff
shl eax, 0xc
or edx, eax
mov dword [esi], edx
mov dword [ecx - 0x30], 0
inc edi
mov dword [ecx], 1
add esi, 8
mov dword [ecx + 4], 1
mov dword [ecx + 8], 1
mov dword [ecx + 0x34], 1
mov dword [ecx + 0x10], 1
mov dword [ecx + 0x14], 1
mov dword [ecx + 0x18], 1
mov dword [ecx - 0x2c], 1
mov dword [ecx - 0x28], 2
mov dword [ecx - 0x24], 1
mov dword [ecx - 0x20], 1
mov dword [ecx - 0x1c], 2
mov dword [ecx - 0x18], 1
mov dword [ecx - 0x14], 0
mov dword [ecx - 0x10], 0
mov dword [ecx - 0xc], 0
mov dword [ecx - 8], 0
mov dword [ecx - 4], 0
mov dword [ecx + 0xc], 0
mov dword [ecx + 0x1c], 0
mov dword [ecx + 0x20], 0
mov dword [ecx + 0x24], 1
mov dword [ecx + 0x28], 0
mov dword [ecx + 0x2c], 0
mov dword [ecx + 0x50], 0
add ecx, 0xcc
cmp edi, 0x14
jl 0x101ccdd7
or byte [ebx + 0xf59], 0x80
and byte [ebx + 0xf5a], 0xfe
push 0x10
push 0x5a0
mov dword [ebx + 0x33e0], 0
mov dword [ebx + 0x32c8], 2
call fcn.10434a32
add esp, 8
test eax, eax
je 0x101ccf4f
mov ecx, eax
call fcn.100aec80
jmp 0x101ccf51
xor eax, eax
mov dword [ebx + 0x2c80], eax
call fcn.100afa90
cmp dword [ebx + 0x2c80], 0
mov dword [ebx + 0x2c7c], eax
je 0x101cd90d
test eax, eax
je 0x101cd90d
push 0x10
push 0xba0
call fcn.10434a32
mov edi, eax
add esp, 8
mov dword [ebp - 0x6c], edi
test edi, edi
je 0x101cd8df
mov eax, dword [ebx + 0x2c80]
mov edx, dword [ebx + 0x2c7c]
mov dword [edi + 0x10], eax
push 0x350
mov ecx, dword [eax + 0x20]
mov eax, dword [eax + 0x24]
mov dword [edi + 4], eax
mov dword [edi], ecx
mov dword [edi + 0x14], edx
mov eax, dword [edx + 0x410]
mov ecx, dword [edx + 0x414]
and byte [edi + 0x38], 0xfe
mov dword [edi + 8], eax
lea eax, [edi + 0x48]
push 0
push eax
mov dword [edi + 0xc], ecx
mov dword [edi + 0xb98], 0
call fcn.10425c00
add esp, 0xc
lea eax, [edi + 0x58]
mov ecx, 0x10
nop dword [eax + eax]
mov dword [eax], 0xffffffff
lea eax, [eax + 0x18]
sub ecx, 1
jne 0x101ccff0
mov eax, dword [edi + 0x10]
mov ecx, 0x100
add eax, 0x238
mov dword [edi + 0x44], eax
lea eax, [edi + 0x798]
nop dword [eax]
nop dword [eax + eax]
mov dword [eax - 0x400], 0xffffffff
lea eax, [eax + 4]
mov dword [eax - 4], 0xffffffff
sub ecx, 1
jne 0x101cd020
mov ecx, dword fs:[0x2c]
lea esi, [edi + 0x398]
mov eax, dword [0x11d0c5b8]
mov eax, dword [ecx + eax*4]
mov eax, dword [eax + 0x10]
mov ecx, dword [eax + 0x7a68]
mov eax, dword [ecx + 0x2cdc]
add ecx, 0x2cdc
mov dword [esi], eax
mov eax, dword [ecx + 0x14]
mov dword [edi + 0x3c4], eax
mov eax, dword [ecx + 0x18]
mov dword [edi + 0x3a8], eax
mov eax, dword [ecx + 4]
mov dword [edi + 0x3c0], eax
mov eax, dword [ecx + 8]
mov dword [edi + 0x400], eax
mov eax, dword [ecx + 0x1c]
mov dword [edi + 0x3ac], eax
mov eax, dword [ecx + 0x1c]
inc eax
mov dword [edi + 0x3ec], eax
mov eax, dword [ecx + 0x1c]
add eax, 2
mov dword [edi + 0x42c], eax
mov eax, dword [ecx + 0x1c]
add eax, 3
mov dword [edi + 0x46c], eax
mov eax, dword [ecx + 0x1c]
add eax, 4
mov dword [edi + 0x4ac], eax
mov eax, dword [ecx + 0x1c]
add eax, 5
mov dword [edi + 0x4ec], eax
mov eax, dword [ecx + 0x1c]
add eax, 6
mov dword [edi + 0x52c], eax
mov eax, dword [ecx + 0x1c]
mov ecx, 0x100
add eax, 7
mov dword [edi + 0x56c], eax
add edi, 0x798
mov eax, dword [ebp - 0x6c]
rep movsd dword es:[edi], dword [esi]
or byte [eax + 0x28], 3
mov dword [eax + 0x18], 0
mov dword [eax + 0x1c], 0
mov dword [eax + 0x20], 0
mov dword [eax + 0x24], 1
mov dword [eax + 0x2c], 0
mov dword [eax + 0x30], 4
mov dword [eax + 0x34], 0
mov dword [eax + 0x3c], 0
mov dword [eax + 0x40], 0
mov dword [ebx + 0x2c78], eax
mov dword [ebx + 0x7f94], 0
mov dword [ebx + 0x7f98], 0
mov dword [ebx + 0x7f9c], 0
mov dword [ebx + 0x7f90], 1
mov edx, dword [ebx]
mov ecx, dword [edx + 0x190]
mov eax, ecx
shr eax, 0x15
test al, 1
je 0x101cd188
mov dword [ebx + 0x7f90], 0xb
jmp 0x101cd216
mov eax, ecx
shr eax, 0x14
test al, 1
je 0x101cd19d
mov dword [ebx + 0x7f90], 9
jmp 0x101cd216
mov eax, ecx
shr eax, 0x13
test al, 1
je 0x101cd1b2
mov dword [ebx + 0x7f90], 7
jmp 0x101cd216
test ecx, 0x60000
je 0x101cd1c6
mov dword [ebx + 0x7f90], 7
jmp 0x101cd216
mov eax, ecx
shr eax, 0xf
test al, 1
je 0x101cd1db
mov dword [ebx + 0x7f90], 5
jmp 0x101cd216
mov eax, ecx
shr eax, 0x10
test al, 1
je 0x101cd1f0
mov dword [ebx + 0x7f90], 3
jmp 0x101cd216
test ecx, 0x7800
je 0x101cd204
mov dword [ebx + 0x7f90], 0xf
jmp 0x101cd216
test ecx, 0x700
je 0x101cd216
mov dword [ebx + 0x7f90], 0xd
mov ecx, dword [edx + 0x7a68]
push ebx
mov eax, dword [ecx]
mov eax, dword [eax + 0x8c]
call eax
test al, al
je 0x101cd90d
mov edi, dword [ebx + 0x11d0]
mov eax, dword [edi + 0x54]
sub eax, 2
jne 0x101cd8b7
push 0x10
push 0x3a8
call fcn.10434a32
mov esi, eax
add esp, 8
test esi, esi
je 0x101cd8b7
mov ecx, esi
call fcn.10085bc0
or byte [esi + 0x50], 1
lea ecx, [esi + 0x14]
mov dword [esi], 0x11228d5c
mov dword [ecx], 0x11228c78
mov dword [esi + 0xa0], edi
mov dword [esi + 0xa4], ebx
mov dword [esi + 0x20], 0
mov dword [esi + 0x24], 0
mov dword [esi + 0x3a0], 0
mov dword [esi + 0x3a4], 0
mov dword [ebx + 0x5e5c], ecx
test ecx, ecx
je 0x101cd8c1
mov eax, dword [ecx]
mov eax, dword [eax + 0x18]
call eax
test al, al
je 0x101cd8c1
lea ecx, [ebp - 0x30]
mov dword [ebp - 0x18], 0
mov dword [ebp - 0x14], 0
mov dword [ebp - 0x10], 0
mov dword [ebp - 0xc], 0
call fcn.10045c50
mov ecx, dword [ebx + 0x5e5c]
lea edx, [ebp - 0x30]
push 1
push edx
lea edx, [ebp - 0x18]
mov eax, dword [ecx]
push edx
push ebx
mov eax, dword [eax + 0x24]
call eax
mov esi, dword [0x11d0c5b8]
mov edi, dword fs:[0x2c]
test al, al
je 0x101cd341
mov ecx, dword [ebx + 0x5e5c]
push 0
mov eax, dword [ecx]
mov edx, dword [eax + 0x10]
mov eax, dword [edi + esi*4]
lea esi, [ebp - 0x30]
push esi
lea esi, [ebp - 0x18]
push esi
mov eax, dword [eax + 0x10]
push ebx
push dword [eax + 0x7a68]
call edx
mov esi, dword [0x11d0c5b8]
test al, al
je 0x101cd90d
mov eax, dword [ebx + 0x5e5c]
push ecx
mov ecx, dword [ebx]
mov dword [ebx + 0x2ca4], eax
call fcn.101de980
test al, al
je 0x101cd90d
push 0x10
push 0x68
call fcn.10434a32
add esp, 8
test eax, eax
je 0x101cd8ab
push 0
push 1
mov ecx, eax
call fcn.1006f8e0
mov dword [ebx + 0xfc8], eax
test eax, eax
je 0x101cd90d
push 0x10
push 0x1104
call fcn.10434a32
add esp, 8
mov dword [ebx + 0x2ca8], eax
test eax, eax
je 0x101cd90d
push 0x1104
push 0
push eax
call fcn.10425c00
add esp, 0xc
push 0x10
push 0xd100
call fcn.10434a32
add esp, 8
mov dword [ebx + 0x2cac], eax
test eax, eax
je 0x101cd90d
push 0xd100
push 0
push eax
call fcn.10425c00
add esp, 0xc
mov dword [ebx + 0x3274], 0
mov dword [ebx + 0x3278], 0
mov dword [ebx + 0x327c], 0
mov dword [ebx + 0x3280], 0
push 0x10
push 8
call fcn.10434a32
add esp, 8
test eax, eax
je 0x101cd89f
push 0x10
mov dword [eax + 4], 0
mov dword [eax], 0
push 8
mov dword [ebx + 0x2c94], eax
call fcn.10434a32
add esp, 8
test eax, eax
je 0x101cd893
mov dword [eax + 4], 0
mov dword [eax], 0
push 0x10
push 0xc48
mov dword [ebx + 0x2c90], eax
mov dword [ebx + 0xf24], 0
call fcn.10434a32
add esp, 8
test eax, eax
je 0x101cd887
mov edx, 3
lea ecx, [eax + 0x400]
mov byte [ecx + 0x10], 0
lea ecx, [ecx + 0x418]
mov dword [ecx - 0x418], 0
mov dword [ecx - 0x414], 0
mov dword [ecx - 0x40c], 0
mov dword [ecx - 0x404], 0
mov dword [ecx - 0x410], 0
sub edx, 1
jne 0x101cd486
mov ecx, dword [ebx + 0xf7c]
mov dword [ebx + 0xf80], eax
mov eax, dword [ebx + 0xf84]
mov dword [ebx + 0xf88], 0x900
mov dword [ecx + 0x20], eax
mov eax, dword [ebx + 0xf7c]
push ebx
or byte [eax + 0x1864], 1
mov ecx, dword [ebx]
mov dword [ecx + 0x7da0], ebx
mov eax, dword [ebx + 0xf7c]
mov dword [ecx + 0x7da4], eax
mov ecx, dword [ebx + 0xf7c]
call fcn.10080460
call fcn.100fea90
mov ecx, dword [ebx]
call fcn.101dd110
mov ecx, dword [ebx + 0x11d0]
push 0
mov eax, dword [ecx]
call dword [eax + 0x4c]
mov ecx, dword [ebx + 0x11d0]
push ebx
mov eax, dword [ecx]
call dword [eax + 0x48]
mov ecx, dword [ebx + 0x11d0]
push 1
push ebx
mov eax, dword [ecx]
call dword [eax + 0x2c]
mov esi, dword [edi + esi*4]
mov eax, dword [esi + 0x10]
cmp dword [eax + 0xd490], 0
je 0x101cd747
cmp byte [esi + 8], 0
jne 0x101cd56a
call fcn.10450c0b
cmp dword [esi + 0x10], 0
je 0x101cd6ff
cmp byte [esi + 8], 0
jne 0x101cd585
call fcn.10450c0b
mov eax, dword [esi + 0x10]
mov eax, dword [eax + 0x162c]
shr eax, 7
test al, 1
je 0x101cd6ff
mov dl, byte [esi + 8]
test dl, dl
jne 0x101cd5b1
call fcn.10450c0b
mov dl, byte [esi + 8]
mov eax, dword [esi + 0x10]
mov edi, 1
movzx ecx, byte [0x11d0d1e6]
cmp dword [eax + 0xd5b8], 0
cmovne ecx, edi
mov byte [0x11d0d1e6], cl
test dl, dl
jne 0x101cd5dc
call fcn.10450c0b
mov eax, dword [esi + 0x10]
push dword [eax + 0xf944]
push 0x1046c250
call fcn.101093c0
add esp, 8
cmp byte [esi + 8], 0
jne 0x101cd603
call fcn.10450c0b
mov eax, dword [esi + 0x10]
push dword [eax + 0xd340]
push 0x1046c260
call fcn.101093c0
add esp, 8
cmp byte [esi + 8], 0
jne 0x101cd62a
call fcn.10450c0b
mov eax, dword [esi + 0x10]
cmp dword [eax + 0xd344], 0
je 0x101cd660
cmp byte [esi + 8], 0
jne 0x101cd647
call fcn.10450c0b
mov eax, dword [esi + 0x10]
push dword [eax + 0xd344]
push 0x1046c270
call fcn.101093c0
add esp, 8
cmp byte [0x11d0d1e6], 0
je 0x101cd6ff
cmp byte [esi + 8], 0
jne 0x101cd67b
call fcn.10450c0b
mov eax, dword [esi + 0x10]
push dword [eax + 0xf944]
push 0x1046c250
call fcn.10109160
add esp, 8
cmp byte [esi + 8], 0
jne 0x101cd6a2
call fcn.10450c0b
mov eax, dword [esi + 0x10]
push dword [eax + 0xd340]
push 0x1046c260
call fcn.10109160
add esp, 8
cmp byte [esi + 8], 0
jne 0x101cd6c9
call fcn.10450c0b
mov eax, dword [esi + 0x10]
cmp dword [eax + 0xd344], 0
je 0x101cd6ff
cmp byte [esi + 8], 0
jne 0x101cd6e6
call fcn.10450c0b
mov eax, dword [esi + 0x10]
push dword [eax + 0xd344]
push 0x1046c270
call fcn.10109160
add esp, 8
test byte [0x11cd362c], 1
mov edi, 0x112275c4
mov esi, edi
cmovne esi, dword [0x11cd3a30]
push esi
call fcn.101093c0
add esp, 4
push esi
call fcn.10109160
add esp, 4
mov esi, 0x11cd4240
test byte [0x11cd362c], 1
cmove esi, edi
push esi
call fcn.101093c0
add esp, 4
push esi
call fcn.10109160
add esp, 4
mov edi, dword [ebx]
add edi, 0x690c
cmp dword [edi], 0
jne 0x101cd789
test edi, edi
je 0x101cd789
push 0x10
push 0x13048
call fcn.10434a32
add esp, 8
test eax, eax
je 0x101cd789
push ebx
mov ecx, eax
call fcn.102649e0
mov esi, eax
test esi, esi
je 0x101cd789
mov ecx, dword [esi]
push ebx
mov edx, dword [ecx + 0x1c]
mov ecx, esi
call edx
test eax, eax
je 0x101cd789
mov dword [edi], esi
mov edi, dword [ebx]
add edi, 0x6910
cmp dword [edi], 0
jne 0x101cd809
test edi, edi
je 0x101cd809
push 0x10
push 0x11b08
call fcn.10434a32
mov esi, eax
add esp, 8
test esi, esi
je 0x101cd809
push ebx
mov ecx, esi
call fcn.1024e200
mov dword [esi], 0x1122c638
mov ecx, esi
mov dword [esi + 0x11af0], 0
mov dword [esi + 0x11af4], 0
mov dword [esi + 0x11af8], 1
mov dword [esi + 0x11afc], 0
mov dword [esi + 0x11b00], 0
mov dword [esi + 0x11b04], 0
mov eax, dword [0x1122c654]
push ebx
call eax
test eax, eax
je 0x101cd809
mov dword [edi], esi
mov eax, dword [ebx]
push 0x80
push 0
mov dword [eax + 0x6a24], 0
mov eax, dword [ebx]
mov dword [eax + 0x6914], 0
mov eax, dword [ebx]
mov dword [eax + 0x6918], 0
mov eax, dword [ebx]
mov dword [eax + 0x691c], 0
mov eax, dword [ebx]
mov dword [eax + 0x6920], 0
mov eax, dword [ebx]
add eax, 0x6a28
push eax
call fcn.10425c00
mov eax, dword [ebx]
add esp, 0xc
add eax, 0x6924
push 0x100
push 0
push eax
call fcn.10425c00
mov eax, dword [ebp - 0x70]
add esp, 0xc
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.1045066c
mov esp, ebp
pop ebp
ret
mov dword [ebx + 0xf80], 0
jmp 0x101cd90d
mov dword [ebx + 0x2c90], 0
jmp 0x101cd90d
mov dword [ebx + 0x2c94], 0
jmp 0x101cd90d
mov dword [ebx + 0xfc8], 0
jmp 0x101cd90d
mov dword [ebx + 0x5e5c], 0
mov eax, dword [ebx + 8]
mov ecx, 0x8007000e
test eax, eax
cmovns eax, ecx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.1045066c
mov esp, ebp
pop ebp
ret
mov dword [ebx + 0x2c78], 0
jmp 0x101cd90d
mov dword [ebx + 0x2c98], 0
jmp 0x101cd90d
mov dword [ebx + 0x13f4], 0
jmp 0x101cd90d
mov dword [ebx + 0x13f0], 0
mov eax, 0x8007000e
mov ecx, dword [ebp - 4]
pop edi
pop esi
xor ecx, ebp
pop ebx
call fcn.1045066c
mov esp, ebp
pop ebp
ret