Function at 0x43e7c0
Capabilities:
Allocate thread local storage
Hash data using fnv

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
sub esp, 0x10c
mov eax, dword [0x4b1810]
xor eax, esp
mov dword [esp + 0x108], eax
push ebx
push esi
mov esi, dword [sym.imp.KERNEL32.dll_InitializeCriticalSectionAndSpinCount]
push edi
mov edi, ecx
mov dword [esp + 0x14], 0
push 0x7d0
push edi
call esi
push 0x7d0
lea eax, [edi + 0x18]
push eax
call esi
mov dword [edi + 0x30], 0
lea ecx, [edi + 0x68]
mov dword [edi + 0x34], 0
sub esp, 8
mov dword [edi + 0x38], 0
mov dword [edi + 0x3c], 0
mov byte [edi + 0x40], 0
mov dword [edi + 0x44], 0
mov dword [edi + 0x48], 0
mov dword [edi + 0x4c], 0
mov dword [edi + 0x64], 0xf
mov dword [edi + 0x60], 0
mov byte [edi + 0x50], 0
call fcn.00426260
sub esp, 8
mov dword [edi + 0x88], 0
lea ecx, [edi + 0x8c]
call fcn.00442500
sub esp, 8
lea ecx, [edi + 0xac]
call fcn.00426260
sub esp, 8
lea ecx, [edi + 0xcc]
call fcn.00442590
sub esp, 8
lea ecx, [edi + 0xec]
call fcn.00426260
mov dword [edi + 0x110], 0
lea ecx, [esp + 0xcc]
mov dword [edi + 0x114], 0
mov dword [edi + 0x118], 0
mov dword [edi + 0x11c], 0
mov dword [edi + 0x120], 0
mov dword [edi + 0x128], 0
mov dword [edi + 0x12c], 0
mov dword [edi + 0x130], 0
mov dword [edi + 0x134], 0
mov dword [edi + 0x14c], 0xf
mov dword [edi + 0x148], 0
mov byte [edi + 0x138], 0
mov dword [edi + 0x150], 0
mov dword [edi + 0x168], 0xf
mov dword [edi + 0x164], 0
mov byte [edi + 0x154], 0
mov dword [edi + 0x16c], 1
push 0xe
mov dword [edi + 0x170], 0
push 0x414038
mov dword [edi + 0x174], 0
mov dword [edi + 0x178], 0
mov dword [esp + 0xe8], 0xf
mov dword [esp + 0xe4], 0
mov byte [esp + 0xd4], 0
call fcn.0041a730
lea eax, [esp + 0xcc]
push eax
lea ecx, [edi + 0x17c]
call fcn.00441090
cmp dword [esp + 0xe0], 0x10
jb 0x43e9b3
push dword [esp + 0xcc]
call fcn.0048db5b
add esp, 4
push 0xe
push 0x414038
lea ecx, [esp + 0xd4]
mov dword [esp + 0xe8], 0xf
mov dword [esp + 0xe4], 0
mov byte [esp + 0xd4], 0
call fcn.0041a730
lea eax, [esp + 0xcc]
push eax
lea ecx, [edi + 0x1ac]
call fcn.00441090
cmp dword [esp + 0xe0], 0x10
jb 0x43ea10
push dword [esp + 0xcc]
call fcn.0048db5b
add esp, 4
mov esi, dword [sym.imp.KERNEL32.dll_TlsAlloc]
mov dword [edi + 0x1dc], 0
call esi
mov dword [edi + 0x1dc], eax
cmp eax, 0xffffffff
jne 0x43ea3b
cmp byte [0x4b82e4], 0
jne 0x43ed8f
int3
mov dword [edi + 0x1e0], 0
call esi
mov dword [edi + 0x1e0], eax
cmp eax, 0xffffffff
jne 0x43ea60
cmp byte [0x4b82e4], 0
jne 0x43ed96
int3
mov dword [edi + 0x1e4], 0
call esi
mov dword [edi + 0x1e4], eax
cmp eax, 0xffffffff
jne 0x43ea85
cmp byte [0x4b82e4], 0
jne 0x43ed9d
int3
sub esp, 8
lea ecx, [edi + 0x1e8]
call fcn.00442820
mov dword [edi + 0x208], 0
mov dword [edi + 0x20c], 0
mov dword [edi + 0x210], 0
mov dword [edi + 0x214], 0
mov dword [edi + 0x22c], 0xf
mov dword [edi + 0x228], 0
mov byte [edi + 0x218], 0
mov dword [edi + 0x230], 0
mov dword [edi + 0x234], 0
mov byte [edi + 0x238], 0
call dword [sym.imp.KERNEL32.dll_GetCurrentProcessId]
mov dword [edi + 0x120], eax
push 0x100
cdq
push 0x1b3
xor edx, 0xcbf29ce4
xor eax, 0x84222325
push edx
push eax
call fcn.0048ed60
mov esi, dword [0x4b714c]
mov dword [edi + 0x118], eax
mov dword [edi + 0x11c], edx
test esi, esi
je 0x43ed58
push 0x10
push 0x414050
lea ecx, [esp + 0xd4]
mov dword [esp + 0xe8], 0xf
mov dword [esp + 0xe4], 0
mov byte [esp + 0xd4], 0
call fcn.0041a730
lea eax, [esp + 0xcc]
push eax
lea ecx, [esi + 0xc]
mov esi, dword [ecx]
lea eax, [esp + 0x10]
push eax
call fcn.004197e0
cmp dword [eax], esi
setne bl
cmp dword [esp + 0xe0], 0x10
jb 0x43eb9a
push dword [esp + 0xcc]
call fcn.0048db5b
add esp, 4
test bl, bl
je 0x43ed58
push 0x10
push 0x414050
lea ecx, [esp + 0xec]
mov dword [esp + 0x100], 0xf
mov dword [esp + 0xfc], 0
mov byte [esp + 0xec], 0
call fcn.0041a730
mov ecx, dword [0x4b714c]
lea eax, [esp + 0xe4]
push eax
lea eax, [esp + 0xd0]
push eax
call fcn.00417ff0
cmp dword [esp + 0xf8], 0x10
jb 0x43ec07
push dword [esp + 0xe4]
call fcn.0048db5b
add esp, 4
cmp dword [esp + 0xdc], 0
lea ecx, [esp + 0xcc]
jne 0x43ec26
push 0xa
push 0x413b60
call fcn.0041a730
jmp 0x43ec45
push 1
push 0x413994
call fcn.004199c0
push 0xa
push 0x413b60
lea ecx, [esp + 0xd4]
call fcn.004199c0
cmp dword [0x4b7158], 2
jg 0x43ecf0
mov ebx, 1
mov dword [esp + 0x18], 2
push ebx
push 2
lea ecx, [esp + 0x28]
call fcn.0041ecd0
mov dword [esp + 0xbc], 0x413c10
mov dword [esp + 0xc0], 0x4e2
call dword [sym.imp.KERNEL32.dll_GetLastError]
push 0x4e2
push 0x413c10
lea ecx, [esp + 0x20]
mov dword [esp + 0xcc], eax
call fcn.0041f9c0
push 0x413d14
lea eax, [esp + 0xd0]
push eax
push 0x413cfc
push 0x414050
lea eax, [esp + 0x30]
push 0x413d18
push eax
call fcn.0041b6f0
add esp, 8
push eax
call fcn.0041b6f0
add esp, 8
push eax
call fcn.0041b6f0
add esp, 8
push eax
call fcn.0041b470
add esp, 8
push eax
call fcn.0041b6f0
add esp, 8
jmp 0x43ecf4
mov ebx, dword [esp + 0x14]
test bl, 1
je 0x43ed02
lea ecx, [esp + 0x18]
call fcn.0041f740
lea eax, [esp + 0xc]
mov dword [esp + 0xc], 2
push eax
push ecx
lea eax, [esp + 0xd4]
mov word [esp + 0x18], 0
push eax
lea ecx, [esp + 0xf0]
call fcn.00441090
push eax
mov ecx, edi
call fcn.0043f4e0
lea ecx, [esp + 0xe4]
call fcn.004412d0
cmp dword [esp + 0xe0], 0x10
jb 0x43ed58
push dword [esp + 0xcc]
call fcn.0048db5b
add esp, 4
mov ecx, edi
call fcn.0043f8f0
mov ecx, dword [edi + 0x38]
mov esi, eax
mov dword [edi + 0x38], 0
test ecx, ecx
je 0x43ed75
mov edx, dword [ecx]
push 1
call dword [edx]
mov ecx, dword [esp + 0x114]
mov eax, edi
mov dword [edi + 0x38], esi
pop edi
pop esi
pop ebx
xor ecx, esp
call fcn.004918a1
mov esp, ebp
pop ebp
ret
push 1
call fcn.0048f00d
push 1
call fcn.0048f00d
push 1
call fcn.0048f00d
int3