joyce8/EMBER2024-capa huggingface dataset:
Function at 0x1000bd40
Capabilities:
Allocate thread local storage

Disassembly:
sub esp, 0xc
push esi
mov esi, dword [esp + 0x18]
lea eax, [esp + 4]
push esi
push dword [esp + 0x18]
push eax
call fcn.100b4290
add esp, 0xc
cmp dword [esp + 4], 0x3000
je 0x1000bda4
mov eax, dword [section..data]
cmp eax, 0xffffffff
jne 0x1000bd78
call sub.KERNEL32.dll_TlsAlloc
mov dword [section..data], eax
push eax
call fcn.1002e140
add esp, 4
test eax, eax
jne 0x1000bd8a
call fcn.100079f0
mov ecx, dword [esp + 4]
xor esi, esi
mov dword [eax], ecx
lea ecx, [esp + 0xc]
call fcn.100016b0
mov eax, esi
pop esi
add esp, 0xc
ret 8
mov ecx, dword [esp + 0x14]
push esi
call fcn.10026e60
lea ecx, [esp + 0xc]
mov esi, 1
call fcn.100016b0
mov eax, esi
pop esi
add esp, 0xc
ret 8

Function at 0x1000bdd0
Capabilities:
Allocate thread local storage

Disassembly:
sub esp, 0xc
push esi
mov esi, dword [esp + 0x18]
lea eax, [esp + 4]
push esi
push dword [esp + 0x18]
push eax
call fcn.100b4430
add esp, 0xc
cmp dword [esp + 4], 0x3000
je 0x1000be1e
mov eax, dword [section..data]
cmp eax, 0xffffffff
jne 0x1000be08
call sub.KERNEL32.dll_TlsAlloc
mov dword [section..data], eax
push eax
call fcn.1002e140
add esp, 4
test eax, eax
jne 0x1000be1a
call fcn.100079f0
xor esi, esi
jmp 0x1000be53
mov ecx, dword [esp + 0x14]
push esi
call fcn.10026ec0
mov eax, dword [section..data]
cmp eax, 0xffffffff
jne 0x1000be3c
call sub.KERNEL32.dll_TlsAlloc
mov dword [section..data], eax
push eax
call fcn.1002e140
add esp, 4
test eax, eax
jne 0x1000be4e
call fcn.100079f0
mov esi, 1
mov ecx, dword [esp + 4]
mov dword [eax], ecx
lea ecx, [esp + 0xc]
call fcn.100016b0
mov eax, esi
pop esi
add esp, 0xc
ret 8

Function at 0x1000be70
Capabilities:
Allocate thread local storage

Disassembly:
sub esp, 0xc
push esi
mov esi, dword [esp + 0x18]
lea eax, [esp + 4]
push esi
push dword [esp + 0x18]
push eax
call fcn.100b8a20
add esp, 0xc
cmp dword [esp + 4], 0x3000
je 0x1000bed4
mov eax, dword [section..data]
cmp eax, 0xffffffff
jne 0x1000bea8
call sub.KERNEL32.dll_TlsAlloc
mov dword [section..data], eax
push eax
call fcn.1002e140
add esp, 4
test eax, eax
jne 0x1000beba
call fcn.100079f0
mov ecx, dword [esp + 4]
xor esi, esi
mov dword [eax], ecx
lea ecx, [esp + 0xc]
call fcn.100016b0
mov eax, esi
pop esi
add esp, 0xc
ret 8
test esi, esi
jne 0x1000bf18
mov eax, dword [section..data]
cmp eax, 0xffffffff
jne 0x1000beec
call sub.KERNEL32.dll_TlsAlloc
mov dword [section..data], eax
push eax
call fcn.1002e140
add esp, 4
test eax, eax
jne 0x1000befe
call fcn.100079f0
lea ecx, [esp + 0xc]
mov dword [eax], 0x300d
xor esi, esi
call fcn.100016b0
mov eax, esi
pop esi
add esp, 0xc
ret 8
mov ecx, dword [esp + 0x14]
push esi
call fcn.10026ef0
mov eax, dword [section..data]
cmp eax, 0xffffffff
jne 0x1000bf36
call sub.KERNEL32.dll_TlsAlloc
mov dword [section..data], eax
push eax
call fcn.1002e140
add esp, 4
test eax, eax
jne 0x1000bf48
call fcn.100079f0
lea ecx, [esp + 0xc]
mov dword [eax], 0x3000
mov esi, 1
call fcn.100016b0
mov eax, esi
pop esi
add esp, 0xc
ret 8
Function at 0x1000c7e0
Capabilities:
Allocate thread local storage

Disassembly:
sub esp, 0xc
push esi
call fcn.10012a90
mov esi, eax
test esi, esi
je 0x1000c861
mov eax, dword [section..data]
cmp eax, 0xffffffff
jne 0x1000c803
call sub.KERNEL32.dll_TlsAlloc
mov dword [section..data], eax
push eax
call fcn.1002e140
add esp, 4
test eax, eax
jne 0x1000c815
call fcn.100079f0
push dword [esp + 0x18]
push dword [esp + 0x18]
push dword [eax + 8]
push esi
call fcn.100b5560
add esp, 0x10
test al, al
je 0x1000c861
mov ecx, dword [esi + 0x10]
call fcn.10057910
push dword [esp + 0x18]
lea ecx, [esp + 8]
push ecx
mov ecx, eax
call fcn.10158c40
cmp dword [esp + 4], 0
je 0x1000c858
lea eax, [esp + 4]
mov ecx, esi
push eax
call fcn.10125940
lea ecx, [esp + 0xc]
call fcn.100016b0
pop esi
add esp, 0xc
ret 8

Function at 0x1000c870
Capabilities:
Allocate thread local storage

Disassembly:
sub esp, 0xc
push esi
call fcn.10012a90
mov esi, eax
test esi, esi
je 0x1000c8f5
mov eax, dword [section..data]
cmp eax, 0xffffffff
jne 0x1000c893
call sub.KERNEL32.dll_TlsAlloc
mov dword [section..data], eax
push eax
call fcn.1002e140
add esp, 4
test eax, eax
jne 0x1000c8a5
call fcn.100079f0
push edi
push dword [esp + 0x1c]
mov edi, dword [esp + 0x1c]
push edi
push dword [eax + 8]
push esi
call fcn.100b56d0
add esp, 0x10
test al, al
je 0x1000c8f4
push edi
mov ecx, esi
call fcn.10125800
push dword [esp + 0x1c]
lea ecx, [esp + 0xc]
push edi
push ecx
mov ecx, eax
call fcn.101578e0
cmp dword [esp + 8], 0
je 0x1000c8eb
lea eax, [esp + 8]
mov ecx, esi
push eax
call fcn.10125940
lea ecx, [esp + 0x10]
call fcn.100016b0
pop edi
pop esi
add esp, 0xc
ret 8

Function at 0x1000e640
Capabilities:
Allocate thread local storage

Disassembly:
sub esp, 0xc
push esi
mov esi, dword [esp + 0x18]
lea eax, [esp + 4]
push esi
push dword [esp + 0x18]
push eax
call fcn.100b22f0
add esp, 0xc
cmp dword [esp + 4], 0x3000
je 0x1000e6a4
mov eax, dword [section..data]
cmp eax, 0xffffffff
jne 0x1000e678
call sub.KERNEL32.dll_TlsAlloc
mov dword [section..data], eax
push eax
call fcn.1002e140
add esp, 4
test eax, eax
jne 0x1000e68a
call fcn.100079f0
mov ecx, dword [esp + 4]
xor esi, esi
mov dword [eax], ecx
lea ecx, [esp + 0xc]
call fcn.100016b0
mov eax, esi
pop esi
add esp, 0xc
ret 0x10
push dword [esp + 0x20]
mov ecx, dword [esp + 0x18]
push dword [esp + 0x20]
push esi
call fcn.10027350
test al, al
mov eax, dword [section..data]
jne 0x1000e6fa
cmp eax, 0xffffffff
jne 0x1000e6ce
call sub.KERNEL32.dll_TlsAlloc
mov dword [section..data], eax
push eax
call fcn.1002e140
add esp, 4
test eax, eax
jne 0x1000e6e0
call fcn.100079f0
lea ecx, [esp + 0xc]
mov dword [eax], 0x3004
xor esi, esi
call fcn.100016b0
mov eax, esi
pop esi
add esp, 0xc
ret 0x10
cmp eax, 0xffffffff
jne 0x1000e709
call sub.KERNEL32.dll_TlsAlloc
mov dword [section..data], eax
push eax
call fcn.1002e140
add esp, 4
test eax, eax
jne 0x1000e71b
call fcn.100079f0
lea ecx, [esp + 0xc]
mov dword [eax], 0x3000
mov esi, 1
call fcn.100016b0
mov eax, esi
pop esi
add esp, 0xc
ret 0x10
Function at 0x1000e740
Capabilities:
Allocate thread local storage

Disassembly:
sub esp, 0x20
push ebp
push esi
mov esi, dword [esp + 0x2c]
lea eax, [esp + 0x1c]
push edi
mov edi, dword [esp + 0x38]
push esi
push eax
call fcn.100b4690
add esp, 8
cmp dword [esp + 0x20], 0x3000
je 0x1000e7a8
mov eax, dword [section..data]
cmp eax, 0xffffffff
jne 0x1000e77a
call sub.KERNEL32.dll_TlsAlloc
mov dword [section..data], eax
push eax
call fcn.1002e140
add esp, 4
test eax, eax
jne 0x1000e78c
call fcn.100079f0
mov ecx, dword [esp + 0x20]
xor esi, esi
mov dword [eax], ecx
lea ecx, [esp + 0x28]
call fcn.100016b0
pop edi
mov eax, esi
pop esi
pop ebp
add esp, 0x20
ret 0x10
mov ebp, dword [esp + 0x3c]
test ebp, ebp
jne 0x1000e7f2
mov eax, dword [section..data]
cmp eax, 0xffffffff
jne 0x1000e7c4
call sub.KERNEL32.dll_TlsAlloc
mov dword [section..data], eax
push eax
call fcn.1002e140
add esp, 4
test eax, eax
jne 0x1000e7d6
call fcn.100079f0
lea ecx, [esp + 0x28]
mov dword [eax], 0x300c
xor esi, esi
call fcn.100016b0
pop edi
mov eax, esi
pop esi
pop ebp
add esp, 0x20
ret 0x10
push ebx
lea ecx, [esp + 0x10]
call fcn.10112130
push eax
lea eax, [esp + 0x1c]
mov ecx, esi
push eax
call fcn.10027680
lea ecx, [esp + 0x10]
call fcn.10001710
mov esi, dword [esp + 0x38]
test esi, esi
je 0x1000e860
mov eax, dword [esp + 0x1c]
lea ecx, [esp + 0x18]
sub eax, dword [esp + 0x18]
sar eax, 2
cmp edi, eax
cmovb eax, edi
push eax
call fcn.1001b350
mov edx, dword [esp + 0x1c]
mov ecx, edx
mov ebx, dword [esp + 0x18]
sub ecx, ebx
sar ecx, 2
test ecx, ecx
je 0x1000e868
mov edi, ebx
sub edi, esi
nop dword [eax + eax]
mov eax, dword [edi + esi]
lea esi, [esi + 4]
mov dword [esi - 4], eax
sub ecx, 1
jne 0x1000e850
jmp 0x1000e868
mov edx, dword [esp + 0x1c]
mov ebx, dword [esp + 0x18]
mov eax, dword [section..data]
sub edx, ebx
sar edx, 2
mov dword [ebp], edx
pop ebx
cmp eax, 0xffffffff
jne 0x1000e885
call sub.KERNEL32.dll_TlsAlloc
mov dword [section..data], eax
push eax
call fcn.1002e140
add esp, 4
test eax, eax
jne 0x1000e897
call fcn.100079f0
mov dword [eax], 0x3000
mov esi, 1
mov edx, dword [esp + 0x14]
test edx, edx
je 0x1000e8f5
mov ecx, dword [esp + 0x1c]
mov eax, edx
sub ecx, edx
and ecx, 0xfffffffc
cmp ecx, 0x1000
jb 0x1000e8d3
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x1000e8d3
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push ecx
push edx
call fcn.10174919
add esp, 8
mov dword [esp + 0x14], 0
mov dword [esp + 0x18], 0
mov dword [esp + 0x1c], 0
lea ecx, [esp + 0x28]
call fcn.100016b0
pop edi
mov eax, esi
pop esi
pop ebp
add esp, 0x20
ret 0x10
Function at 0x1000e910
Capabilities:
Allocate thread local storage

Disassembly:
mov eax, dword [section..data]
cmp eax, 0xffffffff
jne 0x1000e924
call sub.KERNEL32.dll_TlsAlloc
mov dword [section..data], eax
push eax
call fcn.1002e140
add esp, 4
test eax, eax
jne 0x1000e936
call fcn.100079f0
push esi
mov esi, dword [eax + 0x14]
mov eax, dword [section..data]
cmp eax, 0xffffffff
jne 0x1000e94e
call sub.KERNEL32.dll_TlsAlloc
mov dword [section..data], eax
push eax
call fcn.1002e140
add esp, 4
test eax, eax
jne 0x1000e960
call fcn.100079f0
mov dword [eax], 0x3000
mov eax, esi
pop esi
ret

Function at 0x1000e970
Capabilities:
Allocate thread local storage

Disassembly:
mov eax, dword [section..data]
cmp eax, 0xffffffff
jne 0x1000e984
call sub.KERNEL32.dll_TlsAlloc
mov dword [section..data], eax
push eax
call fcn.1002e140
add esp, 4
test eax, eax
jne 0x1000e996
call fcn.100079f0
push esi
mov esi, dword [eax + 8]
mov eax, dword [section..data]
cmp eax, 0xffffffff
jne 0x1000e9ae
call sub.KERNEL32.dll_TlsAlloc
mov dword [section..data], eax
push eax
call fcn.1002e140
add esp, 4
test eax, eax
jne 0x1000e9c0
call fcn.100079f0
mov dword [eax], 0x3000
mov eax, esi
pop esi
ret

Function at 0x1000e9d0
Capabilities:
Allocate thread local storage

Disassembly:
mov eax, dword [esp + 4]
cmp eax, 0x305a
jne 0x1000ea33
mov eax, dword [section..data]
cmp eax, 0xffffffff
jne 0x1000e9ef
call sub.KERNEL32.dll_TlsAlloc
mov dword [section..data], eax
push eax
call fcn.1002e140
add esp, 4
test eax, eax
jne 0x1000ea01
call fcn.100079f0
mov dword [eax], 0x3000
mov eax, dword [section..data]
cmp eax, 0xffffffff
jne 0x1000ea1b
call sub.KERNEL32.dll_TlsAlloc
mov dword [section..data], eax
push eax
call fcn.1002e140
add esp, 4
test eax, eax
jne 0x1000ea2d
call fcn.100079f0
mov eax, dword [eax + 0x10]
ret 4
cmp eax, 0x3059
mov eax, dword [section..data]
jne 0x1000ea92
cmp eax, 0xffffffff
jne 0x1000ea4e
call sub.KERNEL32.dll_TlsAlloc
mov dword [section..data], eax
push eax
call fcn.1002e140
add esp, 4
test eax, eax
jne 0x1000ea60
call fcn.100079f0
mov dword [eax], 0x3000
mov eax, dword [section..data]
cmp eax, 0xffffffff
jne 0x1000ea7a
call sub.KERNEL32.dll_TlsAlloc
mov dword [section..data], eax
push eax
call fcn.1002e140
add esp, 4
test eax, eax
jne 0x1000ea8c
call fcn.100079f0
mov eax, dword [eax + 0xc]
ret 4
cmp eax, 0xffffffff
jne 0x1000eaa1
call sub.KERNEL32.dll_TlsAlloc
mov dword [section..data], eax
push eax
call fcn.1002e140
add esp, 4
test eax, eax
jne 0x1000eab3
call fcn.100079f0
mov dword [eax], 0x300c
xor eax, eax
ret 4

Function at 0x1000eb60
Capabilities:
Allocate thread local storage

Disassembly:
mov eax, dword [section..data]
cmp eax, 0xffffffff
jne 0x1000eb74
call sub.KERNEL32.dll_TlsAlloc
mov dword [section..data], eax
push eax
call fcn.1002e140
add esp, 4
test eax, eax
jne 0x1000eb86
call fcn.100079f0
push esi
mov esi, dword [eax]
mov eax, dword [section..data]
cmp eax, 0xffffffff
jne 0x1000eb9d
call sub.KERNEL32.dll_TlsAlloc
mov dword [section..data], eax
push eax
call fcn.1002e140
add esp, 4
test eax, eax
jne 0x1000ebaf
call fcn.100079f0
mov dword [eax], 0x3000
mov eax, esi
pop esi
ret
Function at 0x1000ebc0
Capabilities:
Allocate thread local storage

Disassembly:
mov eax, dword [section..data]
cmp eax, 0xffffffff
jne 0x1000ebd4
call sub.KERNEL32.dll_TlsAlloc
mov dword [section..data], eax
push eax
call fcn.1002e140
add esp, 4
test eax, eax
jne 0x1000ebe6
call fcn.100079f0
mov ecx, dword [eax + 0x14]
test ecx, ecx
jne 0x101207e0
xor eax, eax
ret
cmp dword [ecx + 0x74c], 0
jne 0x101207ec
xor eax, eax
ret
mov edx, dword [ecx + 0x748]
add ecx, 0x748
push esi
mov edx, dword [edx]
push edx
mov esi, dword [edx + 0x10]
call fcn.10025fe0
push 0x14
push eax
call fcn.10174919
add esp, 8
mov eax, esi
pop esi
ret

Function at 0x1000f530
Capabilities:
Allocate thread local storage

Disassembly:
mov eax, dword [section..data]
cmp eax, 0xffffffff
jne 0x1000f544
call sub.KERNEL32.dll_TlsAlloc
mov dword [section..data], eax
push eax
call fcn.1002e140
add esp, 4
test eax, eax
jne 0x1000f556
call fcn.100079f0
mov eax, dword [eax + 0x14]
ret

Function at 0x1000f560
Capabilities:
Allocate thread local storage

Disassembly:
mov eax, dword [section..data]
cmp eax, 0xffffffff
jne 0x1000f574
call sub.KERNEL32.dll_TlsAlloc
mov dword [section..data], eax
push eax
call fcn.1002e140
add esp, 4
test eax, eax
jne 0x1000f586
call fcn.100079f0
mov ecx, dword [eax + 0x14]
test ecx, ecx
jne 0x101222e0
xor eax, eax
ret
push esi
mov esi, ecx
cmp dword [esi + 0x758], 0x8261
mov al, byte [esi + 0x751]
jne 0x10122313
test al, al
jne 0x1012230f
mov ecx, dword [esi + 0x2c]
mov eax, dword [ecx]
call dword [eax + 0x8c]
test eax, eax
je 0x1012230f
mov byte [esi + 0x751], 1
xor eax, eax
pop esi
ret
test al, al
jne 0x10122335
mov ecx, dword [esi + 0x2c]
mov eax, dword [ecx]
call dword [eax + 0x8c]
mov dword [esi + 0x754], eax
test eax, eax
je 0x1012234f
mov byte [esi + 0x751], 1
pop esi
ret
cmp dword [esi + 0x754], 0
je 0x1012234f
mov ecx, dword [esi + 0x2c]
mov eax, dword [ecx]
call dword [eax + 0x8c]
mov dword [esi + 0x754], eax
mov eax, dword [esi + 0x754]
pop esi
ret
Function at 0x10012a90
Capabilities:
Allocate thread local storage

Disassembly:
mov eax, dword [section..data]
sub esp, 0xc
cmp eax, 0xffffffff
jne 0x10012aa7
call sub.KERNEL32.dll_TlsAlloc
mov dword [section..data], eax
push eax
call fcn.1002e140
add esp, 4
test eax, eax
jne 0x10012ab9
call fcn.100079f0
push esi
mov esi, dword [eax + 0x14]
test esi, esi
je 0x10012af4
mov ecx, esi
call fcn.10126490
test al, al
je 0x10012afb
push str.Context_has_been_lost.
lea eax, [esp + 8]
push 0x505
push eax
call fcn.101314c0
add esp, 0xc
mov ecx, esi
push eax
call fcn.10125940
lea ecx, [esp + 0xc]
call fcn.100016b0
xor eax, eax
pop esi
add esp, 0xc
ret
mov eax, esi
pop esi
add esp, 0xc
ret

Function at 0x10013530
Capabilities:
Allocate thread local storage

Disassembly:
sub esp, 0x18
push esi
mov esi, dword [esp + 0x20]
test esi, esi
je 0x100135e0
push esi
call fcn.100280c0
add esp, 4
test al, al
je 0x100135e0
lea eax, [esp + 0x10]
mov ecx, esi
push eax
call fcn.10027770
cmp dword [esp + 0x10], 0x3000
je 0x10013588
lea eax, [esp + 0x10]
push eax
call fcn.10016980
add esp, 4
lea ecx, [esp + 0x18]
xor esi, esi
call fcn.100016b0
mov eax, esi
pop esi
add esp, 0x18
ret 0xc
mov eax, dword [esp + 0x24]
test eax, eax
je 0x10013596
mov dword [eax], 1
mov eax, dword [esp + 0x28]
test eax, eax
je 0x100135a4
mov dword [eax], 4
lea eax, [esp + 4]
mov dword [esp + 4], 0x3000
push eax
mov dword [esp + 0xc], 0
mov dword [esp + 0x10], 0
call fcn.10016980
add esp, 4
lea ecx, [esp + 0x18]
mov esi, 1
call fcn.100016b0
mov eax, esi
pop esi
add esp, 0x18
ret 0xc
mov eax, dword [section..data]
cmp eax, 0xffffffff
jne 0x100135f4
call sub.KERNEL32.dll_TlsAlloc
mov dword [section..data], eax
push eax
call fcn.1002e140
add esp, 4
test eax, eax
jne 0x10013606
call fcn.100079f0
mov dword [eax], 0x3008
xor eax, eax
pop esi
add esp, 0x18
ret 0xc

Function at 0x10013a80
Capabilities:
Hash data using fnv

Disassembly:
sub esp, 0xc
push esi
call fcn.10012a90
test eax, eax
je 0x10013b11
cmp dword [eax + 4], 3
jge 0x10013b20
lea ecx, [esp + 4]
mov dword [esp + 4], 0x502
push ecx
mov ecx, eax
mov dword [esp + 0xc], 0x502
mov dword [esp + 0x10], 0
call fcn.10125940
mov esi, dword [esp + 0xc]
test esi, esi
je 0x10013b11
mov ecx, dword [esi + 0x14]
cmp ecx, 0x10
jb 0x10013af6
mov eax, dword [esi]
inc ecx
cmp ecx, 0x1000
jb 0x10013aec
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10013b1a
mov eax, edx
push ecx
push eax
call fcn.10174919
add esp, 8
push esi
mov dword [esi + 0x10], 0
mov dword [esi + 0x14], 0xf
mov byte [esi], 0
call dword [sym.imp.mozglue.dll_free]
add esp, 4
xor al, al
pop esi
add esp, 0xc
ret 4
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
pop esi
add esp, 0xc
mov ecx, eax
jmp fcn.101264c0
Function at 0x10014a20
Capabilities:
Allocate thread local storage

Disassembly:
sub esp, 0x18
push esi
mov esi, dword [esp + 0x28]
test esi, esi
js 0x10014b8f
cmp dword [esp + 0x2c], 0
jl 0x10014b8f
cmp dword [esp + 0x30], 0
jl 0x10014b8f
cmp dword [esp + 0x34], 0
jl 0x10014b8f
push ebx
mov ebx, dword [esp + 0x28]
lea eax, [esp + 8]
push edi
mov edi, dword [esp + 0x28]
push ebx
push edi
push eax
call fcn.100b8a20
add esp, 0xc
cmp dword [esp + 0xc], 0x3000
je 0x10014a97
lea eax, [esp + 0xc]
push eax
call fcn.10016980
add esp, 4
lea ecx, [esp + 0x14]
xor esi, esi
call fcn.100016b0
pop edi
pop ebx
mov eax, esi
pop esi
add esp, 0x18
ret 0x18
mov ecx, edi
call fcn.10028bd0
test al, al
je 0x10014aac
mov dword [esp + 0x18], 0x300e
jmp 0x10014ab8
test ebx, ebx
jne 0x10014aeb
mov dword [esp + 0x18], 0x300d
lea eax, [esp + 0x18]
mov dword [esp + 0x20], 0
push eax
mov dword [esp + 0x20], 0
call fcn.10016980
add esp, 4
lea ecx, [esp + 0x14]
xor esi, esi
call fcn.100016b0
pop edi
pop ebx
mov eax, esi
pop esi
add esp, 0x18
ret 0x18
mov ecx, edi
call fcn.100276c0
cmp byte [eax + 7], 0
lea eax, [esp + 0x18]
je 0x10014b55
push dword [esp + 0x3c]
mov ecx, ebx
push dword [esp + 0x3c]
push dword [esp + 0x3c]
push esi
push eax
call fcn.10156d70
push eax
lea ecx, [esp + 0x10]
call fcn.10001760
lea ecx, [esp + 0x20]
call fcn.100016b0
cmp dword [esp + 0xc], 0x3000
je 0x10014b51
lea eax, [esp + 0xc]
push eax
call fcn.10016980
add esp, 4
lea ecx, [esp + 0x14]
xor esi, esi
call fcn.100016b0
pop edi
pop ebx
mov eax, esi
pop esi
add esp, 0x18
ret 0x18
lea eax, [esp + 0x18]
push eax
mov dword [esp + 0x1c], 0x3000
mov dword [esp + 0x20], 0
mov dword [esp + 0x24], 0
call fcn.10016980
add esp, 4
lea ecx, [esp + 0x14]
mov esi, 1
call fcn.100016b0
pop edi
pop ebx
mov eax, esi
pop esi
add esp, 0x18
ret 0x18
mov eax, dword [section..data]
cmp eax, 0xffffffff
jne 0x10014ba3
call sub.KERNEL32.dll_TlsAlloc
mov dword [section..data], eax
push eax
call fcn.1002e140
add esp, 4
test eax, eax
jne 0x10014bb5
call fcn.100079f0
mov dword [eax], 0x300c
xor eax, eax
pop esi
add esp, 0x18
ret 0x18

Function at 0x10014f30
Capabilities:
Allocate thread local storage

Disassembly:
mov eax, dword [section..data]
cmp eax, 0xffffffff
jne 0x10014f44
call sub.KERNEL32.dll_TlsAlloc
mov dword [section..data], eax
push eax
call fcn.1002e140
add esp, 4
test eax, eax
jne 0x10014f56
call fcn.100079f0
push esi
mov esi, dword [eax + 4]
mov eax, dword [section..data]
cmp eax, 0xffffffff
jne 0x10014f6e
call sub.KERNEL32.dll_TlsAlloc
mov dword [section..data], eax
push eax
call fcn.1002e140
add esp, 4
test eax, eax
jne 0x10014f80
call fcn.100079f0
mov dword [eax], 0x3000
mov eax, esi
pop esi
ret
Function at 0x10014f90
Capabilities:
Allocate thread local storage

Disassembly:
sub esp, 0xc
push esi
mov esi, dword [esp + 0x18]
lea eax, [esp + 4]
push esi
push dword [esp + 0x18]
push eax
call fcn.100b23d0
add esp, 0xc
cmp dword [esp + 4], 0x3000
je 0x10014ff4
mov eax, dword [section..data]
cmp eax, 0xffffffff
jne 0x10014fc8
call sub.KERNEL32.dll_TlsAlloc
mov dword [section..data], eax
push eax
call fcn.1002e140
add esp, 4
test eax, eax
jne 0x10014fda
call fcn.100079f0
mov ecx, dword [esp + 4]
xor esi, esi
mov dword [eax], ecx
lea ecx, [esp + 0xc]
call fcn.100016b0
mov eax, esi
pop esi
add esp, 0xc
ret 0x10
mov eax, dword [esp + 0x1c]
add eax, 0xffffcfd8
cmp eax, 0x70
ja case.0x10015009.12329
movzx eax, byte [eax + 0x100150d0]
jmp dword [eax*4 + 0x100150bc]
mov ecx, esi
call fcn.101207b0
mov ecx, dword [eax + 0x34]
jmp 0x10015033
mov ecx, esi
call fcn.10120720
jmp 0x10015031
mov ecx, dword [esi + 4]
jmp 0x10015033
mov ecx, esi
call fcn.10122250
mov ecx, eax
mov eax, dword [esp + 0x20]
mov dword [eax], ecx
mov eax, dword [section..data]
cmp eax, 0xffffffff
jne 0x1001504d
call sub.KERNEL32.dll_TlsAlloc
mov dword [section..data], eax
push eax
call fcn.1002e140
add esp, 4
test eax, eax
jne 0x1001505f
call fcn.100079f0
lea ecx, [esp + 0xc]
mov dword [eax], 0x3000
mov esi, 1
call fcn.100016b0
mov eax, esi
pop esi
add esp, 0xc
ret 0x10
mov eax, dword [section..data]
cmp eax, 0xffffffff
jne 0x10015090
call sub.KERNEL32.dll_TlsAlloc
mov dword [section..data], eax
push eax
call fcn.1002e140
add esp, 4
test eax, eax
jne 0x100150a2
call fcn.100079f0
lea ecx, [esp + 0xc]
mov dword [eax], 0x3004
xor esi, esi
call fcn.100016b0
mov eax, esi
pop esi
add esp, 0xc
ret 0x10
Function at 0x100151b0
Capabilities:
Allocate thread local storage

Disassembly:
sub esp, 0x18
push edi
mov edi, dword [esp + 0x20]
test edi, edi
je 0x10015314
push edi
call fcn.10133230
add esp, 4
test al, al
je 0x10015314
mov ecx, dword [edi + 4]
test ecx, ecx
je 0x10015212
call fcn.100276c0
cmp byte [eax + 9], 0
jne 0x10015212
push str.Device_wasnt_created_using_eglCreateDeviceANGLE__and_the_Display_that_created_it_doesnt_support_device_querying
lea eax, [esp + 8]
push 0x3002
push eax
call fcn.10131350
push eax
call fcn.10016980
add esp, 0x10
lea ecx, [esp + 0xc]
call fcn.100016b0
xor eax, eax
pop edi
add esp, 0x18
ret 0xc
push ebx
mov ebx, dword [esp + 0x28]
mov eax, ebx
push esi
xor esi, esi
mov dword [esp + 0xc], 0x3000
mov dword [esp + 0x10], 0
mov dword [esp + 0x14], esi
sub eax, 0x33a0
je 0x1001523c
sub eax, 1
jne 0x10015296
mov ecx, edi
call fcn.10137730
cmp byte [eax], 0
je 0x10015296
mov ecx, edi
call fcn.10055460
cmp eax, ebx
jne 0x10015296
push dword [esp + 0x30]
lea eax, [esp + 0x1c]
mov ecx, edi
push eax
call fcn.101376a0
push eax
lea ecx, [esp + 0x10]
call fcn.10001760
lea ecx, [esp + 0x20]
call fcn.100016b0
lea eax, [esp + 0xc]
push eax
call fcn.10016980
mov esi, dword [esp + 0x18]
xor ebx, ebx
add esp, 4
cmp dword [esp + 0xc], 0x3000
sete bl
jmp 0x100152b5
lea eax, [esp + 0xc]
mov dword [esp + 0xc], 0x3004
push eax
mov dword [esp + 0x14], esi
mov dword [esp + 0x18], esi
call fcn.10016980
add esp, 4
xor ebx, ebx
test esi, esi
je 0x10015303
mov ecx, dword [esi + 0x14]
cmp ecx, 0x10
jb 0x100152e8
mov eax, dword [esi]
inc ecx
cmp ecx, 0x1000
jb 0x100152de
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1001530e
mov eax, edx
push ecx
push eax
call fcn.10174919
add esp, 8
push esi
mov dword [esi + 0x10], 0
mov dword [esi + 0x14], 0xf
mov byte [esi], 0
call dword [sym.imp.mozglue.dll_free]
add esp, 4
pop esi
mov eax, ebx
pop ebx
pop edi
add esp, 0x18
ret 0xc
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
mov eax, dword [section..data]
cmp eax, 0xffffffff
jne 0x10015328
call sub.KERNEL32.dll_TlsAlloc
mov dword [section..data], eax
push eax
call fcn.1002e140
add esp, 4
test eax, eax
jne 0x1001533a
call fcn.100079f0
mov dword [eax], 0x3002
xor eax, eax
pop edi
add esp, 0x18
ret 0xc