joyce8/EMBER2024-capa huggingface dataset:
Function at 0x10021960
Capabilities:
Encode data using xor
Hash data using fnv

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x14
push ebx
push esi
push edi
mov edi, dword [ebp + 0xc]
mov esi, edi
mov dword [ebp - 4], ecx
cmp dword [edi + 0x14], 0x10
mov ebx, dword [edi + 0x10]
jb 0x1002197c
mov esi, dword [edi]
xor ecx, ecx
mov edx, 0x811c9dc5
test ebx, ebx
je 0x10021998
movzx eax, byte [ecx + esi]
inc ecx
xor eax, edx
imul edx, eax, 0x1000193
cmp ecx, ebx
jb 0x10021987
mov ebx, dword [ebp - 4]
mov eax, dword [ebx + 0x18]
mov ecx, dword [ebx + 0xc]
and eax, edx
mov ebx, dword [ebx + 4]
mov esi, dword [ecx + eax*8]
add eax, eax
mov edx, dword [ecx + eax*4]
inc eax
mov dword [ebp - 8], edx
lea eax, [ecx + eax*4]
mov dword [ebp - 0xc], eax
cmp edx, ebx
jne 0x100219c0
mov eax, ebx
jmp 0x100219c4
mov eax, dword [eax]
mov eax, dword [eax]
cmp esi, eax
je 0x10021a37
cmp dword [edi + 0x14], 0x10
mov edx, edi
jb 0x100219d2
mov edx, dword [edi]
mov edi, dword [esi + 0x1c]
lea ecx, [esi + 8]
mov dword [ebp - 0x10], edi
cmp edi, 0x10
mov edi, dword [ebp + 0xc]
jb 0x100219e6
mov ecx, dword [esi + 8]
push dword [edi + 0x10]
mov eax, dword [esi + 0x18]
push edx
mov edx, eax
mov dword [ebp - 0x14], eax
call fcn.10008560
add esp, 8
test al, al
jne 0x10021a08
mov esi, dword [esi]
mov edx, dword [ebp - 8]
mov eax, dword [ebp - 0xc]
jmp 0x100219b8
cmp dword [ebp - 0x10], 0x10
lea eax, [esi + 8]
jb 0x10021a13
mov eax, dword [eax]
cmp dword [edi + 0x14], 0x10
mov ecx, edi
jb 0x10021a1d
mov ecx, dword [edi]
push dword [ebp - 0x14]
mov edx, dword [edi + 0x10]
push eax
call fcn.10008560
add esp, 8
mov ecx, ebx
test al, al
cmovne ecx, esi
mov eax, ecx
jmp 0x10021a3b
mov ecx, ebx
mov eax, ebx
cmp eax, ebx
jne 0x10021a91
mov esi, dword [ebx]
lea eax, [ebp + 0xc]
push ecx
push eax
push ecx
mov dword [ebp + 0xc], edi
mov edi, dword [esi + 4]
push edi
push esi
call fcn.10022dc0
mov ebx, dword [ebp - 4]
mov edx, eax
mov ecx, 0x6666665
mov eax, dword [ebx + 8]
sub ecx, eax
cmp ecx, 1
jb 0x10021aa3
inc eax
mov ecx, ebx
mov dword [ebx + 8], eax
mov dword [esi + 4], edx
mov esi, dword [ebp + 8]
mov dword [edi], edx
mov eax, dword [ebx + 4]
mov eax, dword [eax]
push eax
add eax, 8
push eax
push esi
call fcn.100220c0
pop edi
mov eax, esi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 8
mov eax, dword [ebp + 8]
pop edi
pop esi
pop ebx
mov dword [eax], ecx
mov byte [eax + 4], 0
mov esp, ebp
pop ebp
ret 8
push str.list_T__too_long
call fcn.1005dddf
int3
Function at 0x10021d00
Capabilities:
Encode data using xor
Hash data using fnv

Disassembly:
push ebp
mov ebp, esp
push ecx
mov edx, dword [ebp + 0xc]
cmp dword [edx + 0x1c], 0x10
push ebx
mov ebx, dword [edx + 0x18]
push esi
lea esi, [edx + 8]
mov dword [ebp - 4], ecx
jb 0x10021d1a
mov esi, dword [esi]
xor ecx, ecx
push edi
mov edi, 0x811c9dc5
test ebx, ebx
je 0x10021d37
movzx eax, byte [ecx + esi]
inc ecx
xor eax, edi
imul edi, eax, 0x1000193
cmp ecx, ebx
jb 0x10021d26
mov ebx, dword [ebp - 4]
mov eax, dword [ebx + 0x18]
mov ecx, dword [ebx + 0xc]
and eax, edi
pop edi
lea esi, [eax*8]
mov eax, dword [ecx + esi]
add ecx, esi
cmp dword [ecx + 4], edx
jne 0x10021d71
cmp eax, edx
jne 0x10021d69
mov eax, dword [ebx + 4]
mov dword [ecx], eax
mov ecx, dword [ebx + 0xc]
mov eax, dword [ebx + 4]
mov dword [esi + ecx + 4], eax
jmp 0x10021d79
mov eax, dword [edx + 4]
mov dword [ecx + 4], eax
jmp 0x10021d79
cmp eax, edx
jne 0x10021d7c
mov eax, dword [edx]
mov dword [ecx], eax
mov edx, dword [ebp + 0xc]
mov eax, dword [edx + 4]
mov esi, dword [edx]
push edx
mov dword [eax], esi
mov ecx, dword [edx]
mov eax, dword [edx + 4]
mov dword [ecx + 4], eax
dec dword [ebx + 8]
call fcn.10011d20
mov eax, dword [ebp + 8]
mov dword [eax], esi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 8
Function at 0x10022300
Capabilities:
Encode data using xor
Hash data using fnv

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x100b1d30
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0xc
push ebx
mov dword [ebp - 4], 0
mov ebx, dword [ebp + 0xc]
push esi
push edi
mov dword [ebp - 0x10], esp
mov esi, ebx
cmp dword [ebx + 0x14], 0x10
mov edi, dword [ebx + 0x10]
mov dword [ebp - 0x14], ecx
jb 0x1002233b
mov esi, dword [ebx]
xor ecx, ecx
mov edx, 0x811c9dc5
test edi, edi
je 0x10022357
movzx eax, byte [ecx + esi]
inc ecx
xor eax, edx
imul edx, eax, 0x1000193
cmp ecx, edi
jb 0x10022346
mov ecx, dword [ebp - 0x14]
mov eax, dword [ecx + 0x18]
mov esi, dword [ecx + 4]
and eax, edx
lea edx, [eax*8]
mov eax, dword [ecx + 0xc]
mov dword [ebp + 0xc], edx
mov edi, dword [edx + eax]
cmp esi, edi
je 0x100223ea
mov esi, dword [edx + eax + 4]
mov esi, dword [esi]
nop dword [eax]
cmp esi, edi
je 0x100223ea
mov esi, dword [esi + 4]
cmp dword [esi + 0x1c], 0x10
lea edx, [esi + 8]
jb 0x10022393
mov edx, dword [esi + 8]
cmp dword [ebx + 0x14], 0x10
mov ecx, ebx
jb 0x1002239d
mov ecx, dword [ebx]
push dword [esi + 0x18]
push edx
mov edx, dword [ebx + 0x10]
call fcn.10008560
add esp, 8
test al, al
je 0x10022380
mov edx, dword [ebp + 0x10]
push edx
mov ecx, dword [edx + 4]
mov eax, dword [edx]
mov dword [ecx], eax
mov ecx, dword [edx]
mov eax, dword [edx + 4]
mov dword [ecx + 4], eax
mov ecx, dword [ebp - 0x14]
dec dword [ecx + 8]
call fcn.10011d20
mov eax, dword [ebp + 8]
mov dword [eax], esi
mov byte [eax + 4], 0
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc
mov edi, dword [ebp + 0x10]
mov dword [ebp - 0x18], edi
mov eax, dword [edi]
cmp esi, eax
je 0x10022417
mov ecx, dword [edi + 4]
mov dword [ecx], eax
mov ecx, dword [eax + 4]
mov dword [ecx], esi
mov ecx, dword [esi + 4]
mov dword [ecx], edi
mov ecx, dword [eax + 4]
mov edx, dword [esi + 4]
mov dword [esi + 4], ecx
mov ecx, dword [edi + 4]
mov dword [eax + 4], ecx
mov dword [edi + 4], edx
mov ecx, dword [ebp - 0x14]
mov ebx, dword [ebp + 0xc]
mov edx, dword [ecx + 0xc]
add edx, ebx
mov eax, dword [edx]
cmp eax, dword [ecx + 4]
jne 0x10022434
mov dword [edx], edi
mov eax, dword [ecx + 0xc]
mov dword [ebx + eax + 4], edi
jmp 0x10022459
cmp eax, esi
jne 0x1002243c
mov dword [edx], edi
jmp 0x10022459
mov eax, dword [edx + 4]
mov eax, dword [eax]
mov dword [edx + 4], eax
cmp eax, edi
je 0x10022459
mov ecx, dword [ecx + 0xc]
mov eax, dword [ecx + ebx + 4]
mov eax, dword [eax + 4]
mov dword [ecx + ebx + 4], eax
mov ecx, dword [ebp - 0x14]
mov dword [ebp - 4], 2
call fcn.10021c60
mov eax, dword [ebp + 8]
mov ecx, dword [ebp - 0xc]
mov dword [eax], edi
pop edi
pop esi
mov byte [eax + 4], 1
mov dword fs:[0], ecx
pop ebx
mov esp, ebp
pop ebp
ret 0xc
Function at 0x10022960
Capabilities:
Encode data using xor
Hash data using fnv

Disassembly:
push ebp
mov ebp, esp
push ecx
push ebx
push esi
push edi
mov edi, dword [ebp + 0xc]
mov dword [ebp - 4], ecx
cmp dword [edi + 0x1c], 0x10
lea esi, [edi + 8]
mov ebx, dword [edi + 0x18]
jb 0x1002297c
mov esi, dword [edi + 8]
xor ecx, ecx
mov edx, 0x811c9dc5
test ebx, ebx
je 0x10022998
movzx eax, byte [ecx + esi]
inc ecx
xor eax, edx
imul edx, eax, 0x1000193
cmp ecx, ebx
jb 0x10022987
mov ebx, dword [ebp - 4]
mov eax, dword [ebx + 0x18]
mov ecx, dword [ebx + 0xc]
and eax, edx
lea edx, [eax*8]
mov eax, dword [ecx + edx]
add ecx, edx
cmp dword [ecx + 4], edi
jne 0x100229d1
cmp eax, edi
jne 0x100229c9
mov eax, dword [ebx + 4]
mov dword [ecx], eax
mov ecx, dword [ebx + 0xc]
mov eax, dword [ebx + 4]
mov dword [edx + ecx + 4], eax
jmp 0x100229d9
mov eax, dword [edi + 4]
mov dword [ecx + 4], eax
jmp 0x100229d9
cmp eax, edi
jne 0x100229d9
mov eax, dword [edi]
mov dword [ecx], eax
mov eax, dword [edi + 4]
lea ecx, [edi + 8]
mov esi, dword [edi]
mov dword [eax], esi
mov edx, dword [edi]
mov eax, dword [edi + 4]
mov dword [edx + 4], eax
dec dword [ebx + 8]
call fcn.10021220
push 0x28
push edi
call fcn.1005cbc1
mov eax, dword [ebp + 8]
add esp, 8
pop edi
mov dword [eax], esi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 8

Function at 0x10022bd0
Capabilities:
Hash data using fnv

Disassembly:
push ebp
mov ebp, esp
push ebx
push esi
push edi
mov edi, dword [ebp + 0xc]
mov ebx, ecx
movzx eax, byte [edi + 8]
xor eax, 0x811c9dc5
imul edx, eax, 0x1000193
movzx eax, byte [edi + 9]
xor edx, eax
movzx eax, byte [edi + 0xa]
imul edx, edx, 0x1000193
xor edx, eax
movzx eax, byte [edi + 0xb]
imul ecx, edx, 0x1000193
xor ecx, eax
imul eax, ecx, 0x1000193
mov ecx, dword [ebx + 0x18]
and ecx, eax
lea edx, [ecx*8]
mov ecx, dword [ebx + 0xc]
add ecx, edx
mov eax, dword [ecx]
cmp dword [ecx + 4], edi
jne 0x10022c43
cmp eax, edi
jne 0x10022c3b
mov eax, dword [ebx + 4]
mov dword [ecx], eax
mov ecx, dword [ebx + 0xc]
mov eax, dword [ebx + 4]
mov dword [edx + ecx + 4], eax
jmp 0x10022c4b
mov eax, dword [edi + 4]
mov dword [ecx + 4], eax
jmp 0x10022c4b
cmp eax, edi
jne 0x10022c4e
mov eax, dword [edi]
mov dword [ecx], eax
mov edi, dword [ebp + 0xc]
mov eax, dword [edi + 4]
mov esi, dword [edi]
push 0x10
push edi
mov dword [eax], esi
mov ecx, dword [edi]
mov eax, dword [edi + 4]
mov dword [ecx + 4], eax
dec dword [ebx + 8]
call fcn.1005cbc1
mov eax, dword [ebp + 8]
add esp, 8
pop edi
mov dword [eax], esi
pop esi
pop ebx
pop ebp
ret 8

Function at 0x10023550
Capabilities:
Allocate or change rwx memory

Disassembly:
push ebp
mov ebp, esp
push ecx
push esi
push edi
lea eax, [ebp - 4]
mov esi, edx
push eax
push 0x40
mov edi, ecx
push esi
push edi
call dword [sym.imp.KERNEL32.dll_VirtualProtect]
test eax, eax
jne 0x10023574
pop edi
xor al, al
pop esi
mov esp, ebp
pop ebp
ret
push esi
push 0x90
push edi
call fcn.100758b0
add esp, 0xc
lea eax, [ebp - 4]
push eax
push dword [ebp - 4]
push esi
push edi
call dword [sym.imp.KERNEL32.dll_VirtualProtect]
pop edi
mov al, 1
pop esi
mov esp, ebp
pop ebp
ret
Function at 0x100246d0
Capabilities:
Reference absolute stream path on windows

Disassembly:
push ebp
mov ebp, esp
mov eax, dword fs:[0]
push 0xffffffffffffffff
push 0x100b1ee8
push eax
mov dword fs:[0], esp
sub esp, 0x5c
push esi
mov esi, ecx
push edi
mov edi, edx
mov eax, dword [esi]
test eax, eax
je 0x10024713
push eax
push edi
call dword [sym.imp.ODBC32.dll_SQLFreeHandle]
movzx eax, ax
test ax, ax
je 0x1002470d
cmp ax, 1
jne 0x10024723
mov dword [esi], 0
mov ecx, dword [ebp - 0xc]
pop edi
mov dword fs:[0], ecx
pop esi
mov esp, ebp
pop ebp
ret
push str.c:users_sarko_pc_source_repos_sr_gameserver_dll_sr_gameserver_dll_sr_gameserver_dll_nanodbc_nanodbc.cpp:795:
lea ecx, [ebp - 0x24]
call fcn.10010960
lea eax, [ebp - 0x24]
mov dword [ebp - 4], 0
push eax
push edi
push dword [esi]
lea ecx, [ebp - 0x64]
call fcn.10024290
push 0x100e1aec
lea eax, [ebp - 0x64]
push eax
call fcn.10075837
int3

Function at 0x100247f0
Capabilities:
Reference absolute stream path on windows

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x100b1f30
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0xb8
push ebx
push esi
mov esi, ecx
push edi
mov dword [ebp - 0x10], esp
mov dword [ebp - 0x14], esi
cmp dword [esi], 0
jne 0x10024860
push esi
push 0
push 1
call dword [sym.imp.ODBC32.dll_SQLAllocHandle]
movzx eax, ax
test ax, ax
je 0x10024837
cmp ax, 1
jne 0x10024871
push 0xfffffffffffffffb
push 0x17c
push 0xc8
mov dword [ebp - 4], 1
push dword [esi]
call dword [sym.imp.ODBC32.dll_SQLSetEnvAttr]
movzx eax, ax
test ax, ax
je 0x10024860
cmp ax, 1
jne 0x100248a9
mov ecx, dword [ebp - 0xc]
pop edi
pop esi
mov dword fs:[0], ecx
pop ebx
mov esp, ebp
pop ebp
ret
push str.c:users_sarko_pc_source_repos_sr_gameserver_dll_sr_gameserver_dll_sr_gameserver_dll_nanodbc_nanodbc.cpp:807:
lea ecx, [ebp - 0x2c]
call fcn.10010960
lea eax, [ebp - 0x2c]
mov dword [ebp - 4], 0
push eax
push 1
push dword [esi]
lea ecx, [ebp - 0x84]
call fcn.10024290
push 0x100e1aec
lea eax, [ebp - 0x84]
push eax
call fcn.10075837
push str.c:users_sarko_pc_source_repos_sr_gameserver_dll_sr_gameserver_dll_sr_gameserver_dll_nanodbc_nanodbc.cpp:819:
lea ecx, [ebp - 0x44]
call fcn.10010960
lea eax, [ebp - 0x44]
mov byte [ebp - 4], 2
push eax
push 1
push dword [esi]
lea ecx, [ebp - 0xc4]
call fcn.10024290
push 0x100e1aec
lea eax, [ebp - 0xc4]
push eax
call fcn.10075837
mov ecx, dword [ebp - 0x14]
mov edx, 1
call fcn.100246d0
push 0
push 0
call fcn.10075837
int3
Function at 0x10024900
Capabilities:
Reference absolute stream path on windows

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x100b1f48
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x60
cmp dword [ecx], 0
push ebx
push esi
push edi
mov dword [ebp - 0x10], esp
mov esi, edx
mov dword [ebp - 0x14], ecx
jne 0x1002494a
push ecx
push esi
push 2
mov dword [ebp - 4], 0
call dword [sym.imp.ODBC32.dll_SQLAllocHandle]
movzx eax, ax
test ax, ax
je 0x1002494a
cmp ax, 1
jne 0x1002495b
mov ecx, dword [ebp - 0xc]
pop edi
pop esi
mov dword fs:[0], ecx
pop ebx
mov esp, ebp
pop ebp
ret
push str.c:users_sarko_pc_source_repos_sr_gameserver_dll_sr_gameserver_dll_sr_gameserver_dll_nanodbc_nanodbc.cpp:839:
lea ecx, [ebp - 0x2c]
call fcn.10010960
lea eax, [ebp - 0x2c]
mov byte [ebp - 4], 1
push eax
push 1
push esi
lea ecx, [ebp - 0x6c]
call fcn.10024290
push 0x100e1aec
lea eax, [ebp - 0x6c]
push eax
call fcn.10075837
mov ecx, dword [ebp - 0x14]
mov edx, 2
call fcn.100246d0
push 0
push 0
call fcn.10075837
int3

Function at 0x10024a40
Capabilities:
Reference absolute stream path on windows

Disassembly:
push ebp
mov ebp, esp
mov eax, dword fs:[0]
push 0xffffffffffffffff
push 0x100b1f80
push eax
mov dword fs:[0], esp
sub esp, 0xb0
push esi
push edi
mov edi, ecx
call fcn.100247f0
mov ecx, edi
call fcn.10024b70
mov edx, 2
lea ecx, [edi + 4]
call fcn.100246d0
mov edx, dword [edi]
lea ecx, [edi + 4]
call fcn.10024900
push 0
push 5
push 0x67
push dword [edi + 4]
call dword [sym.imp.ODBC32.dll_SQLSetConnectAttr]
movzx eax, ax
test ax, ax
je 0x10024aa2
cmp ax, 1
jne 0x10024af6
mov eax, dword [ebp + 8]
cmp dword [eax + 0x14], 0x10
jb 0x10024aad
mov eax, dword [eax]
push 0
push 0
push 0
push 0
push 0xfffffffffffffffd
push eax
push 0
push dword [edi + 4]
call dword [sym.imp.ODBC32.dll_SQLDriverConnect]
movzx eax, ax
test ax, ax
je 0x10024adf
cmp ax, 1
jne 0x10024b29
test ax, ax
je 0x10024adf
cmp ax, ax
je 0x10024adf
xor cl, cl
jmp 0x10024ae1
mov cl, 1
mov byte [edi + 8], cl
mov ecx, dword [ebp - 0xc]
pop edi
pop esi
mov dword fs:[0], ecx
mov esp, ebp
pop ebp
ret 0xc
push str.c:users_sarko_pc_source_repos_sr_gameserver_dll_sr_gameserver_dll_sr_gameserver_dll_nanodbc_nanodbc.cpp:1077:
lea ecx, [ebp - 0x24]
call fcn.10010960
lea eax, [ebp - 0x24]
mov dword [ebp - 4], 0
push eax
push 2
push dword [edi + 4]
lea ecx, [ebp - 0x7c]
call fcn.10024290
push 0x100e1aec
lea eax, [ebp - 0x7c]
push eax
call fcn.10075837
push str.c:users_sarko_pc_source_repos_sr_gameserver_dll_sr_gameserver_dll_sr_gameserver_dll_nanodbc_nanodbc.cpp:1097:
lea ecx, [ebp - 0x3c]
call fcn.10010960
lea eax, [ebp - 0x3c]
mov dword [ebp - 4], 1
push eax
push 2
push dword [edi + 4]
lea ecx, [ebp - 0xbc]
call fcn.10024290
push 0x100e1aec
lea eax, [ebp - 0xbc]
push eax
call fcn.10075837
int3
Function at 0x10024b70
Capabilities:
Reference absolute stream path on windows

Disassembly:
push ebp
mov ebp, esp
mov eax, dword fs:[0]
push 0xffffffffffffffff
push 0x100b1ee8
push eax
mov dword fs:[0], esp
sub esp, 0x58
push esi
mov esi, ecx
cmp byte [esi + 8], 0
je 0x10024bab
push dword [esi + 4]
call dword [sym.imp.ODBC32.dll_SQLDisconnect]
movzx eax, ax
test ax, ax
je 0x10024bab
cmp ax, 1
jne 0x10024bbe
mov ecx, dword [ebp - 0xc]
mov byte [esi + 8], 0
pop esi
mov dword fs:[0], ecx
mov esp, ebp
pop ebp
ret
push str.c:users_sarko_pc_source_repos_sr_gameserver_dll_sr_gameserver_dll_sr_gameserver_dll_nanodbc_nanodbc.cpp:1113:
lea ecx, [ebp - 0x24]
call fcn.10010960
lea eax, [ebp - 0x24]
mov dword [ebp - 4], 0
push eax
push 2
push dword [esi + 4]
lea ecx, [ebp - 0x64]
call fcn.10024290
push 0x100e1aec
lea eax, [ebp - 0x64]
push eax
call fcn.10075837
int3

Function at 0x10024db0
Capabilities:
Reference absolute stream path on windows

Disassembly:
push ebp
mov ebp, esp
mov eax, dword fs:[0]
push 0xffffffffffffffff
push 0x100b2000
push eax
mov dword fs:[0], esp
sub esp, 0x60
push esi
push edi
mov edi, ecx
call fcn.10024eb0
mov esi, dword [ebp + 8]
push edi
mov eax, dword [esi]
push dword [eax + 4]
push 3
call dword [sym.imp.ODBC32.dll_SQLAllocHandle]
movzx eax, ax
test ax, ax
je 0x10024df7
cmp ax, 1
je 0x10024df7
xor al, al
jmp 0x10024df9
mov al, 1
mov byte [edi + 4], al
test al, al
jne 0x10024e23
cmp dword [edi], 0
lea ecx, [ebp - 0x28]
je 0x10024e7a
push str.c:users_sarko_pc_source_repos_sr_gameserver_dll_sr_gameserver_dll_sr_gameserver_dll_nanodbc_nanodbc.cpp:1456:
call fcn.10010960
lea eax, [ebp - 0x28]
mov dword [ebp - 4], 1
push eax
push 3
push dword [edi]
jmp 0x10024e99
mov ecx, dword [esi + 4]
test ecx, ecx
je 0x10024e31
lock inc dword [ecx + 4]
mov ecx, dword [esi + 4]
mov eax, dword [esi]
mov dword [edi + 8], eax
mov esi, dword [edi + 0xc]
mov dword [edi + 0xc], ecx
mov dword [ebp - 4], 2
test esi, esi
je 0x10024e68
or edi, 0xffffffff
mov eax, edi
lock xadd dword [esi + 4], eax
jne 0x10024e68
mov eax, dword [esi]
mov ecx, esi
call dword [eax]
lock xadd dword [esi + 8], edi
dec edi
jne 0x10024e68
mov eax, dword [esi]
mov ecx, esi
call dword [eax + 4]
mov ecx, dword [ebp - 0xc]
pop edi
mov dword fs:[0], ecx
pop esi
mov esp, ebp
pop ebp
ret 4
push str.c:users_sarko_pc_source_repos_sr_gameserver_dll_sr_gameserver_dll_sr_gameserver_dll_nanodbc_nanodbc.cpp:1454:
call fcn.10010960
lea eax, [ebp - 0x28]
mov dword [ebp - 4], 0
push eax
push 2
mov ecx, esi
call fcn.10026560
push eax
lea ecx, [ebp - 0x68]
call fcn.10024290
push 0x100e1aec
lea eax, [ebp - 0x68]
push eax
call fcn.10075837
int3
Function at 0x10024f90
Capabilities:
Reference absolute stream path on windows

Disassembly:
push ebp
mov ebp, esp
mov eax, dword fs:[0]
push 0xffffffffffffffff
push 0x100b2020
push eax
mov dword fs:[0], esp
sub esp, 0x68
push esi
mov esi, ecx
push edi
cmp byte [esi + 4], 0
je 0x10025009
call fcn.10025070
mov eax, dword [ebp + 8]
cmp dword [eax + 0x14], 0x10
mov ecx, dword [eax + 0x10]
jb 0x10024fc8
mov eax, dword [eax]
push ecx
push eax
push dword [esi]
call dword [sym.imp.ODBC32.dll_SQLPrepare]
movzx edi, ax
test di, di
je 0x10024fe6
cmp di, 1
je 0x10024fe6
cmp di, 2
jne 0x10025037
push 0
push 0
push 0
push dword [esi]
call dword [sym.imp.ODBC32.dll_SQLSetStmtAttr]
mov ecx, dword [ebp - 0xc]
mov ax, di
pop edi
mov dword fs:[0], ecx
pop esi
mov esp, ebp
pop ebp
ret 0xc
push str.statement_has_no_associated_open_connection
lea ecx, [ebp - 0x34]
call fcn.10010960
lea eax, [ebp - 0x34]
mov dword [ebp - 4], 0
push eax
lea ecx, [ebp - 0x1c]
call fcn.10024240
push 0x100e1afc
lea eax, [ebp - 0x1c]
push eax
call fcn.10075837
push str.c:users_sarko_pc_source_repos_sr_gameserver_dll_sr_gameserver_dll_sr_gameserver_dll_nanodbc_nanodbc.cpp:1549:
lea ecx, [ebp - 0x34]
call fcn.10010960
lea eax, [ebp - 0x34]
mov dword [ebp - 4], 1
push eax
push 3
push dword [esi]
lea ecx, [ebp - 0x74]
call fcn.10024290
push 0x100e1aec
lea eax, [ebp - 0x74]
push eax
call fcn.10075837
int3

Function at 0x10025070
Capabilities:
Reference absolute stream path on windows

Disassembly:
push ebp
mov ebp, esp
mov eax, dword fs:[0]
push 0xffffffffffffffff
push 0x100b1ee8
push eax
mov dword fs:[0], esp
sub esp, 0x58
push esi
mov esi, ecx
cmp byte [esi + 0x39], 0
je 0x100250b4
push 0xfffffffffffffffa
push 0
push 4
push dword [esi]
call dword [sym.imp.ODBC32.dll_SQLSetStmtAttr]
movzx eax, ax
test ax, ax
je 0x100250b0
cmp ax, 1
jne 0x100250c3
mov byte [esi + 0x39], 0
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop esi
mov esp, ebp
pop ebp
ret
push str.c:users_sarko_pc_source_repos_sr_gameserver_dll_sr_gameserver_dll_sr_gameserver_dll_nanodbc_nanodbc.cpp:1614:
lea ecx, [ebp - 0x24]
call fcn.10010960
lea eax, [ebp - 0x24]
mov dword [ebp - 4], 0
push eax
push 3
push dword [esi]
lea ecx, [ebp - 0x64]
call fcn.10024290
push 0x100e1aec
lea eax, [ebp - 0x64]
push eax
call fcn.10075837
int3
Function at 0x10025160
Capabilities:
Reference absolute stream path on windows

Disassembly:
push ebp
mov ebp, esp
mov eax, dword fs:[0]
push 0xffffffffffffffff
push 0x100b2040
push eax
mov dword fs:[0], esp
sub esp, 0xb0
push esi
push dword [ebp + 8]
mov esi, ecx
call fcn.10024db0
mov ecx, esi
call fcn.10025070
push 0
push 1
push 0x16
push dword [esi]
call dword [sym.imp.ODBC32.dll_SQLSetStmtAttr]
movzx eax, ax
test ax, ax
je 0x100251ac
cmp ax, 1
jne 0x100251fb
push 0
push 0
push 0
push dword [esi]
call dword [sym.imp.ODBC32.dll_SQLSetStmtAttr]
mov eax, dword [ebp + 0xc]
cmp dword [eax + 0x14], 0x10
jb 0x100251c5
mov eax, dword [eax]
push 0xfffffffffffffffd
push eax
push dword [esi]
call dword [sym.imp.ODBC32.dll_SQLExecDirect]
movzx eax, ax
test ax, ax
je 0x100251ea
cmp ax, 1
je 0x100251ea
cmp ax, 0x64
je 0x100251ea
cmp ax, 2
jne 0x1002522d
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop esi
mov esp, ebp
pop ebp
ret 0x18
push str.c:users_sarko_pc_source_repos_sr_gameserver_dll_sr_gameserver_dll_sr_gameserver_dll_nanodbc_nanodbc.cpp:1724:
lea ecx, [ebp - 0x24]
call fcn.10010960
lea eax, [ebp - 0x24]
mov dword [ebp - 4], 0
push eax
push 3
push dword [esi]
lea ecx, [ebp - 0x7c]
call fcn.10024290
push 0x100e1aec
lea eax, [ebp - 0x7c]
push eax
call fcn.10075837
push str.c:users_sarko_pc_source_repos_sr_gameserver_dll_sr_gameserver_dll_sr_gameserver_dll_nanodbc_nanodbc.cpp:1731:
lea ecx, [ebp - 0x3c]
call fcn.10010960
lea eax, [ebp - 0x3c]
mov dword [ebp - 4], 2
push eax
push 3
push dword [esi]
lea ecx, [ebp - 0xbc]
call fcn.10024290
push 0x100e1aec
lea eax, [ebp - 0xbc]
push eax
call fcn.10075837
int3
Function at 0x100252c0
Capabilities:
Reference absolute stream path on windows

Disassembly:
push ebp
mov ebp, esp
mov eax, dword fs:[0]
push 0xffffffffffffffff
push 0x100b2068
push eax
mov dword fs:[0], esp
sub esp, 0xb0
push esi
mov esi, ecx
cmp byte [esi + 4], 0
je 0x10025303
push 0
push dword [esi]
call dword [sym.imp.ODBC32.dll_SQLFreeStmt]
movzx eax, ax
test ax, ax
je 0x10025303
cmp ax, 1
jne 0x100253ba
mov ecx, esi
call fcn.10025070
push 0
push 1
push 0x16
push dword [esi]
call dword [sym.imp.ODBC32.dll_SQLSetStmtAttr]
movzx eax, ax
test ax, ax
je 0x10025345
cmp ax, 1
je 0x10025345
cmp ax, 0x64
je 0x10025345
push str.c:users_sarko_pc_source_repos_sr_gameserver_dll_sr_gameserver_dll_sr_gameserver_dll_nanodbc_nanodbc.cpp:1791:
lea ecx, [ebp - 0x24]
call fcn.10010960
mov dword [ebp - 4], 2
jmp 0x100253ce
push 0
push 0
push 0
push dword [esi]
call dword [sym.imp.ODBC32.dll_SQLSetStmtAttr]
push dword [esi]
call dword [sym.imp.ODBC32.dll_SQLExecute]
movzx eax, ax
test ax, ax
je 0x100253a9
cmp ax, 1
je 0x100253a9
cmp ax, 0x64
je 0x100253a9
cmp ax, 2
je 0x100253a9
push str.c:users_sarko_pc_source_repos_sr_gameserver_dll_sr_gameserver_dll_sr_gameserver_dll_nanodbc_nanodbc.cpp:1797:
lea ecx, [ebp - 0x3c]
call fcn.10010960
lea eax, [ebp - 0x3c]
mov dword [ebp - 4], 4
push eax
push 3
push dword [esi]
lea ecx, [ebp - 0xbc]
call fcn.10024290
push 0x100e1aec
lea eax, [ebp - 0xbc]
jmp 0x100253e6
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop esi
mov esp, ebp
pop ebp
ret 0x10
push str.c:users_sarko_pc_source_repos_sr_gameserver_dll_sr_gameserver_dll_sr_gameserver_dll_nanodbc_nanodbc.cpp:1773:
lea ecx, [ebp - 0x24]
call fcn.10010960
mov dword [ebp - 4], 1
lea eax, [ebp - 0x24]
push eax
push 3
push dword [esi]
lea ecx, [ebp - 0x7c]
call fcn.10024290
push 0x100e1aec
lea eax, [ebp - 0x7c]
push eax
call fcn.10075837
int3