Function at 0x482730
Capabilities:
Read file on windows
Write file on windows

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x53ebb0
mov eax, dword fs:[0]
push eax
sub esp, 0x88
mov eax, dword [0x58d984]
xor eax, ebp
mov dword [ebp - 0x10], eax
push ebx
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov edi, ecx
mov dword [ebp - 0x88], edi
cmp dword [edi + 0x34], 8
lea ebx, [edi + 0x20]
mov dword [ebx + 0x10], 0
mov eax, ebx
jb 0x48277a
mov eax, dword [ebx]
xor ecx, ecx
mov word [eax], cx
mov eax, 0x559b50
mov ecx, dword [edi + 4]
test cl, 0x40
je 0x482793
mov eax, 0x559b58
jmp 0x48279d
test cl, 0x20
je 0x48279d
mov eax, 0x559b60
push eax
push dword [ebp + 8]
mov dword [edi], 0
call fcn.005218b4
add esp, 8
mov dword [edi], eax
test eax, eax
jne 0x4827c1
mov ecx, edi
call fcn.00482380
jmp 0x482af7
mov ecx, dword [edi + 4]
xor esi, esi
mov byte [ebp - 0x81], 1
mov dword [edi + 0x18], 1
test cl, 0x10
je 0x482a1c
push 2
push esi
push eax
call fcn.0052224c
push dword [edi]
call fcn.00522845
push esi
push esi
push dword [edi]
mov dword [edi + 0x10], eax
call fcn.0052224c
mov eax, dword [edi + 0x10]
mov ebx, 0x400
add esp, 0x1c
mov dword [ebp - 0x90], ebx
cmp eax, ebx
jge 0x48281e
mov ebx, eax
mov dword [ebp - 0x90], ebx
test ebx, ebx
je 0x482ab8
push ebx
call fcn.004eda7d
push dword [edi]
mov dword [ebp - 0x8c], eax
push 1
push ebx
push eax
call fcn.00521ec7
add esp, 0x14
cmp eax, 1
sete byte [ebp - 0x81]
jne 0x482a02
and dword [edi + 4], 0xfffffffa
xor ecx, ecx
mov dword [ebp - 0x94], ecx
cmp dword [0x58d218], ecx
je 0x4828e4
xor edx, edx
mov ebx, dword [edx + 0x58d21c]
xor esi, esi
test ebx, ebx
jle 0x48289d
mov edi, dword [ebp - 0x90]
cmp esi, edi
jge 0x482891
mov eax, dword [ebp - 0x8c]
mov ecx, dword [edx + 0x58d218]
mov al, byte [eax + esi]
cmp al, byte [esi + ecx]
jne 0x482891
inc esi
cmp esi, ebx
jl 0x482874
mov edi, dword [ebp - 0x88]
mov ecx, dword [ebp - 0x94]
cmp esi, ebx
je 0x4828b9
inc ecx
xor esi, esi
mov edx, ecx
mov dword [ebp - 0x94], ecx
shl edx, 4
cmp dword [edx + 0x58d218], esi
jne 0x482862
jmp 0x4828de
shl ecx, 4
mov eax, dword [ecx + 0x58d224]
or eax, dword [edi + 4]
mov dword [edi + 4], eax
cmp esi, 2
jne 0x4828d0
mov dword [edi + 0x18], esi
push dword [ecx + 0x58d220]
lea ecx, [edi + 0x38]
call fcn.004102c0
mov ebx, dword [ebp - 0x90]
cmp ebx, esi
jle 0x4828f5
push 0
push esi
push dword [edi]
call fcn.0052224c
add esp, 0xc
test esi, esi
jne 0x4829d0
xor eax, eax
mov dword [ebp - 0x18], esi
mov dword [ebp - 0x14], 7
mov word [ebp - 0x28], ax
push ebx
push dword [ebp - 0x8c]
mov dword [ebp - 4], eax
push ecx
mov eax, esp
lea ecx, [ebp - 0x80]
mov dword [eax], 0x5584f4
call fcn.00481700
xor ecx, ecx
mov byte [ebp - 4], 1
lea eax, [ebx + 1]
mov edx, 2
mul edx
seto cl
neg ecx
or ecx, eax
push ecx
call fcn.004eda7d
add esp, 4
mov dword [ebp - 0x88], eax
cmp dword [ebp - 0x14], ebx
jge 0x48295c
push ebx
lea ecx, [ebp - 0x28]
call fcn.00448c90
push ecx
mov eax, esp
mov dword [ebp - 0x48], ebx
mov ebx, dword [ebp - 0x88]
lea ecx, [ebp - 0x80]
push ebx
mov dword [eax], str.UTF_16
call fcn.00485650
push eax
push ebx
push dword [ebp - 0x18]
lea ecx, [ebp - 0x28]
push 0
call fcn.004866b0
push ebx
call fcn.004eda86
cmp dword [ebp - 0x14], 8
lea eax, [ebp - 0x28]
mov ecx, esp
jb 0x48299a
mov eax, dword [ebp - 0x28]
mov dword [ecx], eax
lea eax, [ebp - 0x40]
push eax
call fcn.00483c90
add esp, 8
lea ecx, [edi + 0x38]
push eax
call fcn.0041b310
lea ecx, [ebp - 0x40]
call fcn.00403110
lea ecx, [ebp - 0x80]
call fcn.00410220
lea ecx, [ebp - 0x28]
mov dword [ebp - 4], 0xffffffff
call fcn.00403110
cmp dword [edi + 0x48], 0
lea ecx, [edi + 0x38]
mov ebx, dword [ebp - 0x8c]
jne 0x482a08
cmp byte [ebx], 0x3c
jne 0x482a08
push 0x5584f4
call fcn.004102c0
push ebx
call fcn.004eda86
mov al, byte [ebp - 0x81]
add esp, 4
jmp 0x482ab0
mov ebx, dword [ebp - 0x8c]
push ebx
call fcn.004eda86
mov al, byte [ebp - 0x81]
add esp, 4
jmp 0x482ab0
test cl, 0x20
je 0x482abb
test cl, 0x40
je 0x482a41
push 2
push 0
push eax
call fcn.0052224c
push dword [edi]
call fcn.00522845
add esp, 0x10
mov dword [edi + 0x10], eax
xor ebx, ebx
cmp dword [0x58d218], ebx
je 0x482ab8
mov ecx, dword [edi + 4]
xor eax, eax
test dword [eax + 0x58d224], ecx
jne 0x482a68
inc ebx
mov eax, ebx
shl eax, 4
cmp dword [eax + 0x58d218], esi
jne 0x482a50
jmp 0x482ab8
shl ebx, 4
mov esi, dword [ebx + 0x58d21c]
cmp esi, 2
jne 0x482a79
mov dword [edi + 0x18], esi
push dword [ebx + 0x58d220]
lea ecx, [edi + 0x38]
call fcn.004102c0
cmp dword [edi + 0x10], 0
je 0x482a91
xor esi, esi
jmp 0x482ab8
push dword [edi]
push 1
push esi
push dword [ebx + 0x58d218]
call fcn.00522a88
add esp, 0x10
cmp eax, 1
sete al
mov byte [ebp - 0x81], al
test al, al
je 0x4827b5
lea ebx, [edi + 0x20]
test byte [edi + 4], 0x40
je 0x482ac9
mov eax, dword [edi + 0x10]
mov dword [edi + 0x14], eax
jmp 0x482acc
mov dword [edi + 0x14], esi
test esi, esi
je 0x482af1
push 0xffffffffffffffff
push 0xffffffffffffffff
push 0
push ecx
mov eax, esp
push ecx
mov ecx, esp
push ebx
mov dword [eax], 0
mov dword [ecx], 0x559b68
call fcn.00486c40
add esp, 0x18
mov al, byte [ebp - 0x81]
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.004eda39
mov esp, ebp
pop ebp
ret 4