Function at 0x100a2d20
Capabilities:
Encode data using xor
Inspect section memory permissions

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x100d34bd
mov eax, dword fs:[0]
push eax
sub esp, 0x6c
mov eax, dword [0x100e4364]
xor eax, ebp
mov dword [ebp - 0x10], eax
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
push 0
lea eax, [ebp - 0x24]
mov dword [ebp - 0x38], 0
push eax
mov dword [ebp - 0x24], 0x766c6156
mov dword [ebp - 0x20], 0x31303065
mov byte [ebp - 0x1c], 0
call dword [sym.imp.USER32.dll_FindWindowA]
mov ecx, dword [0x100f7114]
push 0x100c6830
push 0xfffffffffffffffc
push eax
call ecx
mov edi, dword [0x1010ba38]
mov dword [0x1010c41c], eax
mov dword [0x1010bda0], edi
mov eax, dword [edi]
mov dword [0x1010bda4], eax
test eax, eax
je 0x100a2eb0
xor esi, esi
mov eax, dword [0x1010bda4]
mov ecx, dword [eax + esi*4]
test ecx, ecx
je 0x100a2dd0
mov eax, dword [0x100f7110]
lea edx, [ebp - 0x34]
push 0x1c
push edx
push ecx
call eax
test eax, eax
je 0x100a2dd0
mov eax, dword [ebp - 0x20]
test al, 1
jne 0x100a2dd0
test eax, 0x100
jne 0x100a2dd0
inc esi
jmp 0x100a2da1
mov dword [0x1010bdac], esi
test esi, esi
je 0x100a2eb0
lea edx, [esi + 1]
lea ecx, [ebp - 0x14]
call fcn.1002e110
cmp eax, 0x1010bda8
je 0x100a2e3a
mov ecx, dword [eax]
mov dword [eax], 0
mov eax, dword [0x1010bda8]
mov dword [0x1010bda8], ecx
test eax, eax
je 0x100a2e3a
push fcn.10019d10
lea esi, [eax - 4]
mov dword [ebp - 4], 0
push dword [esi]
push 4
push eax
call fcn.100c998d
mov eax, dword [esi]
lea eax, [eax*4 + 4]
push eax
push esi
call fcn.100c994f
add esp, 8
mov dword [ebp - 4], 0xffffffff
mov eax, dword [ebp - 0x14]
mov dword [ebp - 0x18], eax
test eax, eax
je 0x100a2e7b
push fcn.10019d10
lea esi, [eax - 4]
mov dword [ebp - 4], 1
push dword [esi]
push 4
push eax
call fcn.100c998d
mov ecx, dword [ebp - 0x18]
mov eax, dword [ecx - 4]
lea eax, [eax*4 + 4]
push eax
push esi
call fcn.100c994f
add esp, 8
mov dword [ebp - 4], 0xffffffff
mov esi, dword [0x1010bda8]
test esi, esi
je 0x100a2eb0
mov eax, dword [0x1010bdac]
lea eax, [eax*4 + 4]
push eax
mov eax, dword [0x1010bda4]
add eax, 0xfffffffc
push eax
push esi
call sub.VCRUNTIME140.dll_memcpy
add esp, 0xc
add esi, 4
mov dword [edi], esi
mov byte [0x1010bdb0], 1
xor eax, eax
cmp byte [0x1010bdb0], al
setne al
add eax, 0x29
cmp dword [0x1010bda4], 0
je 0x100a2f09
mov ecx, dword [0x1010bda8]
test ecx, ecx
je 0x100a2f09
cmp eax, dword [0x1010bdac]
ja 0x100a2f09
mov dword [ecx + eax*4], 0x100b6580
mov eax, dword [0x1010bda4]
mov eax, dword [eax + 0xa4]
neg eax
sbb eax, eax
add eax, 2
mov dword [ebp - 0x38], eax
test al, 2
je 0x100a2eff
and eax, 0xfffffffd
mov dword [ebp - 0x38], eax
test al, 1
je 0x100a2f09
and eax, 0xfffffffe
mov dword [ebp - 0x38], eax
mov edi, dword [0x1010ba20]
mov dword [0x1010bdc8], edi
mov esi, dword [edi]
mov dword [0x1010bdcc], esi
test esi, esi
je 0x100a304b
xor eax, eax
mov ecx, dword [esi + eax*4]
mov dword [ebp - 0x14], eax
test ecx, ecx
je 0x100a2f66
mov eax, dword [0x100f7110]
lea edx, [ebp - 0x34]
push 0x1c
push edx
push ecx
call eax
test eax, eax
je 0x100a2f5d
mov eax, dword [ebp - 0x20]
test al, 1
jne 0x100a2f5d
test eax, 0x100
jne 0x100a2f5d
mov eax, dword [ebp - 0x14]
mov esi, dword [0x1010bdcc]
inc eax
jmp 0x100a2f27
mov esi, dword [0x1010bdcc]
mov eax, dword [ebp - 0x14]
mov dword [0x1010bdd4], eax
test eax, eax
je 0x100a304b
lea edx, [eax + 1]
lea ecx, [ebp - 0x18]
call fcn.1002e110
cmp eax, 0x1010bdd0
je 0x100a2fcf
mov ecx, dword [eax]
mov dword [eax], 0
mov eax, dword [0x1010bdd0]
mov dword [0x1010bdd0], ecx
test eax, eax
je 0x100a2fcf
push fcn.10019d10
lea esi, [eax - 4]
mov dword [ebp - 4], 2
push dword [esi]
push 4
push eax
call fcn.100c998d
mov eax, dword [esi]
lea eax, [eax*4 + 4]
push eax
push esi
call fcn.100c994f
add esp, 8
mov dword [ebp - 4], 0xffffffff
mov eax, dword [ebp - 0x18]
mov dword [ebp - 0x14], eax
test eax, eax
je 0x100a3010
push fcn.10019d10
lea esi, [eax - 4]
mov dword [ebp - 4], 3
push dword [esi]
push 4
push eax
call fcn.100c998d
mov ecx, dword [ebp - 0x14]
mov eax, dword [ecx - 4]
lea eax, [eax*4 + 4]
push eax
push esi
call fcn.100c994f
add esp, 8
mov dword [ebp - 4], 0xffffffff
mov esi, dword [0x1010bdd0]
test esi, esi
je 0x100a3045
mov eax, dword [0x1010bdd4]
lea eax, [eax*4 + 4]
push eax
mov eax, dword [0x1010bdcc]
add eax, 0xfffffffc
push eax
push esi
call sub.VCRUNTIME140.dll_memcpy
add esp, 0xc
add esi, 4
mov dword [edi], esi
mov byte [0x1010bdd8], 1
mov esi, dword [0x1010bdcc]
xor eax, eax
cmp byte [0x1010bdd8], al
setne al
add eax, 5
test esi, esi
je 0x100a30a9
mov ecx, dword [0x1010bdd0]
test ecx, ecx
je 0x100a30a9
cmp eax, dword [0x1010bdd4]
ja 0x100a30a9
mov dword [ecx + eax*4], 0x100aa660
xor ecx, ecx
mov esi, dword [0x1010bdcc]
cmp dword [esi + 0x14], ecx
sete cl
lea ecx, [ecx*4 + 4]
or ecx, dword [ebp - 0x38]
mov edx, ecx
and edx, 0xfffffff7
test cl, 8
cmove edx, ecx
mov dword [ebp - 0x38], edx
test dl, 4
je 0x100a30ac
and edx, 0xfffffffb
mov dword [ebp - 0x38], edx
jmp 0x100a30ac
mov edx, dword [ebp - 0x38]
xor eax, eax
cmp byte [0x1010bdd8], al
setne al
add eax, 6
test esi, esi
je 0x100a3106
mov ecx, dword [0x1010bdd0]
test ecx, ecx
je 0x100a3106
cmp eax, dword [0x1010bdd4]
ja 0x100a3106
mov dword [ecx + eax*4], 0x100aa700
mov esi, dword [0x1010bdcc]
cmp dword [esi + 0x18], 0
je 0x100a30e8
or edx, 0x10
jmp 0x100a30eb
or edx, 0x20
mov ecx, edx
and ecx, 0xffffffdf
test dl, 0x20
cmove ecx, edx
mov edx, ecx
mov dword [ebp - 0x38], edx
test dl, 0x10
je 0x100a3106
and edx, 0xffffffef
mov dword [ebp - 0x38], edx
xor eax, eax
cmp byte [0x1010bdd8], al
setne al
add eax, 7
test esi, esi
je 0x100a3166
mov ecx, dword [0x1010bdd0]
test ecx, ecx
je 0x100a3166
cmp eax, dword [0x1010bdd4]
ja 0x100a3166
mov dword [ecx + eax*4], 0x100aa720
mov esi, dword [0x1010bdcc]
cmp dword [esi + 0x1c], 0
je 0x100a3142
or edx, 0x40
jmp 0x100a3148
or edx, 0x80
mov ecx, edx
and ecx, 0xffffff7f
test dl, 0x80
cmove ecx, edx
mov edx, ecx
mov dword [ebp - 0x38], edx
test dl, 0x40
je 0x100a3166
and edx, 0xffffffbf
mov dword [ebp - 0x38], edx
xor eax, eax
cmp byte [0x1010bdd8], al
setne al
add eax, 0x24
test esi, esi
je 0x100a31d4
mov ecx, dword [0x1010bdd0]
test ecx, ecx
je 0x100a31d4
cmp eax, dword [0x1010bdd4]
ja 0x100a31d4
mov dword [ecx + eax*4], 0x100aa790
mov eax, dword [0x1010bdcc]
cmp dword [eax + 0x90], 0
je 0x100a31a7
or edx, 0x100
jmp 0x100a31ad
or edx, 0x200
mov ecx, edx
and ecx, 0xfffffdff
test edx, 0x200
cmove ecx, edx
mov edx, ecx
mov dword [ebp - 0x38], edx
test edx, 0x100
je 0x100a31d4
and edx, 0xfffffeff
mov dword [ebp - 0x38], edx
mov edi, dword [0x1010ba28]
mov dword [0x1010bdf0], edi
mov esi, dword [edi]
mov dword [0x1010bdf4], esi
test esi, esi
je 0x100a3316
xor eax, eax
mov ecx, dword [esi + eax*4]
mov dword [ebp - 0x14], eax
test ecx, ecx
je 0x100a3231
mov eax, dword [0x100f7110]
lea edx, [ebp - 0x34]
push 0x1c
push edx
push ecx
call eax
test eax, eax
je 0x100a3228
mov eax, dword [ebp - 0x20]
test al, 1
jne 0x100a3228
test eax, 0x100
jne 0x100a3228
mov eax, dword [ebp - 0x14]
mov esi, dword [0x1010bdf4]
inc eax
jmp 0x100a31f2
mov esi, dword [0x1010bdf4]
mov eax, dword [ebp - 0x14]
mov dword [0x1010bdfc], eax
test eax, eax
je 0x100a3316
lea edx, [eax + 1]
lea ecx, [ebp - 0x18]
call fcn.1002e110
cmp eax, 0x1010bdf8
je 0x100a329a
mov ecx, dword [eax]
mov dword [eax], 0
mov eax, dword [0x1010bdf8]
mov dword [0x1010bdf8], ecx
test eax, eax
je 0x100a329a
push fcn.10019d10
lea esi, [eax - 4]
mov dword [ebp - 4], 4
push dword [esi]
push 4
push eax
call fcn.100c998d
mov eax, dword [esi]
lea eax, [eax*4 + 4]
push eax
push esi
call fcn.100c994f
add esp, 8
mov dword [ebp - 4], 0xffffffff
mov eax, dword [ebp - 0x18]
mov dword [ebp - 0x14], eax
test eax, eax
je 0x100a32db
push fcn.10019d10
lea esi, [eax - 4]
mov dword [ebp - 4], 5
push dword [esi]
push 4
push eax
call fcn.100c998d
mov ecx, dword [ebp - 0x14]
mov eax, dword [ecx - 4]
lea eax, [eax*4 + 4]
push eax
push esi
call fcn.100c994f
add esp, 8
mov dword [ebp - 4], 0xffffffff
mov esi, dword [0x1010bdf8]
test esi, esi
je 0x100a3310
mov eax, dword [0x1010bdfc]
lea eax, [eax*4 + 4]
push eax
mov eax, dword [0x1010bdf4]
add eax, 0xfffffffc
push eax
push esi
call sub.VCRUNTIME140.dll_memcpy
add esp, 0xc
add esi, 4
mov dword [edi], esi
mov byte [0x1010be00], 1
mov esi, dword [0x1010bdf4]
xor eax, eax
cmp byte [0x1010be00], al
setne al
add eax, 0x1b
test esi, esi
je 0x100a3387
mov ecx, dword [0x1010bdf8]
test ecx, ecx
je 0x100a3387
mov edx, dword [ebp - 0x38]
cmp eax, dword [0x1010bdfc]
ja 0x100a338a
mov dword [ecx + eax*4], 0x100a8020
mov esi, dword [0x1010bdf4]
cmp dword [esi + 0x6c], 0
je 0x100a3358
or edx, 0x400
jmp 0x100a335e
or edx, 0x800
mov ecx, edx
and ecx, 0xfffff7ff
test edx, 0x800
cmove ecx, edx
mov edx, ecx
mov dword [ebp - 0x38], edx
test edx, 0x400
je 0x100a338a
and edx, 0xfffffbff
mov dword [ebp - 0x38], edx
jmp 0x100a338a
mov edx, dword [ebp - 0x38]
xor eax, eax
cmp byte [0x1010be00], al
setne al
add eax, 0x5d
test esi, esi
je 0x100a33f9
mov ecx, dword [0x1010bdf8]
test ecx, ecx
je 0x100a33f9
cmp eax, dword [0x1010bdfc]
ja 0x100a33f9
mov dword [ecx + eax*4], 0x100a81d0
mov esi, dword [0x1010bdf4]
cmp dword [esi + 0x174], 0
je 0x100a33cc
or edx, 0x1000
jmp 0x100a33d2
or edx, 0x2000
mov ecx, edx
and ecx, 0xffffdfff
test edx, 0x2000
cmove ecx, edx
mov edx, ecx
mov dword [ebp - 0x38], edx
test edx, 0x1000
je 0x100a33f9
and edx, 0xffffefff
mov dword [ebp - 0x38], edx
xor eax, eax
cmp byte [0x1010be00], al
setne al
add eax, 0x5a
test esi, esi
je 0x100a3467
mov ecx, dword [0x1010bdf8]
test ecx, ecx
je 0x100a3467
cmp eax, dword [0x1010bdfc]
ja 0x100a3467
mov dword [ecx + eax*4], 0x100a84c0
mov eax, dword [0x1010bdf4]
cmp dword [eax + 0x168], 0
je 0x100a343a
or edx, 0x4000
jmp 0x100a3440
or edx, 0x8000
mov ecx, edx
and ecx, 0xffff7fff
test edx, 0x8000
cmove ecx, edx
mov edx, ecx
mov dword [ebp - 0x38], edx
test edx, 0x4000
je 0x100a3467
and edx, 0xffffbfff
mov dword [ebp - 0x38], edx
mov edi, dword [0x1010ba40]
mov dword [0x1010be18], edi
mov eax, dword [edi]
mov dword [0x1010be1c], eax
test eax, eax
je 0x100a3593
xor esi, esi
mov eax, dword [0x1010be1c]
mov ecx, dword [eax + esi*4]
test ecx, ecx
je 0x100a34b3
mov eax, dword [0x100f7110]
lea edx, [ebp - 0x34]
push 0x1c
push edx
push ecx
call eax
test eax, eax
je 0x100a34b3
mov eax, dword [ebp - 0x20]
test al, 1
jne 0x100a34b3
test eax, 0x100
jne 0x100a34b3
inc esi
jmp 0x100a3484
mov dword [0x1010be24], esi
test esi, esi
je 0x100a3593
lea edx, [esi + 1]
lea ecx, [ebp - 0x18]
call fcn.1002e110
cmp eax, 0x1010be20
je 0x100a351d
mov ecx, dword [eax]
mov dword [eax], 0
mov eax, dword [0x1010be20]
mov dword [0x1010be20], ecx
test eax, eax
je 0x100a351d
push fcn.10019d10
lea esi, [eax - 4]
mov dword [ebp - 4], 6
push dword [esi]
push 4
push eax
call fcn.100c998d
mov eax, dword [esi]
lea eax, [eax*4 + 4]
push eax
push esi
call fcn.100c994f
add esp, 8
mov dword [ebp - 4], 0xffffffff
mov eax, dword [ebp - 0x18]
mov dword [ebp - 0x14], eax
test eax, eax
je 0x100a355e
push fcn.10019d10
lea esi, [eax - 4]
mov dword [ebp - 4], 7
push dword [esi]
push 4
push eax
call fcn.100c998d
mov ecx, dword [ebp - 0x14]
mov eax, dword [ecx - 4]
lea eax, [eax*4 + 4]
push eax
push esi
call fcn.100c994f
add esp, 8
mov dword [ebp - 4], 0xffffffff
mov esi, dword [0x1010be20]
test esi, esi
je 0x100a3593
mov eax, dword [0x1010be24]
lea eax, [eax*4 + 4]
push eax
mov eax, dword [0x1010be1c]
add eax, 0xfffffffc
push eax
push esi
call sub.VCRUNTIME140.dll_memcpy
add esp, 0xc
add esi, 4
mov dword [edi], esi
mov byte [0x1010be28], 1
xor eax, eax
cmp byte [0x1010be28], al
setne al
add eax, 0xe
cmp dword [0x1010be1c], 0
je 0x100a3608
mov ecx, dword [0x1010be20]
test ecx, ecx
je 0x100a3608
mov edx, dword [ebp - 0x38]
cmp eax, dword [0x1010be24]
ja 0x100a360b
mov dword [ecx + eax*4], 0x100bab20
mov eax, dword [0x1010be1c]
cmp dword [eax + 0x38], 0
je 0x100a35d9
or edx, 0x10000
jmp 0x100a35df
or edx, 0x20000
mov ecx, edx
and ecx, 0xfffdffff
test edx, 0x20000
cmove ecx, edx
mov edx, ecx
mov dword [ebp - 0x38], edx
test edx, 0x10000
je 0x100a360b
and edx, 0xfffeffff
mov dword [ebp - 0x38], edx
jmp 0x100a360b
mov edx, dword [ebp - 0x38]
xor eax, eax
cmp byte [0x1010be28], al
setne al
add eax, 0x13
cmp dword [0x1010be1c], 0
je 0x100a367b
mov ecx, dword [0x1010be20]
test ecx, ecx
je 0x100a367b
cmp eax, dword [0x1010be24]
ja 0x100a367b
mov dword [ecx + eax*4], 0x100bb070
mov eax, dword [0x1010be1c]
cmp dword [eax + 0x4c], 0
je 0x100a364e
or edx, 0x40000
jmp 0x100a3654
or edx, 0x80000
mov ecx, edx
and ecx, 0xfff7ffff
test edx, 0x80000
cmove ecx, edx
mov edx, ecx
mov dword [ebp - 0x38], edx
test edx, 0x40000
je 0x100a367b
and edx, 0xfffbffff
mov dword [ebp - 0x38], edx
mov edi, dword [0x1010ba80]
mov dword [0x1010bdb4], edi
mov esi, dword [edi]
mov dword [0x1010bdb8], esi
test esi, esi
je 0x100a37bd
xor eax, eax
mov ecx, dword [esi + eax*4]
mov dword [ebp - 0x14], eax
test ecx, ecx
je 0x100a36d8
mov eax, dword [0x100f7110]
lea edx, [ebp - 0x34]
push 0x1c
push edx
push ecx
call eax
test eax, eax
je 0x100a36cf
mov eax, dword [ebp - 0x20]
test al, 1
jne 0x100a36cf
test eax, 0x100
jne 0x100a36cf
mov eax, dword [ebp - 0x14]
mov esi, dword [0x1010bdb8]
inc eax
jmp 0x100a3699
mov esi, dword [0x1010bdb8]
mov eax, dword [ebp - 0x14]
mov dword [0x1010bdc0], eax
test eax, eax
je 0x100a37bd
lea edx, [eax + 1]
lea ecx, [ebp - 0x18]
call fcn.1002e110
cmp eax, 0x1010bdbc
je 0x100a3741
mov ecx, dword [eax]
mov dword [eax], 0
mov eax, dword [0x1010bdbc]
mov dword [0x1010bdbc], ecx
test eax, eax
je 0x100a3741
push fcn.10019d10
lea esi, [eax - 4]
mov dword [ebp - 4], 8
push dword [esi]
push 4
push eax
call fcn.100c998d
mov eax, dword [esi]
lea eax, [eax*4 + 4]
push eax
push esi
call fcn.100c994f
add esp, 8
mov dword [ebp - 4], 0xffffffff
mov eax, dword [ebp - 0x18]
mov dword [ebp - 0x14], eax
test eax, eax
je 0x100a3782
push fcn.10019d10
lea esi, [eax - 4]
mov dword [ebp - 4], 9
push dword [esi]
push 4
push eax
call fcn.100c998d
mov ecx, dword [ebp - 0x14]
mov eax, dword [ecx - 4]
lea eax, [eax*4 + 4]
push eax
push esi
call fcn.100c994f
add esp, 8
mov dword [ebp - 4], 0xffffffff
mov esi, dword [0x1010bdbc]
test esi, esi
je 0x100a37b7
mov eax, dword [0x1010bdc0]
lea eax, [eax*4 + 4]
push eax
mov eax, dword [0x1010bdb8]
add eax, 0xfffffffc
push eax
push esi
call sub.VCRUNTIME140.dll_memcpy
add esp, 0xc
add esi, 4
mov dword [edi], esi
mov byte [0x1010bdc4], 1
mov esi, dword [0x1010bdb8]
xor eax, eax
cmp byte [0x1010bdc4], al
setne al
add eax, 0x10
test esi, esi
je 0x100a382e
mov ecx, dword [0x1010bdbc]
test ecx, ecx
je 0x100a382e
mov edx, dword [ebp - 0x38]
cmp eax, dword [0x1010bdc0]
ja 0x100a3831
mov dword [ecx + eax*4], 0x100b6240
mov esi, dword [0x1010bdb8]
cmp dword [esi + 0x40], 0
je 0x100a37ff
or edx, 0x100000
jmp 0x100a3805
or edx, 0x200000
mov ecx, edx
and ecx, 0xffdfffff
test edx, 0x200000
cmove ecx, edx
mov edx, ecx
mov dword [ebp - 0x38], edx
test edx, 0x100000
je 0x100a3831
and edx, 0xffefffff
mov dword [ebp - 0x38], edx
jmp 0x100a3831
mov edx, dword [ebp - 0x38]
xor eax, eax
cmp byte [0x1010bdc4], al
setne al
add eax, 0x11
test esi, esi
je 0x100a389d
mov ecx, dword [0x1010bdbc]
test ecx, ecx
je 0x100a389d
cmp eax, dword [0x1010bdc0]
ja 0x100a389d
mov dword [ecx + eax*4], 0x100b6250
mov esi, dword [0x1010bdb8]
cmp dword [esi + 0x44], 0
je 0x100a3870
or edx, 0x400000
jmp 0x100a3876
or edx, 0x800000
mov ecx, edx
and ecx, 0xff7fffff
test edx, 0x800000
cmove ecx, edx
mov edx, ecx
mov dword [ebp - 0x38], edx
test edx, 0x400000
je 0x100a389d
and edx, 0xffbfffff
mov dword [ebp - 0x38], edx
xor eax, eax
cmp byte [0x1010bdc4], al
setne al
add eax, 0x12
test esi, esi
je 0x100a3909
mov ecx, dword [0x1010bdbc]
test ecx, ecx
je 0x100a3909
cmp eax, dword [0x1010bdc0]
ja 0x100a3909
mov dword [ecx + eax*4], 0x100b6270
mov esi, dword [0x1010bdb8]
cmp dword [esi + 0x48], 0
je 0x100a38dc
or edx, 0x1000000
jmp 0x100a38e2
or edx, 0x2000000
mov ecx, edx
and ecx, 0xfdffffff
test edx, 0x2000000
cmove ecx, edx
mov edx, ecx
mov dword [ebp - 0x38], edx
test edx, 0x1000000
je 0x100a3909
and edx, 0xfeffffff
mov dword [ebp - 0x38], edx
xor eax, eax
cmp byte [0x1010bdc4], al
setne al
add eax, 0x18
test esi, esi
je 0x100a3975
mov ecx, dword [0x1010bdbc]
test ecx, ecx
je 0x100a3975
cmp eax, dword [0x1010bdc0]
ja 0x100a3975
mov dword [ecx + eax*4], 0x100b62f0
mov esi, dword [0x1010bdb8]
cmp dword [esi + 0x60], 0
je 0x100a3948
or edx, 0x4000000
jmp 0x100a394e
or edx, 0x8000000
mov ecx, edx
and ecx, 0xf7ffffff
test edx, 0x8000000
cmove ecx, edx
mov edx, ecx
mov dword [ebp - 0x38], edx
test edx, 0x4000000
je 0x100a3975
and edx, 0xfbffffff
mov dword [ebp - 0x38], edx
xor eax, eax
cmp byte [0x1010bdc4], al
setne al
add eax, 0x2c
test esi, esi
je 0x100a39e3
mov ecx, dword [0x1010bdbc]
test ecx, ecx
je 0x100a39e3
cmp eax, dword [0x1010bdc0]
ja 0x100a39e3
mov dword [ecx + eax*4], 0x100b6550
mov eax, dword [0x1010bdb8]
cmp dword [eax + 0xb0], 0
je 0x100a39b6
or edx, 0x10000000
jmp 0x100a39bc
or edx, 0x20000000
mov ecx, edx
and ecx, 0xdfffffff
test edx, 0x20000000
cmove ecx, edx
mov edx, ecx
mov dword [ebp - 0x38], edx
test edx, 0x10000000
je 0x100a39e3
and edx, 0xefffffff
mov dword [ebp - 0x38], edx
mov edi, dword [0x1010ba34]
mov dword [0x1010be2c], edi
mov eax, dword [edi]
mov dword [0x1010be30], eax
test eax, eax
je 0x100a3b0f
xor esi, esi
mov eax, dword [0x1010be30]
mov ecx, dword [eax + esi*4]
test ecx, ecx
je 0x100a3a2f
mov eax, dword [0x100f7110]
lea edx, [ebp - 0x34]
push 0x1c
push edx
push ecx
call eax
test eax, eax
je 0x100a3a2f
mov eax, dword [ebp - 0x20]
test al, 1
jne 0x100a3a2f
test eax, 0x100
jne 0x100a3a2f
inc esi
jmp 0x100a3a00
mov dword [0x1010be38], esi
test esi, esi
je 0x100a3b0f
lea edx, [esi + 1]
lea ecx, [ebp - 0x18]
call fcn.1002e110
cmp eax, 0x1010be34
je 0x100a3a99
mov ecx, dword [eax]
mov dword [eax], 0
mov eax, dword [0x1010be34]
mov dword [0x1010be34], ecx
test eax, eax
je 0x100a3a99
push fcn.10019d10
lea esi, [eax - 4]
mov dword [ebp - 4], 0xa
push dword [esi]
push 4
push eax
call fcn.100c998d
mov eax, dword [esi]
lea eax, [eax*4 + 4]
push eax
push esi
call fcn.100c994f
add esp, 8
mov dword [ebp - 4], 0xffffffff
mov eax, dword [ebp - 0x18]
mov dword [ebp - 0x14], eax
test eax, eax
je 0x100a3ada
push fcn.10019d10
lea esi, [eax - 4]
mov dword [ebp - 4], 0xb
push dword [esi]
push 4
push eax
call fcn.100c998d
mov ecx, dword [ebp - 0x14]
mov eax, dword [ecx - 4]
lea eax, [eax*4 + 4]
push eax
push esi
call fcn.100c994f
add esp, 8
mov dword [ebp - 4], 0xffffffff
mov esi, dword [0x1010be34]
test esi, esi
je 0x100a3b0f
mov eax, dword [0x1010be38]
lea eax, [eax*4 + 4]
push eax
mov eax, dword [0x1010be30]
add eax, 0xfffffffc
push eax
push esi
call sub.VCRUNTIME140.dll_memcpy
add esp, 0xc
add esi, 4
mov dword [edi], esi
mov byte [0x1010be3c], 1
mov edx, dword [0x1010be30]
xor eax, eax
cmp byte [0x1010be3c], al
mov ecx, edx
setne al
add eax, 0x43
test edx, edx
je 0x100a3b65
mov esi, dword [0x1010be34]
test esi, esi
je 0x100a3b65
cmp eax, dword [0x1010be38]
ja 0x100a3b65
mov dword [esi + eax*4], 0x100b2b30
mov ecx, dword [0x1010be30]
mov eax, dword [ebp - 0x38]
cmp dword [ecx + 0x10c], 0
je 0x100a3b5b
or eax, 0x40000000
jmp 0x100a3b60
or eax, 0x80000000
test eax, eax
cmovs ecx, ecx
xor eax, eax
cmp byte [0x1010be3c], al
setne al
add eax, 0x52
test ecx, ecx
je 0x100a3b90
mov ecx, dword [0x1010be34]
test ecx, ecx
je 0x100a3b90
cmp eax, dword [0x1010be38]
ja 0x100a3b90
mov dword [ecx + eax*4], 0x100b2b80
xor eax, eax
cmp byte [0x1010be3c], al
setne al
add eax, 0x74
cmp dword [0x1010be30], 0
je 0x100a3bc0
mov ecx, dword [0x1010be34]
test ecx, ecx
je 0x100a3bc0
cmp eax, dword [0x1010be38]
ja 0x100a3bc0
mov dword [ecx + eax*4], 0x100b2c40
mov edi, dword [0x1010ba54]
mov dword [0x1010be7c], edi
mov eax, dword [edi]
mov dword [0x1010be80], eax
test eax, eax
je 0x100a3cef
xor esi, esi
nop dword [eax]
mov eax, dword [0x1010be80]
mov ecx, dword [eax + esi*4]
test ecx, ecx
je 0x100a3c0f
mov eax, dword [0x100f7110]
lea edx, [ebp - 0x34]
push 0x1c
push edx
push ecx
call eax
test eax, eax
je 0x100a3c0f
mov eax, dword [ebp - 0x20]
test al, 1
jne 0x100a3c0f
test eax, 0x100
jne 0x100a3c0f
inc esi
jmp 0x100a3be0
mov dword [0x1010be88], esi
test esi, esi
je 0x100a3cef
lea edx, [esi + 1]
lea ecx, [ebp - 0x18]
call fcn.1002e110
cmp eax, 0x1010be84
je 0x100a3c79
mov ecx, dword [eax]
mov dword [eax], 0
mov eax, dword [0x1010be84]
mov dword [0x1010be84], ecx
test eax, eax
je 0x100a3c79
push fcn.10019d10
lea esi, [eax - 4]
mov dword [ebp - 4], 0xc
push dword [esi]
push 4
push eax
call fcn.100c998d
mov eax, dword [esi]
lea eax, [eax*4 + 4]
push eax
push esi
call fcn.100c994f
add esp, 8
mov dword [ebp - 4], 0xffffffff
mov eax, dword [ebp - 0x18]
mov dword [ebp - 0x14], eax
test eax, eax
je 0x100a3cba
push fcn.10019d10
lea esi, [eax - 4]
mov dword [ebp - 4], 0xd
push dword [esi]
push 4
push eax
call fcn.100c998d
mov ecx, dword [ebp - 0x14]
mov eax, dword [ecx - 4]
lea eax, [eax*4 + 4]
push eax
push esi
call fcn.100c994f
add esp, 8
mov dword [ebp - 4], 0xffffffff
mov esi, dword [0x1010be84]
test esi, esi
je 0x100a3cef
mov eax, dword [0x1010be88]
lea eax, [eax*4 + 4]
push eax
mov eax, dword [0x1010be80]
add eax, 0xfffffffc
push eax
push esi
call sub.VCRUNTIME140.dll_memcpy
add esp, 0xc
add esi, 4
mov dword [edi], esi
mov byte [0x1010be8c], 1
xor eax, eax
cmp byte [0x1010be8c], al
setne al
add eax, 0x15
cmp dword [0x1010be80], 0
je 0x100a3d1f
mov ecx, dword [0x1010be84]
test ecx, ecx
je 0x100a3d1f
cmp eax, dword [0x1010be88]
ja 0x100a3d1f
mov dword [ecx + eax*4], 0x1009e2c0
mov edi, dword [0x1010ba4c]
mov dword [0x1010be68], edi
mov eax, dword [edi]
mov dword [0x1010be6c], eax
test eax, eax
je 0x100a3e4f
xor esi, esi
nop dword [eax]
mov eax, dword [0x1010be6c]
mov ecx, dword [eax + esi*4]
test ecx, ecx
je 0x100a3d6f
mov eax, dword [0x100f7110]
lea edx, [ebp - 0x34]
push 0x1c
push edx
push ecx
call eax
test eax, eax
je 0x100a3d6f
mov eax, dword [ebp - 0x20]
test al, 1
jne 0x100a3d6f
test eax, 0x100
jne 0x100a3d6f
inc esi
jmp 0x100a3d40
mov dword [0x1010be74], esi
test esi, esi
je 0x100a3e4f
lea edx, [esi + 1]
lea ecx, [ebp - 0x18]
call fcn.1002e110
cmp eax, 0x1010be70
je 0x100a3dd9
mov ecx, dword [eax]
mov dword [eax], 0
mov eax, dword [0x1010be70]
mov dword [0x1010be70], ecx
test eax, eax
je 0x100a3dd9
push fcn.10019d10
lea esi, [eax - 4]
mov dword [ebp - 4], 0xe
push dword [esi]
push 4
push eax
call fcn.100c998d
mov eax, dword [esi]
lea eax, [eax*4 + 4]
push eax
push esi
call fcn.100c994f
add esp, 8
mov dword [ebp - 4], 0xffffffff
mov eax, dword [ebp - 0x18]
mov dword [ebp - 0x14], eax
test eax, eax
je 0x100a3e1a
push fcn.10019d10
lea esi, [eax - 4]
mov dword [ebp - 4], 0xf
push dword [esi]
push 4
push eax
call fcn.100c998d
mov ecx, dword [ebp - 0x14]
mov eax, dword [ecx - 4]
lea eax, [eax*4 + 4]
push eax
push esi
call fcn.100c994f
add esp, 8
mov dword [ebp - 4], 0xffffffff
mov esi, dword [0x1010be70]
test esi, esi
je 0x100a3e4f
mov eax, dword [0x1010be74]
lea eax, [eax*4 + 4]
push eax
mov eax, dword [0x1010be6c]
add eax, 0xfffffffc
push eax
push esi
call sub.VCRUNTIME140.dll_memcpy
add esp, 0xc
add esi, 4
mov dword [edi], esi
mov byte [0x1010be78], 1
xor eax, eax
cmp byte [0x1010be78], al
setne al
add eax, 9
cmp dword [0x1010be6c], 0
je 0x100a3e7f
mov ecx, dword [0x1010be70]
test ecx, ecx
je 0x100a3e7f
cmp eax, dword [0x1010be74]
ja 0x100a3e7f
mov dword [ecx + eax*4], 0x100bb780
mov edi, dword [0x1010baa8]
mov dword [0x1010be90], edi
mov eax, dword [edi]
mov dword [0x1010be94], eax
test eax, eax
je 0x100a3faf
xor esi, esi
nop dword [eax]
mov eax, dword [0x1010be94]
mov ecx, dword [eax + esi*4]
test ecx, ecx
je 0x100a3ecf
mov eax, dword [0x100f7110]
lea edx, [ebp - 0x34]
push 0x1c
push edx
push ecx
call eax
test eax, eax
je 0x100a3ecf
mov eax, dword [ebp - 0x20]
test al, 1
jne 0x100a3ecf
test eax, 0x100
jne 0x100a3ecf
inc esi
jmp 0x100a3ea0
mov dword [0x1010be9c], esi
test esi, esi
je 0x100a3faf
lea edx, [esi + 1]
lea ecx, [ebp - 0x18]
call fcn.1002e110
cmp eax, 0x1010be98
je 0x100a3f39
mov ecx, dword [eax]
mov dword [eax], 0
mov eax, dword [0x1010be98]
mov dword [0x1010be98], ecx
test eax, eax
je 0x100a3f39
push fcn.10019d10
lea esi, [eax - 4]
mov dword [ebp - 4], 0x10
push dword [esi]
push 4
push eax
call fcn.100c998d
mov eax, dword [esi]
lea eax, [eax*4 + 4]
push eax
push esi
call fcn.100c994f
add esp, 8
mov dword [ebp - 4], 0xffffffff
mov eax, dword [ebp - 0x18]
mov dword [ebp - 0x14], eax
test eax, eax
je 0x100a3f7a
push fcn.10019d10
lea esi, [eax - 4]
mov dword [ebp - 4], 0x11
push dword [esi]
push 4
push eax
call fcn.100c998d
mov ecx, dword [ebp - 0x14]
mov eax, dword [ecx - 4]
lea eax, [eax*4 + 4]
push eax
push esi
call fcn.100c994f
add esp, 8
mov dword [ebp - 4], 0xffffffff
mov esi, dword [0x1010be98]
test esi, esi
je 0x100a3faf
mov eax, dword [0x1010be9c]
lea eax, [eax*4 + 4]
push eax
mov eax, dword [0x1010be94]
add eax, 0xfffffffc
push eax
push esi
call sub.VCRUNTIME140.dll_memcpy
add esp, 0xc
add esi, 4
mov dword [edi], esi
mov byte [0x1010bea0], 1
xor eax, eax
cmp byte [0x1010bea0], al
setne al
add eax, 0x2b
cmp dword [0x1010be94], 0
je 0x100a3fdf
mov ecx, dword [0x1010be98]
test ecx, ecx
je 0x100a3fdf
cmp eax, dword [0x1010be9c]
ja 0x100a3fdf
mov dword [ecx + eax*4], 0x10042440
mov edi, dword [0x1010ba50]
mov dword [0x1010bea4], edi
mov eax, dword [edi]
mov dword [0x1010bea8], eax
test eax, eax
je 0x100a410f
xor esi, esi
nop dword [eax]
mov eax, dword [0x1010bea8]
mov ecx, dword [eax + esi*4]
test ecx, ecx
je 0x100a402f
mov eax, dword [0x100f7110]
lea edx, [ebp - 0x34]
push 0x1c
push edx
push ecx
call eax
test eax, eax
je 0x100a402f
mov eax, dword [ebp - 0x20]
test al, 1
jne 0x100a402f
test eax, 0x100
jne 0x100a402f
inc esi
jmp 0x100a4000
mov dword [0x1010beb0], esi
test esi, esi
je 0x100a410f
lea edx, [esi + 1]
lea ecx, [ebp - 0x18]
call fcn.1002e110
cmp eax, 0x1010beac
je 0x100a4099
mov ecx, dword [eax]
mov dword [eax], 0
mov eax, dword [0x1010beac]
mov dword [0x1010beac], ecx
test eax, eax
je 0x100a4099
push fcn.10019d10
lea esi, [eax - 4]
mov dword [ebp - 4], 0x12
push dword [esi]
push 4
push eax
call fcn.100c998d
mov eax, dword [esi]
lea eax, [eax*4 + 4]
push eax
push esi
call fcn.100c994f
add esp, 8
mov dword [ebp - 4], 0xffffffff
mov eax, dword [ebp - 0x18]
mov dword [ebp - 0x14], eax
test eax, eax
je 0x100a40da
push fcn.10019d10
lea esi, [eax - 4]
mov dword [ebp - 4], 0x13
push dword [esi]
push 4
push eax
call fcn.100c998d
mov ecx, dword [ebp - 0x14]
mov eax, dword [ecx - 4]
lea eax, [eax*4 + 4]
push eax
push esi
call fcn.100c994f
add esp, 8
mov dword [ebp - 4], 0xffffffff
mov esi, dword [0x1010beac]
test esi, esi
je 0x100a410f
mov eax, dword [0x1010beb0]
lea eax, [eax*4 + 4]
push eax
mov eax, dword [0x1010bea8]
add eax, 0xfffffffc
push eax
push esi
call sub.VCRUNTIME140.dll_memcpy
add esp, 0xc
add esi, 4
mov dword [edi], esi
mov byte [0x1010beb4], 1
xor eax, eax
cmp byte [0x1010beb4], al
setne al
add eax, 4
cmp dword [0x1010bea8], 0
je 0x100a413f
mov ecx, dword [0x1010beac]
test ecx, ecx
je 0x100a413f
cmp eax, dword [0x1010beb0]
ja 0x100a413f
mov dword [ecx + eax*4], 0x100ba8d0
xor eax, eax
cmp byte [0x1010beb4], al
setne al
add eax, 6
cmp dword [0x1010bea8], 0
je 0x100a416f
mov ecx, dword [0x1010beac]
test ecx, ecx
je 0x100a416f
cmp eax, dword [0x1010beb0]
ja 0x100a416f
mov dword [ecx + eax*4], 0x100ba9a0
xor eax, eax
cmp byte [0x1010beb4], al
setne al
add eax, 0x27
cmp dword [0x1010bea8], 0
je 0x100a419f
mov ecx, dword [0x1010beac]
test ecx, ecx
je 0x100a419f
cmp eax, dword [0x1010beb0]
ja 0x100a419f
mov dword [ecx + eax*4], 0x100ba9b0
xor eax, eax
cmp byte [0x1010beb4], al
setne al
add eax, 0x28
cmp dword [0x1010bea8], 0
je 0x100a41cf
mov ecx, dword [0x1010beac]
test ecx, ecx
je 0x100a41cf
cmp eax, dword [0x1010beb0]
ja 0x100a41cf
mov dword [ecx + eax*4], 0x100ba9d0
mov edi, dword [0x1010ba70]
mov dword [0x1010beb8], edi
mov eax, dword [edi]
mov dword [0x1010bebc], eax
test eax, eax
je 0x100a42ff
xor esi, esi
nop dword [eax]
mov eax, dword [0x1010bebc]
mov ecx, dword [eax + esi*4]
test ecx, ecx
je 0x100a421f
mov eax, dword [0x100f7110]
lea edx, [ebp - 0x34]
push 0x1c
push edx
push ecx
call eax
test eax, eax
je 0x100a421f
mov eax, dword [ebp - 0x20]
test al, 1
jne 0x100a421f
test eax, 0x100
jne 0x100a421f
inc esi
jmp 0x100a41f0
mov dword [0x1010bec4], esi
test esi, esi
je 0x100a42ff
lea edx, [esi + 1]
lea ecx, [ebp - 0x18]
call fcn.1002e110
cmp eax, 0x1010bec0
je 0x100a4289
mov ecx, dword [eax]
mov dword [eax], 0
mov eax, dword [0x1010bec0]
mov dword [0x1010bec0], ecx
test eax, eax
je 0x100a4289
push fcn.10019d10
lea esi, [eax - 4]
mov dword [ebp - 4], 0x14
push dword [esi]
push 4
push eax
call fcn.100c998d
mov eax, dword [esi]
lea eax, [eax*4 + 4]
push eax
push esi
call fcn.100c994f
add esp, 8
mov dword [ebp - 4], 0xffffffff
mov eax, dword [ebp - 0x18]
mov dword [ebp - 0x14], eax
test eax, eax
je 0x100a42ca
push fcn.10019d10
lea esi, [eax - 4]
mov dword [ebp - 4], 0x15
push dword [esi]
push 4
push eax
call fcn.100c998d
mov ecx, dword [ebp - 0x14]
mov eax, dword [ecx - 4]
lea eax, [eax*4 + 4]
push eax
push esi
call fcn.100c994f
add esp, 8
mov dword [ebp - 4], 0xffffffff
mov esi, dword [0x1010bec0]
test esi, esi
je 0x100a42ff
mov eax, dword [0x1010bec4]
lea eax, [eax*4 + 4]
push eax
mov eax, dword [0x1010bebc]
add eax, 0xfffffffc
push eax
push esi
call sub.VCRUNTIME140.dll_memcpy
add esp, 0xc
add esi, 4
mov dword [edi], esi
mov byte [0x1010bec8], 1
xor eax, eax
cmp byte [0x1010bec8], al
setne al
add eax, 0xd
cmp dword [0x1010bebc], 0
je 0x100a432f
mov ecx, dword [0x1010bec0]
test ecx, ecx
je 0x100a432f
cmp eax, dword [0x1010bec4]
ja 0x100a432f
mov dword [ecx + eax*4], 0x10042040
mov edi, dword [0x1010ba58]
mov dword [0x1010becc], edi
mov eax, dword [edi]
mov dword [0x1010bed0], eax
test eax, eax
je 0x100a445f
xor esi, esi
nop dword [eax]
mov eax, dword [0x1010bed0]
mov ecx, dword [eax + esi*4]
test ecx, ecx
je 0x100a437f
mov eax, dword [0x100f7110]
lea edx, [ebp - 0x34]
push 0x1c
push edx
push ecx
call eax
test eax, eax
je 0x100a437f
mov eax, dword [ebp - 0x20]
test al, 1
jne 0x100a437f
test eax, 0x100
jne 0x100a437f
inc esi
jmp 0x100a4350
mov dword [0x1010bed8], esi
test esi, esi
je 0x100a445f
lea edx, [esi + 1]
lea ecx, [ebp - 0x18]
call fcn.1002e110
cmp eax, 0x1010bed4
je 0x100a43e9
mov ecx, dword [eax]
mov dword [eax], 0
mov eax, dword [0x1010bed4]
mov dword [0x1010bed4], ecx
test eax, eax
je 0x100a43e9
push fcn.10019d10
lea esi, [eax - 4]
mov dword [ebp - 4], 0x16
push dword [esi]
push 4
push eax
call fcn.100c998d
mov eax, dword [esi]
lea eax, [eax*4 + 4]
push eax
push esi
call fcn.100c994f
add esp, 8
mov dword [ebp - 4], 0xffffffff
mov eax, dword [ebp - 0x18]
mov dword [ebp - 0x14], eax
test eax, eax
je 0x100a442a
push fcn.10019d10
lea esi, [eax - 4]
mov dword [ebp - 4], 0x17
push dword [esi]
push 4
push eax
call fcn.100c998d
mov ecx, dword [ebp - 0x14]
mov eax, dword [ecx - 4]
lea eax, [eax*4 + 4]
push eax
push esi
call fcn.100c994f
add esp, 8
mov dword [ebp - 4], 0xffffffff
mov esi, dword [0x1010bed4]
test esi, esi
je 0x100a445f
mov eax, dword [0x1010bed8]
lea eax, [eax*4 + 4]
push eax
mov eax, dword [0x1010bed0]
add eax, 0xfffffffc
push eax
push esi
call sub.VCRUNTIME140.dll_memcpy
add esp, 0xc
add esi, 4
mov dword [edi], esi
mov byte [0x1010bedc], 1
xor eax, eax
cmp byte [0x1010bedc], al
setne al
add eax, 0x15
cmp dword [0x1010bed0], 0
je 0x100a448f
mov ecx, dword [0x1010bed4]
test ecx, ecx
je 0x100a448f
cmp eax, dword [0x1010bed8]
ja 0x100a448f
mov dword [ecx + eax*4], 0x10042410
mov edi, dword [0x1010bb8c]
mov dword [0x1010bee0], edi
mov eax, dword [edi]
mov dword [0x1010bee4], eax
test eax, eax
je 0x100a45bf
xor esi, esi
nop dword [eax]
mov eax, dword [0x1010bee4]
mov ecx, dword [eax + esi*4]
test ecx, ecx
je 0x100a44df
mov eax, dword [0x100f7110]
lea edx, [ebp - 0x34]
push 0x1c
push edx
push ecx
call eax
test eax, eax
je 0x100a44df
mov eax, dword [ebp - 0x20]
test al, 1
jne 0x100a44df
test eax, 0x100
jne 0x100a44df
inc esi
jmp 0x100a44b0
mov dword [0x1010beec], esi
test esi, esi
je 0x100a45bf
lea edx, [esi + 1]
lea ecx, [ebp - 0x18]
call fcn.1002e110
cmp eax, 0x1010bee8
je 0x100a4549
mov ecx, dword [eax]
mov dword [eax], 0
mov eax, dword [0x1010bee8]
mov dword [0x1010bee8], ecx
test eax, eax
je 0x100a4549
push fcn.10019d10
lea esi, [eax - 4]
mov dword [ebp - 4], 0x18
push dword [esi]
push 4
push eax
call fcn.100c998d
mov eax, dword [esi]
lea eax, [eax*4 + 4]
push eax
push esi
call fcn.100c994f
add esp, 8
mov dword [ebp - 4], 0xffffffff
mov eax, dword [ebp - 0x18]
mov dword [ebp - 0x14], eax
test eax, eax
je 0x100a458a
push fcn.10019d10
lea esi, [eax - 4]
mov dword [ebp - 4], 0x19
push dword [esi]
push 4
push eax
call fcn.100c998d
mov ecx, dword [ebp - 0x14]
mov eax, dword [ecx - 4]
lea eax, [eax*4 + 4]
push eax
push esi
call fcn.100c994f
add esp, 8
mov dword [ebp - 4], 0xffffffff
mov esi, dword [0x1010bee8]
test esi, esi
je 0x100a45bf
mov eax, dword [0x1010beec]
lea eax, [eax*4 + 4]
push eax
mov eax, dword [0x1010bee4]
add eax, 0xfffffffc
push eax
push esi
call sub.VCRUNTIME140.dll_memcpy
add esp, 0xc
add esi, 4
mov dword [edi], esi
mov byte [0x1010bef0], 1
xor eax, eax
cmp byte [0x1010bef0], al
setne al
add eax, 7
cmp dword [0x1010bee4], 0
je 0x100a45ef
mov ecx, dword [0x1010bee8]
test ecx, ecx
je 0x100a45ef
cmp eax, dword [0x1010beec]
ja 0x100a45ef
mov dword [ecx + eax*4], 0x10041800
push 0x100e4388
call dword [0x1010bb9c]
mov edi, dword [0x1010bb00]
mov dword [0x1010c408], edi
mov eax, dword [edi]
mov dword [0x1010c40c], eax
test eax, eax
je 0x100a472f
xor esi, esi
nop word [eax + eax]
mov eax, dword [0x1010c40c]
mov ecx, dword [eax + esi*4]
test ecx, ecx
je 0x100a464f
mov eax, dword [0x100f7110]
lea edx, [ebp - 0x34]
push 0x1c
push edx
push ecx
call eax
test eax, eax
je 0x100a464f
mov eax, dword [ebp - 0x20]
test al, 1
jne 0x100a464f
test eax, 0x100
jne 0x100a464f
inc esi
jmp 0x100a4620
mov dword [0x1010c414], esi
test esi, esi
je 0x100a472f
lea edx, [esi + 1]
lea ecx, [ebp - 0x18]
call fcn.1002e110
cmp eax, 0x1010c410
je 0x100a46b9
mov ecx, dword [eax]
mov dword [eax], 0
mov eax, dword [0x1010c410]
mov dword [0x1010c410], ecx
test eax, eax
je 0x100a46b9
push fcn.10019d10
lea esi, [eax - 4]
mov dword [ebp - 4], 0x1a
push dword [esi]
push 4
push eax
call fcn.100c998d
mov eax, dword [esi]
lea eax, [eax*4 + 4]
push eax
push esi
call fcn.100c994f
add esp, 8
mov dword [ebp - 4], 0xffffffff
mov eax, dword [ebp - 0x18]
mov dword [ebp - 0x14], eax
test eax, eax
je 0x100a46fa
push fcn.10019d10
lea esi, [eax - 4]
mov dword [ebp - 4], 0x1b
push dword [esi]
push 4
push eax
call fcn.100c998d
mov ecx, dword [ebp - 0x14]
mov eax, dword [ecx - 4]
lea eax, [eax*4 + 4]
push eax
push esi
call fcn.100c994f
add esp, 8
mov dword [ebp - 4], 0xffffffff
mov esi, dword [0x1010c410]
test esi, esi
je 0x100a472f
mov eax, dword [0x1010c414]
lea eax, [eax*4 + 4]
push eax
mov eax, dword [0x1010c40c]
add eax, 0xfffffffc
push eax
push esi
call sub.VCRUNTIME140.dll_memcpy
add esp, 0xc
add esi, 4
mov dword [edi], esi
mov byte [0x1010c418], 1
xor eax, eax
cmp byte [0x1010c418], al
setne al
add eax, 0xd
cmp dword [0x1010c40c], 0
je 0x100a475f
mov ecx, dword [0x1010c410]
test ecx, ecx
je 0x100a475f
cmp eax, dword [0x1010c414]
ja 0x100a475f
mov dword [ecx + eax*4], 0x1009df00
mov edi, dword [0x1010bb04]
mov dword [0x1010bef4], edi
mov eax, dword [edi]
mov dword [0x1010bef8], eax
test eax, eax
je 0x100a488f
xor esi, esi
nop dword [eax]
mov eax, dword [0x1010bef8]
mov ecx, dword [eax + esi*4]
test ecx, ecx
je 0x100a47af
mov eax, dword [0x100f7110]
lea edx, [ebp - 0x34]
push 0x1c
push edx
push ecx
call eax
test eax, eax
je 0x100a47af
mov eax, dword [ebp - 0x20]
test al, 1
jne 0x100a47af
test eax, 0x100
jne 0x100a47af
inc esi
jmp 0x100a4780
mov dword [0x1010bf00], esi
test esi, esi
je 0x100a488f
lea edx, [esi + 1]
lea ecx, [ebp - 0x18]
call fcn.1002e110
cmp eax, 0x1010befc
je 0x100a4819
mov ecx, dword [eax]
mov dword [eax], 0
mov eax, dword [0x1010befc]
mov dword [0x1010befc], ecx
test eax, eax
je 0x100a4819
push fcn.10019d10
lea esi, [eax - 4]
mov dword [ebp - 4], 0x1c
push dword [esi]
push 4
push eax
call fcn.100c998d
mov eax, dword [esi]
lea eax, [eax*4 + 4]
push eax
push esi
call fcn.100c994f
add esp, 8
mov dword [ebp - 4], 0xffffffff
mov eax, dword [ebp - 0x18]
mov dword [ebp - 0x14], eax
test eax, eax
je 0x100a485a
push fcn.10019d10
lea esi, [eax - 4]
mov dword [ebp - 4], 0x1d
push dword [esi]
push 4
push eax
call fcn.100c998d
mov ecx, dword [ebp - 0x14]
mov eax, dword [ecx - 4]
lea eax, [eax*4 + 4]
push eax
push esi
call fcn.100c994f
add esp, 8
mov dword [ebp - 4], 0xffffffff
mov esi, dword [0x1010befc]
test esi, esi
je 0x100a488f
mov eax, dword [0x1010bf00]
lea eax, [eax*4 + 4]
push eax
mov eax, dword [0x1010bef8]
add eax, 0xfffffffc
push eax
push esi
call sub.VCRUNTIME140.dll_memcpy
add esp, 0xc
add esi, 4
mov dword [edi], esi
mov byte [0x1010bf04], 1
xor eax, eax
cmp byte [0x1010bf04], al
setne al
add eax, 0xd
cmp dword [0x1010bef8], 0
je 0x100a48bf
mov ecx, dword [0x1010befc]
test ecx, ecx
je 0x100a48bf
cmp eax, dword [0x1010bf00]
ja 0x100a48bf
mov dword [ecx + eax*4], 0x1009e090
lea eax, [ebp - 0x18]
mov dword [ebp - 0x14], 0xf3c2c786
push eax
mov ecx, 0x10110ce0
mov dword [ebp - 0x18], 0x72e242a1
call fcn.1009c660
lea ecx, [ebp - 0x14]
push ecx
mov ecx, eax
call fcn.1009c640
movq xmm0, qword [eax]
mov eax, dword [eax + 8]
movq qword [ebp - 0x24], xmm0
cmp byte [ebp - 0x24], 0
mov dword [ebp - 0x1c], eax
jne 0x100a490d
mov ecx, dword [ebp - 0x20]
mov eax, dword [ecx + 0x20]
mov dword [0x1010c434], eax
mov dword [ecx + 0x20], 0x100a2910
lea eax, [ebp - 0x18]
mov dword [ebp - 0x14], 0x9ef0d03e
push eax
mov ecx, 0x10110ce0
mov dword [ebp - 0x18], 0x72e242a1
call fcn.1009c660
lea ecx, [ebp - 0x14]
push ecx
mov ecx, eax
call fcn.1009c640
movq xmm0, qword [eax]
mov eax, dword [eax + 8]
movq qword [ebp - 0x24], xmm0
cmp byte [ebp - 0x24], 0
mov dword [ebp - 0x1c], eax
jne 0x100a495b
mov ecx, dword [ebp - 0x20]
mov eax, dword [ecx + 0x20]
mov dword [0x1010c438], eax
mov dword [ecx + 0x20], 0x100a2970
lea eax, [ebp - 0x18]
mov dword [ebp - 0x14], 0x566bd764
push eax
mov ecx, 0x10110ce0
mov dword [ebp - 0x18], 0x2aafa737
call fcn.1009c660
lea ecx, [ebp - 0x14]
push ecx
mov ecx, eax
call fcn.1009c640
movq xmm0, qword [eax]
mov eax, dword [eax + 8]
movq qword [ebp - 0x24], xmm0
cmp byte [ebp - 0x24], 0
mov dword [ebp - 0x1c], eax
jne 0x100a49a9
mov edx, dword [ebp - 0x20]
mov eax, dword [edx + 0x20]
mov dword [0x1010c43c], eax
mov dword [edx + 0x20], 0x100a2b70
lea eax, [ebp - 0x18]
mov dword [ebp - 0x14], 0x781aa1a4
push eax
mov ecx, 0x10110ce0
mov dword [ebp - 0x18], 0x2aafa737
call fcn.1009c660
lea ecx, [ebp - 0x14]
push ecx
mov ecx, eax
call fcn.1009c640
movq xmm0, qword [eax]
mov eax, dword [eax + 8]
movq qword [ebp - 0x24], xmm0
cmp byte [ebp - 0x24], 0
mov dword [ebp - 0x1c], eax
jne 0x100a49f7
mov ecx, dword [ebp - 0x20]
mov eax, dword [ecx + 0x20]
mov dword [0x1010c440], eax
mov dword [ecx + 0x20], 0x100a2b50
call fcn.100c6ab0
movaps xmm0, xmmword [0x100da7b0]
xor eax, eax
movaps xmm2, xmmword [0x100da590]
movups xmmword [ebp - 0x6c], xmm0
mov byte [ebp - 0x3c], 0xce
movaps xmm0, xmmword [0x100da740]
movups xmmword [ebp - 0x5c], xmm0
movaps xmm0, xmmword [0x100d9ee0]
movups xmmword [ebp - 0x4c], xmm0
nop word [eax + eax]
movups xmm0, xmmword [ebp + eax - 0x6c]
movaps xmm1, xmm2
pxor xmm1, xmm0
movups xmmword [ebp + eax - 0x6c], xmm1
add eax, 0x10
cmp eax, 0x30
jb 0x100a4a30
cmp eax, 0x31
jae 0x100a4a5b
nop
xor byte [ebp + eax - 0x6c], 0xce
inc eax
cmp eax, 0x31
jb 0x100a4a50
lea ecx, [ebp - 0x6c]
mov dword [ebp - 0x30], 0
mov dword [ebp - 0x20], 0
lea edx, [ecx + 1]
mov dword [ebp - 0x1c], 0xf
mov byte [ebp - 0x30], 0
nop word [eax + eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x100a4a80
sub ecx, edx
lea eax, [ebp - 0x6c]
push ecx
push eax
lea ecx, [ebp - 0x30]
call fcn.100204f0
mov edx, 0x38450191
mov dword [ebp - 4], 0x1e
lea ecx, [ebp - 0x78]
call fcn.10042610
mov edx, dword [eax + 8]
test edx, edx
je 0x100a4ab6
mov edx, dword [edx + 0x50]
jmp 0x100a4ab8
xor edx, edx
mov eax, dword [eax]
test eax, eax
je 0x100a4ac3
mov eax, dword [eax + 0x18]
jmp 0x100a4ac5
xor eax, eax
lea ecx, [ebp - 0x30]
push ecx
push eax
lea ecx, [ebp - 0x18]
call fcn.10042a40
add esp, 8
push 0x10110e4c
push 0x100a2c90
push dword [ebp - 0x18]
call fcn.100c6bf0
mov ecx, dword [ebp - 0x1c]
cmp ecx, 0x10
jb 0x100a4b1d
mov edx, dword [ebp - 0x30]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x100a4b13
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x100a4b13
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push ecx
push edx
call fcn.100c9dbc
add esp, 8
push 0
call fcn.100c7010
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.100c9941
mov esp, ebp
pop ebp
ret