Function at 0x1003c7a0
Capabilities:
Contain obfuscated stackstrings
Get process heap flags
Get process heap force flags

Disassembly:
push 0xffffffffffffffff
push 0x10082420
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x34
mov al, byte [esp + 3]
push ebx
push esi
xor ebx, ebx
push edi
push ebx
lea ecx, [esp + 0x20]
mov byte [esp + 0x20], al
call fcn.100143b0
or esi, 0xffffffff
mov edi, 0x1009afa8
mov ecx, esi
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
push ecx
push 0x1009afa8
lea ecx, [esp + 0x24]
call fcn.10014400
mov dword [esp + 0x48], ebx
lea ecx, [esp + 0x10]
lea edx, [esp + 0x1c]
push ecx
push edx
lea ecx, [esp + 0x34]
mov dword [esp + 0x18], ebx
call fcn.1003df20
mov byte [esp + 0x48], 1
push eax
lea eax, [esp + 0x18]
mov ecx, 0x100ad528
push eax
call fcn.1003de20
mov edi, dword [eax]
mov byte [esp + 0x48], bl
push 1
lea ecx, [esp + 0x30]
call fcn.100143b0
mov dword [edi + 0x1c], 0x1003c790
mov dword [esp + 0x48], esi
push 1
lea ecx, [esp + 0x20]
call fcn.100143b0
mov cl, byte [esp + 0xf]
push ebx
mov byte [esp + 0x20], cl
lea ecx, [esp + 0x20]
call fcn.100143b0
mov edi, 0x1009af9c
mov ecx, esi
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
push ecx
push 0x1009af9c
lea ecx, [esp + 0x24]
call fcn.10014400
mov dword [esp + 0x48], 3
lea edx, [esp + 0x10]
lea eax, [esp + 0x1c]
push edx
push eax
lea ecx, [esp + 0x34]
mov dword [esp + 0x18], ebx
call fcn.1003df20
mov byte [esp + 0x48], 4
lea ecx, [esp + 0x14]
push eax
push ecx
mov ecx, 0x100ad528
call fcn.1003de20
mov edi, dword [eax]
mov byte [esp + 0x48], 3
push 1
lea ecx, [esp + 0x30]
call fcn.100143b0
mov dword [edi + 0x1c], 0x1003c770
mov dword [esp + 0x48], esi
push 1
lea ecx, [esp + 0x20]
call fcn.100143b0
mov dl, byte [esp + 0xf]
push ebx
lea ecx, [esp + 0x20]
mov byte [esp + 0x20], dl
call fcn.100143b0
mov edi, 0x1009460c
mov ecx, esi
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
push ecx
push 0x1009460c
lea ecx, [esp + 0x24]
call fcn.10014400
mov dword [esp + 0x48], 6
lea eax, [esp + 0x10]
lea ecx, [esp + 0x1c]
push eax
push ecx
lea ecx, [esp + 0x34]
mov dword [esp + 0x18], ebx
call fcn.1003df20
mov byte [esp + 0x48], 7
lea edx, [esp + 0x14]
push eax
push edx
mov ecx, 0x100ad528
call fcn.1003de20
mov edi, dword [eax]
mov byte [esp + 0x48], 6
push 1
lea ecx, [esp + 0x30]
call fcn.100143b0
mov dword [edi + 0x1c], fcn.1003c5b0
mov dword [esp + 0x48], esi
push 1
lea ecx, [esp + 0x20]
call fcn.100143b0
mov al, byte [esp + 0xf]
push ebx
lea ecx, [esp + 0x20]
mov byte [esp + 0x20], al
call fcn.100143b0
mov edi, 0x1009af90
mov ecx, esi
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
push ecx
push 0x1009af90
lea ecx, [esp + 0x24]
call fcn.10014400
mov dword [esp + 0x48], 9
lea ecx, [esp + 0x10]
lea edx, [esp + 0x1c]
push ecx
push edx
lea ecx, [esp + 0x34]
mov dword [esp + 0x18], ebx
call fcn.1003df20
mov byte [esp + 0x48], 0xa
push eax
lea eax, [esp + 0x18]
mov ecx, 0x100ad528
push eax
call fcn.1003de20
mov edi, dword [eax]
mov byte [esp + 0x48], 9
push 1
lea ecx, [esp + 0x30]
call fcn.100143b0
mov dword [edi + 0x1c], fcn.10018090
mov dword [esp + 0x48], esi
push 1
lea ecx, [esp + 0x20]
call fcn.100143b0
mov cl, byte [esp + 0xf]
push ebx
mov byte [esp + 0x20], cl
lea ecx, [esp + 0x20]
call fcn.100143b0
mov edi, 0x1009af84
mov ecx, esi
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
push ecx
push 0x1009af84
lea ecx, [esp + 0x24]
call fcn.10014400
mov dword [esp + 0x48], 0xc
lea edx, [esp + 0x10]
lea eax, [esp + 0x1c]
push edx
push eax
lea ecx, [esp + 0x34]
mov dword [esp + 0x18], ebx
call fcn.1003df20
mov byte [esp + 0x48], 0xd
lea ecx, [esp + 0x14]
push eax
push ecx
mov ecx, 0x100ad528
call fcn.1003de20
mov edi, dword [eax]
mov byte [esp + 0x48], 0xc
push 1
lea ecx, [esp + 0x30]
call fcn.100143b0
mov dword [edi + 0x1c], fcn.10018f40
mov dword [esp + 0x48], esi
push 1
lea ecx, [esp + 0x20]
call fcn.100143b0
mov dl, byte [esp + 0xf]
push ebx
lea ecx, [esp + 0x20]
mov byte [esp + 0x20], dl
call fcn.100143b0
mov edi, 0x10095cdc
mov ecx, esi
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
push ecx
push 0x10095cdc
lea ecx, [esp + 0x24]
call fcn.10014400
mov dword [esp + 0x48], 0xf
lea eax, [esp + 0x10]
lea ecx, [esp + 0x1c]
push eax
push ecx
lea ecx, [esp + 0x34]
mov dword [esp + 0x18], ebx
call fcn.1003df20
mov byte [esp + 0x48], 0x10
push eax
lea edx, [esp + 0x18]
push edx
mov ecx, 0x100ad528
call fcn.1003de20
mov edi, dword [eax]
mov byte [esp + 0x48], 0xf
push 1
lea ecx, [esp + 0x30]
call fcn.100143b0
mov dword [edi + 0x1c], fcn.1002f950
mov dword [esp + 0x48], esi
push 1
lea ecx, [esp + 0x20]
call fcn.100143b0
mov al, byte [esp + 0xf]
push ebx
lea ecx, [esp + 0x20]
mov byte [esp + 0x20], al
call fcn.100143b0
mov edi, 0x10095cd0
mov ecx, esi
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
push ecx
push 0x10095cd0
lea ecx, [esp + 0x24]
call fcn.10014400
mov dword [esp + 0x48], 0x12
lea ecx, [esp + 0x10]
lea edx, [esp + 0x1c]
push ecx
push edx
lea ecx, [esp + 0x34]
mov dword [esp + 0x18], ebx
call fcn.1003df20
mov byte [esp + 0x48], 0x13
push eax
lea eax, [esp + 0x18]
mov ecx, 0x100ad528
push eax
call fcn.1003de20
mov edi, dword [eax]
mov byte [esp + 0x48], 0x12
push 1
lea ecx, [esp + 0x30]
call fcn.100143b0
mov dword [edi + 0x1c], fcn.1002fb00
mov dword [esp + 0x48], esi
push 1
lea ecx, [esp + 0x20]
call fcn.100143b0
mov cl, byte [esp + 0xf]
push ebx
mov byte [esp + 0x20], cl
lea ecx, [esp + 0x20]
call fcn.100143b0
mov edi, 0x1009af78
mov ecx, esi
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
push ecx
push 0x1009af78
lea ecx, [esp + 0x24]
call fcn.10014400
mov dword [esp + 0x48], 0x15
lea edx, [esp + 0x10]
lea eax, [esp + 0x1c]
push edx
push eax
lea ecx, [esp + 0x34]
mov dword [esp + 0x18], ebx
call fcn.1003df20
mov byte [esp + 0x48], 0x16
lea ecx, [esp + 0x14]
push eax
push ecx
mov ecx, 0x100ad528
call fcn.1003de20
mov edi, dword [eax]
mov byte [esp + 0x48], 0x15
push 1
lea ecx, [esp + 0x30]
call fcn.100143b0
mov dword [edi + 0x1c], fcn.10030380
mov dword [esp + 0x48], esi
push 1
lea ecx, [esp + 0x20]
call fcn.100143b0
mov dl, byte [esp + 0xf]
push ebx
lea ecx, [esp + 0x20]
mov byte [esp + 0x20], dl
call fcn.100143b0
mov edi, 0x1009af6c
mov ecx, esi
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
push ecx
push 0x1009af6c
lea ecx, [esp + 0x24]
call fcn.10014400
mov dword [esp + 0x48], 0x18
lea eax, [esp + 0x10]
lea ecx, [esp + 0x1c]
push eax
push ecx
lea ecx, [esp + 0x34]
mov dword [esp + 0x18], ebx
call fcn.1003df20
mov byte [esp + 0x48], 0x19
lea edx, [esp + 0x14]
push eax
push edx
mov ecx, 0x100ad528
call fcn.1003de20
mov edi, dword [eax]
mov byte [esp + 0x48], 0x18
push 1
lea ecx, [esp + 0x30]
call fcn.100143b0
mov dword [edi + 0x1c], 0x100320a0
mov dword [esp + 0x48], esi
push 1
lea ecx, [esp + 0x20]
call fcn.100143b0
mov al, byte [esp + 0xf]
push ebx
lea ecx, [esp + 0x20]
mov byte [esp + 0x20], al
call fcn.100143b0
mov edi, 0x1009af5c
mov ecx, esi
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
push ecx
push 0x1009af5c
lea ecx, [esp + 0x24]
call fcn.10014400
mov dword [esp + 0x48], 0x1b
lea ecx, [esp + 0x10]
lea edx, [esp + 0x1c]
push ecx
mov dword [esp + 0x14], ebx
push edx
lea ecx, [esp + 0x34]
call fcn.1003df20
mov byte [esp + 0x48], 0x1c
push eax
lea eax, [esp + 0x18]
mov ecx, 0x100ad528
push eax
call fcn.1003de20
mov edi, dword [eax]
mov byte [esp + 0x48], 0x1b
push 1
lea ecx, [esp + 0x30]
call fcn.100143b0
mov dword [edi + 0x1c], fcn.1003b010
mov dword [esp + 0x48], esi
push 1
lea ecx, [esp + 0x20]
call fcn.100143b0
mov cl, byte [esp + 0xf]
push ebx
mov byte [esp + 0x20], cl
lea ecx, [esp + 0x20]
call fcn.100143b0
mov edi, 0x10099284
mov ecx, esi
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
push ecx
push 0x10099284
lea ecx, [esp + 0x24]
call fcn.10014400
mov dword [esp + 0x48], 0x1e
lea edx, [esp + 0x10]
lea eax, [esp + 0x1c]
push edx
push eax
lea ecx, [esp + 0x34]
mov dword [esp + 0x18], ebx
call fcn.1003df20
mov byte [esp + 0x48], 0x1f
lea ecx, [esp + 0x14]
push eax
push ecx
mov ecx, 0x100ad528
call fcn.1003de20
mov edi, dword [eax]
mov byte [esp + 0x48], 0x1e
push 1
lea ecx, [esp + 0x30]
call fcn.100143b0
mov dword [edi + 0x1c], 0x1003af90
mov dword [esp + 0x48], esi
push 1
lea ecx, [esp + 0x20]
call fcn.100143b0
mov dl, byte [esp + 0xf]
push ebx
lea ecx, [esp + 0x20]
mov byte [esp + 0x20], dl
call fcn.100143b0
mov edi, 0x10095cac
mov ecx, esi
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
push ecx
push 0x10095cac
lea ecx, [esp + 0x24]
call fcn.10014400
mov dword [esp + 0x48], 0x21
mov dword [esp + 0x10], ebx
lea eax, [esp + 0x10]
lea ecx, [esp + 0x1c]
push eax
push ecx
lea ecx, [esp + 0x34]
call fcn.1003df20
mov byte [esp + 0x48], 0x22
lea edx, [esp + 0x14]
push eax
push edx
mov ecx, 0x100ad528
call fcn.1003de20
mov edi, dword [eax]
mov byte [esp + 0x48], 0x21
push 1
lea ecx, [esp + 0x30]
call fcn.100143b0
mov dword [edi + 0x1c], fcn.10015780
mov dword [esp + 0x48], esi
push 1
lea ecx, [esp + 0x20]
call fcn.100143b0
mov al, byte [esp + 0xf]
push ebx
lea ecx, [esp + 0x20]
mov byte [esp + 0x20], al
call fcn.100143b0
mov edi, 0x1009af50
mov ecx, esi
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
push ecx
push 0x1009af50
lea ecx, [esp + 0x24]
call fcn.10014400
mov dword [esp + 0x48], 0x24
lea ecx, [esp + 0x10]
lea edx, [esp + 0x1c]
push ecx
push edx
lea ecx, [esp + 0x34]
mov dword [esp + 0x18], ebx
call fcn.1003df20
mov byte [esp + 0x48], 0x25
push eax
lea eax, [esp + 0x18]
mov ecx, 0x100ad528
push eax
call fcn.1003de20
mov edi, dword [eax]
mov byte [esp + 0x48], 0x24
push 1
lea ecx, [esp + 0x30]
call fcn.100143b0
mov dword [edi + 0x1c], 0x1002e410
mov dword [esp + 0x48], esi
push 1
lea ecx, [esp + 0x20]
call fcn.100143b0
mov cl, byte [esp + 0xf]
push ebx
mov byte [esp + 0x20], cl
lea ecx, [esp + 0x20]
call fcn.100143b0
mov edi, 0x10095908
mov ecx, esi
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
push ecx
push 0x10095908
lea ecx, [esp + 0x24]
call fcn.10014400
mov dword [esp + 0x48], 0x27
lea edx, [esp + 0x10]
lea eax, [esp + 0x1c]
push edx
push eax
lea ecx, [esp + 0x34]
mov dword [esp + 0x18], ebx
call fcn.1003df20
mov byte [esp + 0x48], 0x28
lea ecx, [esp + 0x14]
push eax
push ecx
mov ecx, 0x100ad528
call fcn.1003de20
mov edi, dword [eax]
mov byte [esp + 0x48], 0x27
push 1
lea ecx, [esp + 0x30]
call fcn.100143b0
mov dword [edi + 0x1c], fcn.1001c1b0
mov dword [esp + 0x48], esi
push 1
lea ecx, [esp + 0x20]
call fcn.100143b0
mov dl, byte [esp + 0xf]
push ebx
lea ecx, [esp + 0x20]
mov byte [esp + 0x20], dl
call fcn.100143b0
mov edi, 0x10095cb8
mov ecx, esi
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
push ecx
push 0x10095cb8
lea ecx, [esp + 0x24]
call fcn.10014400
mov dword [esp + 0x48], 0x2a
lea eax, [esp + 0x10]
lea ecx, [esp + 0x1c]
push eax
push ecx
lea ecx, [esp + 0x34]
mov dword [esp + 0x18], ebx
call fcn.1003df20
mov byte [esp + 0x48], 0x2b
lea edx, [esp + 0x14]
push eax
push edx
mov ecx, 0x100ad528
call fcn.1003de20
mov edi, dword [eax]
mov byte [esp + 0x48], 0x2a
push 1
lea ecx, [esp + 0x30]
call fcn.100143b0
mov dword [edi + 0x1c], 0x1003c580
mov dword [esp + 0x48], esi
push 1
lea ecx, [esp + 0x20]
call fcn.100143b0
mov al, byte [esp + 0xf]
push ebx
lea ecx, [esp + 0x20]
mov byte [esp + 0x20], al
call fcn.100143b0
mov edi, 0x10095cc4
mov ecx, esi
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
push ecx
push 0x10095cc4
lea ecx, [esp + 0x24]
call fcn.10014400
mov dword [esp + 0x48], 0x2d
lea ecx, [esp + 0x10]
lea edx, [esp + 0x1c]
push ecx
push edx
lea ecx, [esp + 0x34]
mov dword [esp + 0x18], ebx
call fcn.1003df20
mov byte [esp + 0x48], 0x2e
push eax
lea eax, [esp + 0x18]
mov ecx, 0x100ad528
push eax
call fcn.1003de20
mov edi, dword [eax]
mov byte [esp + 0x48], 0x2d
push 1
lea ecx, [esp + 0x30]
call fcn.100143b0
mov dword [edi + 0x1c], fcn.1002e130
mov dword [esp + 0x48], esi
push 1
lea ecx, [esp + 0x20]
call fcn.100143b0
lea ecx, [esp + 0xf]
push ecx
push 0x1009af44
lea ecx, [esp + 0x24]
call fcn.10032cd0
mov dword [esp + 0x48], 0x30
lea edx, [esp + 0x1c]
push edx
mov ecx, 0x100ad528
call fcn.100330b0
mov dword [eax], fcn.1002f580
mov dword [esp + 0x48], esi
push 1
lea ecx, [esp + 0x20]
call fcn.100143b0
lea eax, [esp + 0xf]
lea ecx, [esp + 0x1c]
push eax
push 0x10095ca0
call fcn.10032cd0
mov dword [esp + 0x48], 0x31
lea ecx, [esp + 0x1c]
push ecx
mov ecx, 0x100ad528
call fcn.100330b0
mov dword [eax], fcn.1002c490
mov dword [esp + 0x48], esi
push 1
lea ecx, [esp + 0x20]
call fcn.100143b0
lea edx, [esp + 0xf]
lea ecx, [esp + 0x1c]
push edx
push 0x1009af34
call fcn.10032cd0
mov dword [esp + 0x48], 0x32
lea eax, [esp + 0x1c]
push eax
mov ecx, 0x100ad528
call fcn.100330b0
mov dword [eax], 0x1003c750
mov dword [esp + 0x48], esi
push 1
lea ecx, [esp + 0x20]
call fcn.100143b0
lea ecx, [esp + 0xf]
push ecx
push 0x1009af28
lea ecx, [esp + 0x24]
call fcn.10032cd0
mov dword [esp + 0x48], 0x33
lea edx, [esp + 0x1c]
push edx
mov ecx, 0x100ad528
call fcn.100330b0
mov dword [eax], 0x1003c570
mov dword [esp + 0x48], esi
push 1
lea ecx, [esp + 0x20]
call fcn.100143b0
lea eax, [esp + 0xf]
lea ecx, [esp + 0x1c]
push eax
push 0x1009af18
call fcn.10032cd0
mov dword [esp + 0x48], 0x34
lea ecx, [esp + 0x1c]
push ecx
mov ecx, 0x100ad528
call fcn.100330b0
mov dword [eax], 0x1003c560
mov dword [esp + 0x48], esi
push 1
lea ecx, [esp + 0x20]
call fcn.100143b0
lea edx, [esp + 0xf]
lea ecx, [esp + 0x1c]
push edx
push 0x1009ae40
call fcn.10032cd0
mov dword [esp + 0x48], 0x35
lea eax, [esp + 0x1c]
push eax
mov ecx, 0x100ad528
call fcn.100330b0
mov dword [eax], 0x1003b500
mov dword [esp + 0x48], esi
push 1
lea ecx, [esp + 0x20]
call fcn.100143b0
lea ecx, [esp + 0xf]
push ecx
push 0x1009af0c
lea ecx, [esp + 0x24]
call fcn.10032cd0
mov dword [esp + 0x48], 0x36
lea edx, [esp + 0x1c]
push edx
mov ecx, 0x100ad528
call fcn.100330b0
mov dword [eax], 0x10031980
mov dword [esp + 0x48], esi
push 1
lea ecx, [esp + 0x20]
call fcn.100143b0
lea eax, [esp + 0xf]
lea ecx, [esp + 0x1c]
push eax
push 0x1009aefc
call fcn.10032cd0
mov dword [esp + 0x48], 0x37
lea ecx, [esp + 0x1c]
push ecx
mov ecx, 0x100ad528
call fcn.100330b0
mov dword [eax], 0x10031130
mov dword [esp + 0x48], esi
push 1
lea ecx, [esp + 0x20]
call fcn.100143b0
lea edx, [esp + 0xf]
lea ecx, [esp + 0x1c]
push edx
push 0x10095c60
call fcn.10032cd0
mov dword [esp + 0x48], 0x38
lea eax, [esp + 0x1c]
push eax
mov ecx, 0x100ad528
call fcn.100330b0
mov dword [eax], fcn.10027220
mov dword [esp + 0x48], esi
push 1
lea ecx, [esp + 0x20]
call fcn.100143b0
lea ecx, [esp + 0xf]
push ecx
push 0x10095c68
lea ecx, [esp + 0x24]
call fcn.10032cd0
mov dword [esp + 0x48], 0x39
lea edx, [esp + 0x1c]
push edx
mov ecx, 0x100ad528
call fcn.100330b0
mov dword [eax], fcn.1001b0d0
mov dword [esp + 0x48], esi
push 1
lea ecx, [esp + 0x20]
call fcn.100143b0
mov ecx, dword [esp + 0x40]
pop edi
pop esi
pop ebx
mov dword fs:[0], ecx
add esp, 0x40
ret