joyce8/EMBER2024-capa huggingface dataset:
Function at 0x459a5e
Capabilities:
Query environment variable

Disassembly:
push ebx
mov ebx, eax
test ebx, ebx
push esi
push edi
jne 0x459a7b
cmp dword [esp + 0x10], eax
je 0x459a7b
cmp dword [esp + 0x10], 0xffffffff
je 0x459a7b
call fcn.0045a17d
mov ebx, eax
mov esi, 0x5fcad0
mov edx, esi
call fcn.00475851
test eax, eax
mov edi, 0x104
je 0x459aca
push ebp
mov ebp, dword [sym.imp.KERNEL32.dll_GetEnvironmentVariableA]
push edi
push esi
push str.APPDATA
call ebp
test eax, eax
jne 0x459ac2
push edi
push esi
push str.SystemDrive
call ebp
test eax, eax
jne 0x459ac9
push 0x4e3154
mov ecx, edi
mov eax, esi
call fcn.00475883
pop ecx
jmp 0x459ac9
mov byte [0x5fcad2], 0
pop ebp
push esi
mov esi, 0x5fcbd8
mov ecx, edi
mov eax, esi
call fcn.00475883
test ebx, ebx
pop ecx
je 0x459b1c
push esi
push ebx
call fcn.004a64e0
push esi
call fcn.004a63c0
mov ecx, dword [esp + 0x1c]
add esp, 0xc
test ecx, ecx
je 0x459b1a
cmp ecx, 0xffffffff
je 0x459b1a
lea edx, [esp + 0x14]
push edx
push ecx
sub edi, eax
add eax, ebx
push edi
push eax
call fcn.004a81d8
add esp, 0x10
test eax, eax
jge 0x459b1a
mov byte [ebx + 0x103], 0
mov eax, ebx
pop edi
pop esi
pop ebx
ret
Function at 0x459cf0
Capabilities:
Query environment variable

Disassembly:
push ebp
lea ebp, [esp - 0x8c]
sub esp, 0x10c
mov eax, dword [0x5005d0]
xor eax, ebp
mov dword [ebp + 0x88], eax
mov eax, dword [ebp + 0x94]
push ebx
xor ebx, ebx
cmp eax, ebx
push esi
push edi
mov dword [ebp - 0x80], eax
jne 0x459d36
cmp dword [ebp + 0x98], ebx
je 0x459d36
cmp dword [ebp + 0x98], 0xffffffff
je 0x459d36
call fcn.0045a17d
mov dword [ebp - 0x80], eax
mov eax, fcn.00459bf1
cmp eax, fcn.00459cf0
mov esi, 0x5fd208
mov edi, 0x104
mov edx, esi
je 0x459d93
call fcn.00475851
test eax, eax
jne 0x459d63
cmp dword [0x5fcac4], ebx
je 0x459e2b
push edi
push ebx
push esi
call fcn.004a7110
push ebx
push ebx
mov dword [0x5fcac4], ebx
call fcn.00459bf1
push eax
push str._sPAULA_
push edi
push esi
call fcn.00476e0a
push esi
call fcn.004a63c0
add esp, 0x28
jmp 0x459e26
call fcn.00475851
test eax, eax
jne 0x459da8
cmp dword [0x5fcac4], ebx
je 0x459e2b
push edi
push ebx
push esi
call fcn.004a7110
add esp, 0xc
push edi
lea eax, [ebp - 0x7c]
push eax
mov dword [0x5fcac4], ebx
mov ebx, dword [sym.imp.KERNEL32.dll_GetEnvironmentVariableA]
push str.APPDATA
call ebx
test eax, eax
jne 0x459dff
push edi
lea eax, [ebp - 0x7c]
push eax
push str.USERPROFILE
call ebx
test eax, eax
jne 0x459dff
push edi
lea eax, [ebp - 0x7c]
push eax
push str.ProgramData
call ebx
test eax, eax
jne 0x459dff
push str.C:ProgramData
mov ecx, edi
lea eax, [ebp - 0x7c]
call fcn.00475883
pop ecx
lea eax, [ebp - 0x7c]
push 0x4ca6ec
push eax
call fcn.004a64f0
lea eax, [ebp - 0x7c]
push eax
push str._sPAULA_
push edi
push esi
call fcn.00476e0a
push esi
call fcn.004a63c0
add esp, 0x1c
mov dword [0x5fcbd4], eax
mov ebx, 0x5fd310
push esi
mov ecx, edi
mov eax, ebx
call fcn.00475883
mov ecx, dword [0x5fcbd4]
push esi
mov esi, 0x5fd418
mov eax, esi
call fcn.00475883
cmp dword [ebp - 0x80], 0
pop ecx
pop ecx
jne 0x459e62
cmp dword [ebp + 0x98], 0xffffffff
je 0x459ec6
mov eax, ebx
jmp 0x459ec6
cmp dword [ebp + 0x98], 0xffffffff
jne 0x459e7f
push esi
push dword [ebp - 0x80]
call fcn.004a64e0
push esi
call fcn.004a63c0
add esp, 0xc
jmp 0x459ec3
push ebx
push dword [ebp - 0x80]
call fcn.004a64e0
push ebx
call fcn.004a63c0
add esp, 0xc
cmp dword [ebp + 0x98], 0
je 0x459ec3
mov esi, dword [ebp - 0x80]
lea ecx, [ebp + 0x9c]
push ecx
push dword [ebp + 0x98]
sub edi, eax
add eax, esi
push edi
push eax
call fcn.004a81d8
add esp, 0x10
test eax, eax
jge 0x459ec3
mov byte [esi + 0x103], 0
mov eax, dword [ebp - 0x80]
mov ecx, dword [ebp + 0x88]
pop edi
pop esi
xor ecx, ebp
pop ebx
call fcn.004a69f5
add ebp, 0x8c
leave
ret
Function at 0x463682
Capabilities:
Write file on windows

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x58
push ebx
push edi
xor edi, edi
push 0x3e
lea eax, [ebp - 0x54]
push edi
push eax
mov dword [ebp - 0x58], edi
call fcn.004a7110
mov edx, dword [ebp + 8]
add esp, 0xc
mov dword [ebp - 4], edi
call fcn.00475851
test eax, eax
jne 0x4637e4
mov ecx, dword [ebp + 8]
push 0x15b4
push str..Printer.c
mov edx, 0x4c5348
call fcn.0041a89d
mov ebx, eax
cmp ebx, edi
pop ecx
pop ecx
mov dword [ebp - 8], ebx
je 0x4637e4
mov eax, esi
call fcn.0046550e
test eax, eax
je 0x4637dd
mov edx, esi
call fcn.0046551f
test eax, eax
je 0x4637dd
push 0x42
lea eax, [esi + 4]
push eax
lea eax, [ebp - 0x58]
push eax
call fcn.004a6a10
push ebx
push 0x42
lea eax, [ebp - 0x58]
push 1
push eax
call fcn.004a612e
mov ebx, dword [sym.imp.KERNEL32.dll_GlobalSize]
add esp, 0x1c
cmp dword [ebp - 0x50], edi
mov edi, dword [sym.imp.KERNEL32.dll_GlobalLock]
je 0x463776
push dword [esi + 0xc]
call edi
test eax, eax
mov dword [ebp - 0xc], eax
je 0x463772
push dword [esi + 0xc]
call ebx
test eax, eax
mov dword [ebp - 4], eax
jle 0x463763
push dword [ebp - 8]
lea eax, [ebp - 4]
push 4
push 1
push eax
call fcn.004a612e
push dword [ebp - 8]
push dword [ebp - 4]
push 1
push dword [ebp - 0xc]
call fcn.004a612e
add esp, 0x20
jmp 0x463767
and dword [ebp - 0x50], 0
push dword [esi + 0xc]
call dword [sym.imp.KERNEL32.dll_GlobalUnlock]
jmp 0x463776
and dword [ebp - 0x50], 0
cmp dword [ebp - 0x4c], 0
je 0x4637c9
push dword [esi + 0x10]
call edi
mov edi, eax
test edi, edi
je 0x4637c5
push dword [esi + 0x10]
call ebx
test eax, eax
mov dword [ebp - 4], eax
jle 0x4637b6
push dword [ebp - 8]
lea eax, [ebp - 4]
push 4
push 1
push eax
call fcn.004a612e
push dword [ebp - 8]
push dword [ebp - 4]
push 1
push edi
call fcn.004a612e
add esp, 0x20
jmp 0x4637ba
and dword [ebp - 0x4c], 0
push dword [esi + 0x10]
call dword [sym.imp.KERNEL32.dll_GlobalUnlock]
jmp 0x4637c9
and dword [ebp - 0x4c], 0
mov eax, esi
call fcn.00465552
mov ecx, dword [ebp - 8]
call fcn.0041acca
xor eax, eax
inc eax
jmp 0x4637e6
mov ecx, ebx
call fcn.0041acca
xor eax, eax
pop edi
pop ebx
leave
ret
Function at 0x468f97
Capabilities:
Terminate process

Disassembly:
push ebx
push esi
mov esi, ecx
test esi, esi
push edi
mov ebx, eax
jge 0x468fa9
call fcn.0040c382
mov esi, eax
test ebx, ebx
jge 0x468fb4
call fcn.0040c300
mov ebx, eax
test esi, esi
jle 0x468ffb
test ebx, ebx
jle 0x468ffb
push 1
push 0x1f8
call fcn.004a5f90
mov edi, eax
test edi, edi
pop ecx
pop ecx
je 0x468ffb
mov dword [edi], esi
imul esi, ebx
mov eax, esi
cdq
sub eax, edx
sar eax, 1
lea eax, [eax + esi + 0x14]
push eax
push 4
mov dword [edi + 4], ebx
call fcn.004a5f90
test eax, eax
pop ecx
pop ecx
mov dword [edi + 0x14], eax
jne 0x469001
push edi
call fcn.004a5de4
pop ecx
xor eax, eax
pop edi
pop esi
pop ebx
ret
xor eax, eax
test esi, esi
push 7
pop ebx
jle 0x46901e
mov ecx, dword [edi + 0x14]
mov byte [ecx + eax*4], 0x20
mov ecx, dword [edi + 0x14]
mov word [ecx + eax*4 + 2], bx
inc eax
cmp eax, esi
jl 0x46900a
mov eax, dword [0x6016ac]
test eax, eax
jne 0x469046
call fcn.00468599
test eax, eax
mov dword [0x6016ac], eax
jne 0x469046
push dword [edi + 0x14]
call fcn.004a5de4
push edi
call fcn.004a5de4
pop ecx
jmp 0x468ffa
mov ecx, dword [edi + 0x14]
lea ecx, [ecx + esi*4 + 4]
push 5
mov dword [edi + 0x24], ecx
lea ecx, [esi + 2]
pop edx
cmp ecx, edx
mov dword [edi + 0x20], ecx
jge 0x469060
mov dword [edi + 0x20], edx
mov dword [edi + 0x10], ebx
mov byte [edi + 0x1d], bl
push edi
mov ebx, eax
mov byte [edi + 0x1c], 9
call fcn.0046864b
lea ebx, [edi + 0x38]
mov dword [esp], str..ScreenBuffer.c
push ebx
call fcn.0041b39e
pop ecx
pop ecx
mov esi, str.A_ScreenBuffer_handle_had_to_be_forced_to_unlock___
mov eax, ebx
call fcn.0041b599
mov eax, 0x7d0
mov ecx, ebx
call fcn.0041b5c2
mov eax, edi
call fcn.0046b4b2
mov eax, edi
jmp 0x468ffd
Function at 0x46a29f
Capabilities:
Encrypt data using rc4 prga

Disassembly:
push 0x20
pop eax
jmp 0x46a2af
push ebx
push esi
push edi
mov esi, ecx
mov edi, 0x693
mov ebx, eax
call fcn.0046b44e
test eax, eax
je 0x46a35f
mov eax, esi
call fcn.0046b49c
test eax, eax
je 0x46a35f
test ebx, ebx
jge 0x46a2e0
mov ebx, 0xff
mov eax, dword [esi]
imul eax, dword [esi + 4]
xor edi, edi
test eax, eax
jle 0x46a34b
mov eax, dword [esi + 0x14]
lea eax, [eax + edi*4]
cmp byte [eax], bl
jne 0x46a302
test word [eax + 2], 0x2000
jne 0x46a302
xor ecx, ecx
jmp 0x46a307
xor ecx, ecx
mov byte [eax], bl
inc ecx
mov eax, dword [esi + 0x14]
lea eax, [eax + edi*4 + 2]
movzx edx, word [eax]
xor edx, dword [esi + 0x10]
test dl, dl
je 0x46a330
mov dl, byte [esi + 0x10]
and dx, 0xff
cmp ebx, 0xff
je 0x46a32d
or dx, 0x200
mov word [eax], dx
test ecx, ecx
je 0x46a340
mov eax, dword [esi + 0x14]
lea eax, [eax + edi*4 + 2]
or word [eax], 0x2000
mov eax, dword [esi]
imul eax, dword [esi + 4]
inc edi
cmp edi, eax
jl 0x46a2ec
and dword [esi + 8], 0
and dword [esi + 0xc], 0
mov eax, esi
call fcn.0046b4b2
xor eax, eax
inc eax
jmp 0x46a361
xor eax, eax
pop edi
pop esi
pop ebx
ret

Function at 0x46b4bf
Capabilities:
Write file on windows

Disassembly:
push 0x10
push 0x4fd040
call fcn.004ad06c
or dword [ebp - 0x1c], 0xffffffff
and dword [ebp - 4], 0
cmp dword [ebp + 0xc], 0
je 0x46b57b
push 1
mov esi, 0xfffc
push esi
call fcn.004a5f90
mov edi, eax
push 1
push esi
call fcn.004a5f90
mov esi, eax
lea eax, [ebp + 0x10]
push eax
push dword [ebp + 0xc]
push 0xffffffffffffffff
push 0xffdc
push edi
call fcn.004a8109
add esp, 0x24
xor ecx, ecx
mov dword [ebp - 0x20], ecx
lea eax, [edi + ecx]
mov dl, byte [eax]
cmp dl, 0xd
je 0x46b56e
cmp dl, 0xa
je 0x46b56e
add ecx, esi
mov byte [ecx], 0x1c
mov byte [ecx + 1], 0x1d
mov byte [ecx + 2], 0x1e
mov byte [ecx + 3], 0x1f
add ecx, 4
push ecx
call fcn.0046b714
pop ecx
push dword [ebp + 8]
push esi
call fcn.004a63c0
pop ecx
push eax
push 1
push esi
call fcn.004a612e
add esp, 0x10
mov dword [ebp - 0x1c], eax
cmp eax, 4
jle 0x46b55e
sub dword [ebp - 0x1c], 4
push edi
call fcn.004a5de4
push esi
call fcn.004a5de4
pop ecx
pop ecx
jmp 0x46b57b
mov byte [esi + ecx], dl
inc ecx
jmp 0x46b50f
mov dword [ebp - 4], 0xfffffffe
mov eax, dword [ebp - 0x1c]
call fcn.004ad0b1
ret

Function at 0x46c20d
Capabilities:
Set file attributes
Write file on windows

Disassembly:
push ecx
push esi
push 0x2bc
push str..Security.c
call fcn.0046c18c
mov edx, 0x4c5348
mov ecx, eax
call fcn.0041a89d
mov esi, eax
test esi, esi
pop ecx
pop ecx
je 0x46c25e
push esi
push 1
lea eax, [esp + 0x14]
push 4
push eax
call fcn.004a612e
add esp, 0x10
mov ecx, esi
call fcn.0041acca
push 2
push ecx
call fcn.0046c18c
pop ecx
push eax
call dword [sym.imp.KERNEL32.dll_SetFileAttributesA]
xor eax, eax
inc eax
pop esi
pop ecx
ret
Function at 0x46c261
Capabilities:
Read file on windows

Disassembly:
push ebp
mov ebp, esp
push ecx
push ecx
and dword [ebp - 4], 0
push esi
push edi
push 0x2d5
push str..Security.c
call fcn.0046c18c
mov edx, 0x4c520c
mov ecx, eax
call fcn.0041a89d
mov esi, eax
test esi, esi
pop ecx
pop ecx
jne 0x46c29f
call fcn.0046c18c
mov edi, eax
call fcn.00418e6b
xor eax, eax
jmp 0x46c2c3
push esi
push 1
lea eax, [ebp - 4]
push 4
push eax
call fcn.004a7455
add esp, 0x10
cmp eax, 1
jae 0x46c2b9
and dword [ebp - 4], 0
mov ecx, esi
call fcn.0041acca
mov eax, dword [ebp - 4]
pop edi
pop esi
leave
ret

Function at 0x46de64
Capabilities:
Write file on windows

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
sub esp, 0x12c
mov eax, dword [0x5005d0]
xor eax, esp
mov dword [esp + 0x128], eax
push ebx
push esi
push edi
push 0x103
lea eax, [esp + 0x2d]
mov ebx, ecx
mov esi, edx
push 0
push eax
mov dword [esp + 0x20], ebx
mov dword [esp + 0x1c], esi
mov byte [esp + 0x34], 0
call fcn.004a7110
and word [esp + 0x24], 0
xor eax, eax
lea edi, [esp + 0x26]
stosd dword es:[edi], eax
stosd dword es:[edi], eax
stosd dword es:[edi], eax
add esp, 0xc
test ebx, ebx
stosw word es:[edi], ax
jne 0x46dec7
test esi, esi
jne 0x46dec7
xor eax, eax
inc eax
jmp 0x46dfb7
push str.S7.tim
lea edi, [esp + 0x2c]
call fcn.004411be
test ebx, ebx
pop ecx
jne 0x46dee8
lea eax, [esp + 0x18]
mov dword [esp + 0x14], eax
xor edx, edx
mov ecx, eax
jmp 0x46defa
test esi, esi
jne 0x46df07
lea eax, [esp + 0x18]
mov dword [esp + 0x10], eax
mov esi, ebx
mov edx, eax
xor ecx, ecx
lea edi, [esp + 0x18]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
call fcn.0046dfcc
and dword [esp + 0xc], 0
mov edi, 0x190
lea esi, [edi - 0x64]
push 0x664
push str..ServerPAULA.c
mov edx, 0x4c5348
lea ecx, [esp + 0x30]
call fcn.0041a89d
mov ebx, eax
test ebx, ebx
pop ecx
pop ecx
jne 0x46df7c
call fcn.004a75cc
cdq
mov ecx, edi
idiv ecx
add edx, esi
js 0x46df65
call fcn.004a75cc
cdq
mov ecx, edi
idiv ecx
add edx, esi
cmp edx, 0x7fffffff
jge 0x46df65
call fcn.004a75cc
cdq
mov ecx, edi
idiv ecx
add edx, esi
push edx
jmp 0x46df67
push 0xa
call dword [sym.imp.KERNEL32.dll_Sleep]
inc dword [esp + 0xc]
cmp dword [esp + 0xc], 3
jl 0x46df14
xor eax, eax
jmp 0x46dfb7
xor esi, esi
push ebx
inc esi
push esi
push 0x10
push dword [esp + 0x20]
call fcn.004a612e
add esp, 0x10
cmp eax, esi
jne 0x46dfa7
push ebx
push esi
push 0x10
push dword [esp + 0x1c]
call fcn.004a612e
add esp, 0x10
cmp eax, esi
je 0x46dfa9
xor esi, esi
mov ecx, ebx
call fcn.0041acca
xor eax, eax
test esi, esi
setne al
mov ecx, dword [esp + 0x134]
pop edi
pop esi
pop ebx
xor ecx, esp
call fcn.004a69f5
mov esp, ebp
pop ebp
ret
Function at 0x46dfcc
Capabilities:
Read file on windows

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
sub esp, 0x12c
mov eax, dword [0x5005d0]
xor eax, esp
mov dword [esp + 0x128], eax
push ebx
push esi
push edi
push 0x103
lea eax, [esp + 0x2d]
mov esi, ecx
mov ebx, edx
push 0
push eax
mov dword [esp + 0x20], esi
mov dword [esp + 0x1c], ebx
mov byte [esp + 0x34], 0
call fcn.004a7110
and word [esp + 0x24], 0
xor eax, eax
lea edi, [esp + 0x26]
stosd dword es:[edi], eax
stosd dword es:[edi], eax
stosd dword es:[edi], eax
add esp, 0xc
stosw word es:[edi], ax
push str.S7.tim
lea edi, [esp + 0x2c]
call fcn.004411be
test esi, esi
pop ecx
jne 0x46e03a
lea eax, [esp + 0x18]
mov dword [esp + 0x14], eax
test ebx, ebx
jne 0x46e046
lea eax, [esp + 0x18]
mov dword [esp + 0x10], eax
and dword [esp + 0xc], 0
mov esi, 0x15e
lea ebx, [esi - 0x64]
push 0x6a1
push str..ServerPAULA.c
mov edx, 0x4c520c
lea ecx, [esp + 0x30]
call fcn.0041a89d
mov edi, eax
test edi, edi
pop ecx
pop ecx
jne 0x46e0e4
lea edi, [esp + 0x28]
call fcn.00418e6b
test eax, eax
je 0x46e0c4
call fcn.004a75cc
cdq
mov ecx, esi
idiv ecx
add edx, ebx
js 0x46e0b1
call fcn.004a75cc
cdq
mov ecx, esi
idiv ecx
add edx, ebx
cmp edx, 0x7fffffff
jge 0x46e0b1
call fcn.004a75cc
cdq
mov ecx, esi
idiv ecx
add edx, ebx
push edx
jmp 0x46e0b3
push 0xa
call dword [sym.imp.KERNEL32.dll_Sleep]
inc dword [esp + 0xc]
cmp dword [esp + 0xc], 3
jl 0x46e053
lea edi, [esp + 0x28]
call fcn.00418e6b
xor eax, eax
mov ecx, dword [esp + 0x134]
pop edi
pop esi
pop ebx
xor ecx, esp
call fcn.004a69f5
mov esp, ebp
pop ebp
ret
mov esi, dword [esp + 0x14]
xor ebx, ebx
push edi
inc ebx
push ebx
push 0x10
push esi
mov dword [esp + 0x1c], ebx
call fcn.004a7455
add esp, 0x10
cmp eax, ebx
jne 0x46e114
push edi
push ebx
push 0x10
push dword [esp + 0x1c]
call fcn.004a7455
add esp, 0x10
cmp eax, ebx
je 0x46e119
and dword [esp + 0xc], 0
mov ecx, edi
call fcn.0041acca
push ebx
sub esp, 0x10
mov edi, esp
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
call fcn.00498023
add esp, 0x14
test eax, eax
je 0x46e0cd
mov esi, dword [esp + 0x10]
push ebx
sub esp, 0x10
mov edi, esp
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
call fcn.00498023
add esp, 0x14
test eax, eax
je 0x46e0cd
xor eax, eax
cmp dword [esp + 0xc], eax
setne al
jmp 0x46e0cf
Function at 0x46e162
Capabilities:
Read file on windows

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x11c
mov eax, dword [0x5005d0]
xor eax, ebp
mov dword [ebp - 4], eax
push ebx
push esi
push edi
push 0x104
xor ebx, ebx
lea eax, [ebp - 0x10f]
mov edi, ecx
push ebx
push eax
mov dword [ebp - 0x118], edi
mov byte [ebp - 0x110], 0
call fcn.004a7110
add esp, 0xc
cmp edi, ebx
jne 0x46e1a9
xor eax, eax
jmp 0x46e29d
mov esi, 0x188
push esi
push ebx
push edi
call fcn.004a7110
add esp, 0xc
push str.eod.tim
lea edi, [ebp - 0x110]
call fcn.004411be
mov dword [ebp - 0x114], ebx
pop ecx
mov ebx, 0xfa
push 0x6ee
push str..ServerPAULA.c
mov edx, 0x4c520c
lea ecx, [ebp - 0x110]
call fcn.0041a89d
mov edi, eax
test edi, edi
pop ecx
pop ecx
jne 0x46e261
lea edi, [ebp - 0x110]
call fcn.00418e6b
test eax, eax
je 0x46e251
call fcn.004a75cc
mov edi, 0x226
cdq
mov ecx, edi
idiv ecx
add edx, ebx
js 0x46e23a
call fcn.004a75cc
cdq
mov ecx, edi
idiv ecx
add edx, ebx
cmp edx, 0x7fffffff
jge 0x46e23a
call fcn.004a75cc
cdq
idiv edi
add edx, ebx
push edx
jmp 0x46e23c
push 0xa
call dword [sym.imp.KERNEL32.dll_Sleep]
inc dword [ebp - 0x114]
cmp dword [ebp - 0x114], 3
jl 0x46e1d5
lea edi, [ebp - 0x110]
call fcn.00418e6b
jmp 0x46e1a2
push edi
push 1
push esi
push dword [ebp - 0x118]
call fcn.004a7455
add esp, 0x10
cmp eax, 1
mov ecx, edi
je 0x46e295
call fcn.0041acca
push esi
push 0
push dword [ebp - 0x118]
call fcn.004a7110
add esp, 0xc
jmp 0x46e1a2
call fcn.0041acca
xor eax, eax
inc eax
mov ecx, dword [ebp - 4]
pop edi
pop esi
xor ecx, ebp
pop ebx
call fcn.004a69f5
leave
ret

Function at 0x46e2ac
Capabilities:
Write file on windows

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x11c
mov eax, dword [0x5005d0]
xor eax, ebp
mov dword [ebp - 4], eax
push ebx
push esi
push edi
push 0x104
lea eax, [ebp - 0x10f]
mov esi, ecx
push 0
push eax
mov dword [ebp - 0x118], esi
mov byte [ebp - 0x110], 0
call fcn.004a7110
add esp, 0xc
test esi, esi
jne 0x46e2f2
xor eax, eax
jmp 0x46e3b4
push str.eod.tim
lea edi, [ebp - 0x110]
call fcn.004411be
and dword [ebp - 0x114], 0
mov ebx, dword [sym.imp.KERNEL32.dll_Sleep]
pop ecx
mov edi, 0x226
mov esi, 0x12c
push 0x721
push str..ServerPAULA.c
mov edx, 0x4c5348
lea ecx, [ebp - 0x110]
call fcn.0041a89d
test eax, eax
pop ecx
pop ecx
mov dword [ebp - 0x11c], eax
jne 0x46e389
call fcn.004a75cc
cdq
mov ecx, edi
idiv ecx
add edx, esi
js 0x46e371
call fcn.004a75cc
cdq
mov ecx, edi
idiv ecx
add edx, esi
cmp edx, 0x7fffffff
jge 0x46e371
call fcn.004a75cc
cdq
mov ecx, edi
idiv ecx
add edx, esi
push edx
jmp 0x46e373
push 0xa
call ebx
inc dword [ebp - 0x114]
cmp dword [ebp - 0x114], 3
jl 0x46e31a
jmp 0x46e2eb
push eax
xor esi, esi
inc esi
push esi
push 0x188
push dword [ebp - 0x118]
call fcn.004a612e
add esp, 0x10
cmp eax, esi
je 0x46e3a7
xor esi, esi
mov ecx, dword [ebp - 0x11c]
call fcn.0041acca
mov eax, esi
mov ecx, dword [ebp - 4]
pop edi
pop esi
xor ecx, ebp
pop ebx
call fcn.004a69f5
leave
ret
Function at 0x473780
Capabilities:
Terminate process

Disassembly:
push esi
mov esi, eax
test esi, esi
jne 0x47379f
mov esi, dword [0x60bc40]
test esi, esi
je 0x473804
call fcn.0046860e
and dword [0x60bc40], 0
jmp 0x473804
mov eax, dword [0x60bc40]
test eax, eax
jne 0x4737b8
call fcn.00468599
test eax, eax
mov dword [0x60bc40], eax
jne 0x4737b8
pop esi
ret
push ebx
push ebp
push edi
lea ebp, [esi + 0x130]
mov ebx, dword [ebp]
mov edi, eax
call fcn.00468922
test eax, eax
jne 0x4737de
push dword [ebp]
mov ebx, dword [0x60bc40]
call fcn.0046864b
pop ecx
xor ebx, ebx
cmp dword [esi], ebx
jle 0x473801
lea edi, [esi + 4]
mov eax, dword [edi]
call fcn.00474345
test eax, eax
je 0x4737f9
mov ecx, dword [edi]
call fcn.00473984
inc ebx
add edi, 4
cmp ebx, dword [esi]
jl 0x4737e7
pop edi
pop ebp
pop ebx
xor eax, eax
inc eax
pop esi
ret

Function at 0x4743d9
Capabilities:
Terminate process

Disassembly:
push esi
push edi
xor esi, esi
push 0x248
inc esi
push esi
call fcn.004a5f90
mov edi, eax
test edi, edi
pop ecx
pop ecx
jne 0x4743f8
xor eax, eax
jmp 0x47449f
push 0x30
push esi
call fcn.004a5f90
test eax, eax
pop ecx
pop ecx
mov dword [edi + 0x70], eax
jne 0x474412
push edi
call fcn.004a5de4
pop ecx
jmp 0x4743f1
cmp dword [0x60be8c], 0
mov dword [edi + 0x5c], esi
jne 0x47443c
call fcn.00468599
test eax, eax
mov dword [0x60be8c], eax
jne 0x47443c
mov eax, dword [edi + 0x70]
test eax, eax
je 0x474409
push eax
call fcn.004a5de4
pop ecx
jmp 0x474409
fld1
or dword [edi + 0x68], 0xffffffff
and dword [edi + 0x40], 0
fstp dword [edi + 0x44]
mov eax, 0xffff8000
push ebx
mov dword [edi + 0x38], eax
mov dword [edi + 0x3c], eax
call fcn.0040c404
lea ebx, [edi + 0x88]
push str..Sprite.c
push ebx
mov dword [edi + 0x7c], eax
call fcn.0041b39e
mov esi, str.A_sprite_handle_had_to_be_forced_to_unlock___
mov eax, ebx
call fcn.0041b599
mov eax, 0x7d0
mov ecx, ebx
call fcn.0041b5c2
mov ebx, dword [0x60be8c]
push edi
call fcn.0046864b
add esp, 0xc
mov eax, edi
call fcn.004756c5
mov eax, edi
pop ebx
pop edi
pop esi
ret
Function at 0x4782ee
Capabilities:
Terminate process

Disassembly:
push ebp
lea ebp, [esp - 0x88]
sub esp, 0x108
mov eax, dword [0x5005d0]
xor eax, ebp
mov dword [ebp + 0x84], eax
push esi
push edi
push 1
push 0x1f4
mov esi, ecx
call fcn.004a5f90
mov edi, eax
test edi, edi
pop ecx
pop ecx
jne 0x478328
xor eax, eax
jmp 0x478408
push 5
pop eax
push eax
push 0x10
mov dword [edi + 8], eax
call fcn.004a5f90
test eax, eax
pop ecx
pop ecx
mov dword [edi], eax
jne 0x478347
push edi
call fcn.004a5de4
pop ecx
jmp 0x478321
and dword [edi + 4], 0
and dword [edi + 0xc], 0
push ebx
mov ebx, dword [0x61072c]
test ebx, ebx
jne 0x478367
call fcn.00468599
mov ebx, eax
mov dword [0x61072c], ebx
push edi
call fcn.0046864b
xor eax, eax
cmp dword [0x61072c], eax
pop ecx
jne 0x47838b
push dword [edi]
call fcn.004a5de4
push edi
call fcn.004a5de4
pop ecx
pop ecx
xor eax, eax
jmp 0x478407
cmp esi, eax
je 0x4783c5
mov ebx, 0x103
push ebx
push eax
mov byte [ebp - 0x80], al
lea eax, [ebp - 0x7f]
push eax
call fcn.004a7110
push esi
mov ecx, ebx
lea eax, [ebp - 0x80]
call fcn.00475883
mov esi, eax
call fcn.00475b80
mov eax, esi
push eax
push 0x18
lea eax, [edi + 0x10]
pop ecx
call fcn.00475883
add esp, 0x14
mov eax, dword [ebp + 0x90]
mov dword [edi + 0x2c], eax
call fcn.00498efc
lea ebx, [edi + 0x34]
push str..StringList.c
push ebx
mov dword [edi + 0x30], eax
call fcn.0041b39e
pop ecx
pop ecx
mov esi, str.A_String_List_handle_had_to_be_forced_to_unlock___
mov eax, ebx
call fcn.0041b599
mov eax, 0x7d0
mov ecx, ebx
call fcn.0041b5c2
mov eax, edi
call fcn.00479e5d
mov eax, edi
pop ebx
mov ecx, dword [ebp + 0x84]
pop edi
xor ecx, ebp
pop esi
call fcn.004a69f5
add ebp, 0x88
leave
ret
Function at 0x479e6a
Capabilities:
Persist via run registry key

Disassembly:
push ebp
mov ebp, esp
push ecx
xor eax, eax
push eax
lea ecx, [ebp - 4]
push ecx
push eax
push 0xf003f
push eax
push eax
push eax
push str.SoftwareMicrosoftWindowsCurrentVersionRunOnce
push SysStringLen
mov dword [ebp - 4], eax
call dword [sym.imp.ADVAPI32.dll_RegCreateKeyExA]
test eax, eax
je 0x479e9a
xor eax, eax
inc eax
leave
ret
push dword [ebp - 4]
call dword [sym.imp.ADVAPI32.dll_RegCloseKey]
xor eax, eax
leave
ret

Function at 0x479ea7
Capabilities:
Connect network resource

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x44c
mov eax, dword [0x5005d0]
xor eax, ebp
mov dword [ebp - 4], eax
push ebx
push esi
push edi
push 7
pop ecx
xor ebx, ebx
xor eax, eax
mov esi, 0x103
lea edi, [ebp - 0x444]
push esi
mov dword [ebp - 0x448], ebx
rep stosd dword es:[edi], eax
lea eax, [ebp - 0x217]
push ebx
push eax
mov byte [ebp - 0x218], bl
call fcn.004a7110
add esp, 0xc
push esi
lea eax, [ebp - 0x427]
push ebx
push eax
mov byte [ebp - 0x428], bl
call fcn.004a7110
add esp, 0xc
push esi
lea eax, [ebp - 0x31f]
push ebx
push eax
mov byte [ebp - 0x320], bl
call fcn.004a7110
add esp, 0xc
push esi
lea eax, [ebp - 0x10f]
push ebx
push eax
mov byte [ebp - 0x110], bl
call fcn.004a7110
add esp, 0xc
lea eax, [ebp - 0x320]
push eax
lea eax, [ebp - 0x428]
push eax
lea ecx, [ebp - 0x218]
call fcn.0043c2a9
push 0x20
xor esi, esi
lea eax, [ebp - 0x448]
push ebx
inc esi
push eax
mov edi, esi
call fcn.004a7110
lea eax, [ebp - 0x110]
add esp, 0x14
mov dword [ebp - 0x434], eax
lea eax, [ebp - 0x218]
push eax
push str._s_tamspos
lea eax, [ebp - 0x110]
push 0x104
push eax
mov dword [ebp - 0x444], esi
mov dword [ebp - 0x438], 0x4dd640
mov dword [ebp - 0x42c], ebx
call fcn.00476e0a
add esp, 0x10
mov esi, 0x81
push esi
lea eax, [ebp - 0x428]
push eax
lea eax, [ebp - 0x320]
push eax
lea eax, [ebp - 0x448]
push eax
call sub.MPR.dll_WNetAddConnection2A
test eax, eax
je 0x479fde
push esi
push ebx
push ebx
lea eax, [ebp - 0x448]
push eax
call sub.MPR.dll_WNetAddConnection2A
test eax, eax
je 0x479fde
xor edi, edi
mov ecx, dword [ebp - 4]
mov eax, edi
pop edi
pop esi
xor ecx, ebp
pop ebx
call fcn.004a69f5
leave
ret