Function at 0x1002c1f7
Capabilities:
Contain obfuscated stackstrings

Disassembly:
push 0x10
mov eax, 0x1009b894
call fcn.1003d9e2
mov esi, ecx
mov dword [ebp - 0x10], esi
xor edi, edi
lea ecx, [esi + 0x20]
mov dword [esi], 0x100019cc
mov dword [esi + 4], 0x10001a00
mov dword [esi + 8], 0x10001a28
mov dword [esi + 0xc], edi
mov dword [esi + 0x10], edi
mov dword [esi + 0x14], edi
mov dword [esi + 0x18], edi
mov dword [esi + 0x1c], edi
call fcn.1002b1ad
mov dword [ebp - 4], edi
mov dword [esi + 0xb8], edi
mov byte [ebp - 4], 1
mov dword [esi + 0xbc], edi
mov byte [ebp - 4], 2
mov dword [esi + 0xc0], edi
mov byte [ebp - 4], 3
lea ecx, [esi + 0xc4]
call fcn.100973b5
push 4
pop eax
mov byte [ebp - 4], al
lea ecx, [esi + 0xd0]
call fcn.100973b5
mov byte [ebp - 4], 5
lea ecx, [esi + 0xdc]
call fcn.100973b5
mov byte [ebp - 4], 6
mov dword [esi + 0xe8], 0x100019c0
mov dword [esi + 0xec], edi
mov dword [esi + 0xf0], edi
mov byte [ebp - 4], 7
mov dword [esi + 0xf4], edi
mov byte [ebp - 4], 8
lea ecx, [esi + 0xf8]
call fcn.10030267
mov byte [ebp - 4], 9
mov dword [esi + 0x11c], edi
mov dword [esi + 0x120], edi
mov dword [esi + 0x124], edi
lea ebx, [esi + 0x138]
mov dword [esi + 0x128], edi
mov dword [esi + 0x12c], edi
mov dword [esi + 0x130], edi
mov ecx, ebx
mov dword [esi + 0x134], edi
call fcn.1002b500
mov byte [ebp - 4], 0xa
push fcn.1002b2d4
push fcn.1002b291
push 0x1a
push 0x118
lea eax, [esi + 0x14c]
push eax
call fcn.1003dc08
mov byte [ebp - 4], 0xb
push 0x10
pop eax
mov dword [esi + 0x1dbc], edi
lea edi, [esi + 0x1dc0]
and dword [edi], 0
and dword [edi + 4], 0
push 4
xor ecx, ecx
pop edx
mul edx
mov dword [ebp - 0x14], edi
seto cl
neg ecx
or ecx, eax
push ecx
call sub.msvcr100.dll_void____cdecl_operator_new___unsigned_int_
pop ecx
mov dword [edi + 4], eax
test eax, eax
jne 0x1002c364
mov eax, dword [ebp + 4]
mov dword [ebp - 0x18], eax
push 0x1009f984
lea eax, [ebp - 0x1c]
push eax
mov dword [ebp - 0x1c], 0x8007000e
call sub.msvcr100.dll__CxxThrowException
push 0x40
push 0
push eax
call sub.msvcr100.dll_memset
add esp, 0xc
mov dword [edi], 0x10
mov byte [ebp - 4], 0xc
xor eax, eax
mov dword [edi + 8], eax
mov byte [ebp - 4], 0xe
lea edi, [esi + 0x1dd4]
mov dword [esi + 0x1dcc], eax
mov dword [esi + 0x1dd0], eax
mov dword [ebp - 0x14], edi
mov dword [edi], eax
mov byte [ebp - 4], 0xf
mov dword [edi + 4], eax
mov byte [ebp - 4], 0x10
mov dword [edi + 8], eax
mov byte [ebp - 4], 0x12
push ebx
push esi
lea ecx, [esi + 0x1de0]
call fcn.1002bc05
mov byte [ebp - 4], 0x13
xor ebx, ebx
lea ecx, [esi + 0x1e14]
mov dword [esi + 0x1e00], ebx
mov dword [esi + 0x1e04], ebx
mov dword [esi + 0x1e08], ebx
call fcn.1002b291
mov byte [ebp - 4], 0x14
lea ecx, [esi + 0x1f2c]
call fcn.1002b291
mov byte [ebp - 4], 0x15
lea ecx, [esi + 0x2044]
call fcn.1002b291
mov byte [ebp - 4], 0x16
lea ecx, [esi + 0x215c]
call fcn.1002b291
mov byte [ebp - 4], 0x17
lea ecx, [esi + 0x2274]
call fcn.1002b291
mov byte [ebp - 4], 0x18
lea ecx, [esi + 0x238c]
call fcn.1002b291
mov byte [ebp - 4], 0x19
lea ecx, [esi + 0x24a4]
call fcn.1002b291
mov byte [ebp - 4], 0x1a
lea ecx, [esi + 0x25bc]
call fcn.1002b291
mov byte [ebp - 4], 0x1b
lea ecx, [esi + 0x26d4]
call fcn.1002b291
mov byte [ebp - 4], 0x1c
lea ecx, [esi + 0x27ec]
call fcn.1002b291
mov byte [ebp - 4], 0x1d
lea ecx, [esi + 0x2904]
call fcn.1003b3b1
mov byte [ebp - 4], 0x1e
lea ecx, [esi + 0x2a28]
call fcn.1003b3b1
mov byte [ebp - 4], 0x1f
lea ecx, [esi + 0x2b4c]
call fcn.1003b3b1
mov byte [ebp - 4], 0x20
lea ecx, [esi + 0x2c70]
call fcn.1003b3b1
mov byte [ebp - 4], 0x21
lea ecx, [esi + 0x2d94]
call fcn.1003b3b1
mov byte [ebp - 4], 0x22
lea ecx, [esi + 0x2eb8]
call fcn.1003b3b1
mov byte [ebp - 4], 0x23
lea ecx, [esi + 0x2fdc]
call fcn.1003b3b1
mov byte [ebp - 4], 0x24
lea ecx, [esi + 0x3100]
call fcn.1003b3b1
mov byte [ebp - 4], 0x25
lea ecx, [esi + 0x3224]
call fcn.1003b3b1
mov byte [ebp - 4], 0x26
lea ecx, [esi + 0x3348]
call fcn.1003b3b1
mov byte [ebp - 4], 0x27
lea ecx, [esi + 0x346c]
call fcn.1003b3b1
mov byte [ebp - 4], 0x28
lea ecx, [esi + 0x3590]
call fcn.1003b3b1
mov byte [ebp - 4], 0x29
lea ecx, [esi + 0x36b4]
call fcn.1003b3b1
mov byte [ebp - 4], 0x2a
lea ecx, [esi + 0x37d8]
call fcn.1003b3b1
mov byte [ebp - 4], 0x2b
lea ecx, [esi + 0x38fc]
call fcn.1003b3b1
mov byte [ebp - 4], 0x2c
lea ecx, [esi + 0x3a20]
call fcn.1003b3b1
mov byte [ebp - 4], 0x2d
lea ecx, [esi + 0x3b44]
call fcn.1003b3b1
mov byte [ebp - 4], 0x2e
lea ecx, [esi + 0x3c68]
call fcn.1003b3b1
mov byte [ebp - 4], 0x2f
lea ecx, [esi + 0x3d8c]
call fcn.1003b3b1
mov byte [ebp - 4], 0x30
lea ecx, [esi + 0x3eb0]
call fcn.1003b3b1
mov byte [ebp - 4], 0x31
lea ecx, [esi + 0x3fd4]
call fcn.1003b3b1
mov byte [ebp - 4], 0x32
lea ecx, [esi + 0x40f8]
call fcn.1003b3b1
mov byte [ebp - 4], 0x33
lea ecx, [esi + 0x421c]
call fcn.1003b3b1
mov byte [ebp - 4], 0x34
lea ecx, [esi + 0x4340]
call fcn.1003b3b1
mov byte [ebp - 4], 0x35
lea ecx, [esi + 0x4464]
call fcn.1003b3b1
mov byte [ebp - 4], 0x36
lea ecx, [esi + 0x4588]
call fcn.1003b3b1
mov byte [ebp - 4], 0x37
lea ecx, [esi + 0x46ac]
call fcn.1003b3b1
mov byte [ebp - 4], 0x38
lea ecx, [esi + 0x47d0]
call fcn.1003b3b1
mov byte [ebp - 4], 0x39
lea ecx, [esi + 0x48f4]
call fcn.1003b3b1
mov byte [ebp - 4], 0x3a
lea ecx, [esi + 0x4a18]
call fcn.1003b3b1
mov byte [ebp - 4], 0x3b
lea ecx, [esi + 0x4b3c]
call fcn.1003b3b1
mov byte [ebp - 4], 0x3c
lea ecx, [esi + 0x4c60]
call fcn.1003b3b1
mov byte [ebp - 4], 0x3d
xor edx, edx
inc edx
mov ecx, 0x100ab504
mov eax, edx
lock xadd dword [ecx], eax
mov dword [esi + 0x124], edx
mov ecx, dword [edi]
test ecx, ecx
je 0x1002c668
mov eax, dword [ecx]
push ecx
call dword [eax + 8]
mov dword [edi], ebx
mov ecx, dword [esi + 0x1dd8]
test ecx, ecx
je 0x1002c67a
mov eax, dword [ecx]
push ecx
call dword [eax + 8]
mov dword [esi + 0x1dd8], ebx
or dword [ebp - 4], 0xffffffff
mov eax, esi
call fcn.1003daba
ret