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

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
push 0xffffffffffffffff
push 0x505be6
mov eax, dword fs:[0]
push eax
sub esp, 0x70
mov eax, dword [0x5466b0]
xor eax, esp
mov dword [esp + 0x68], eax
push ebx
push esi
push edi
mov eax, dword [0x5466b0]
xor eax, esp
push eax
lea eax, [esp + 0x80]
mov dword fs:[0], eax
mov edx, dword [ebp + 8]
mov eax, dword [ebp + 0x14]
mov edi, dword [ebp + 0xc]
xor ebx, ebx
inc ebx
mov dword [esp + 0x1c], ecx
mov dword [esp + 0x18], eax
mov dword [esp + 0x20], ebx
cmp edx, ebx
jne 0x481d61
mov esi, 0x54cfe0
cmp dword [ebp + 0x10], ebx
jb 0x481d01
xor ecx, ecx
cmp edi, ecx
je 0x481d01
mov edi, dword [edi + 4]
cmp edi, ecx
je 0x481d01
cmp dword [edi], ebx
jne 0x481d01
mov dword [esp + 0x14], ecx
mov dword [esp + 0x88], ecx
mov dword [esp + 0x10], ecx
cmp dword [edi], ebx
jne 0x481c1b
mov edi, dword [edi + 8]
jmp 0x481c1d
xor edi, edi
push 0x51cbd8
lea eax, [esp + 0x14]
push edi
push eax
call fcn.004d0935
add esp, 0xc
cmp dword [esp + 0x10], 0
je 0x481ceb
push 2
xor edi, edi
push edi
push dword [esp + 0x18]
call fcn.004cf3a0
add esp, 0xc
push dword [esp + 0x10]
call fcn.004cf5c2
pop ecx
push edi
push edi
push dword [esp + 0x18]
mov ebx, eax
call fcn.004cf3a0
add esp, 0xc
lea eax, [ebx + 1]
push esi
push eax
call fcn.004cc21d
mov edi, eax
pop ecx
pop ecx
test edi, edi
je 0x481c80
push 0
call fcn.004cb380
pop ecx
mov dword [esp + 0x14], edi
test edi, edi
je 0x481ca7
lea eax, [ebx + 1]
push eax
push 0
push edi
call fcn.004d7710
add esp, 0xc
push dword [esp + 0x10]
push ebx
push 1
push edi
call fcn.004cf8d0
add esp, 0x10
push dword [esp + 0x10]
call fcn.004cf964
pop ecx
test edi, edi
je 0x481ceb
push dword [esp + 0x1c]
mov ecx, edi
call fcn.004820d9
mov edi, eax
test edi, edi
je 0x481ceb
push esi
push 0x10
call fcn.004cba2a
pop ecx
pop ecx
test eax, eax
je 0x481cdf
mov dword [eax + 8], edi
mov dword [eax], 5
jmp 0x481ce1
xor eax, eax
mov ecx, dword [esp + 0x18]
push eax
call fcn.0040ed50
or dword [esp + 0x88], 0xffffffff
push dword [esp + 0x14]
call fcn.004cb380
mov eax, dword [esp + 0x1c]
pop ecx
cmp dword [eax + 4], 0
jne 0x4820b2
push esi
push 0x10
call fcn.004cba2a
pop ecx
mov edi, eax
pop ecx
mov dword [esp + 0x1c], edi
mov dword [esp + 0x88], 1
test edi, edi
je 0x481e75
push esi
push 0x20
call fcn.004cba2a
pop ecx
pop ecx
mov dword [esp + 0x14], eax
mov byte [esp + 0x88], 2
test eax, eax
je 0x481d51
mov esi, eax
call fcn.00460b7c
jmp 0x481d53
xor eax, eax
mov dword [edi + 8], eax
mov dword [edi], 5
jmp 0x481e77
cmp edx, 2
jne 0x481e8e
cmp dword [ebp + 0x10], ebx
jb 0x4820b2
test edi, edi
je 0x4820b2
mov edi, dword [edi + 4]
cmp dword [edi], 1
jne 0x481dd7
mov edi, dword [edi + 8]
push ecx
mov ecx, edi
call fcn.004820d9
mov esi, eax
test esi, esi
jne 0x481e04
mov esi, 0x54cfe0
push esi
push 0x10
call fcn.004cba2a
pop ecx
mov edi, eax
pop ecx
mov dword [esp + 0x1c], edi
mov dword [esp + 0x88], 3
test edi, edi
je 0x481e75
push esi
push 0x20
call fcn.004cba2a
pop ecx
pop ecx
mov dword [esp + 0x14], eax
mov byte [esp + 0x88], 4
jmp 0x481d44
cmp dword [edi], 6
jne 0x4820b2
mov edi, dword [edi + 8]
test edi, edi
je 0x4820b2
mov edi, dword [edi + 4]
test edi, edi
je 0x4820b2
push ecx
mov ecx, edi
call fcn.004820d9
mov esi, eax
test esi, esi
je 0x481e26
push 0x54cfe0
push 0x10
call fcn.004cba2a
pop ecx
pop ecx
test eax, eax
je 0x481e21
mov dword [eax + 8], esi
mov dword [eax], 5
jmp 0x481e23
xor eax, eax
push eax
jmp 0x481e80
mov esi, 0x54cfe0
push esi
push 0x10
call fcn.004cba2a
pop ecx
mov edi, eax
pop ecx
mov dword [esp + 0x1c], edi
push 5
pop ebx
mov dword [esp + 0x88], ebx
test edi, edi
je 0x481e75
push esi
push 0x20
call fcn.004cba2a
pop ecx
pop ecx
mov dword [esp + 0x14], eax
mov byte [esp + 0x88], 6
test eax, eax
je 0x481e6c
mov esi, eax
call fcn.00460b7c
jmp 0x481e6e
xor eax, eax
mov dword [edi + 8], eax
mov dword [edi], ebx
jmp 0x481e77
xor edi, edi
or dword [esp + 0x88], 0xffffffff
push edi
mov ecx, dword [esp + 0x1c]
call fcn.0040ed50
jmp 0x4820b2
cmp edx, 3
jne 0x481ec7
cmp dword [ebp + 0x10], ebx
jb 0x4820b2
test edi, edi
je 0x4820b2
mov edi, dword [edi + 4]
test edi, edi
je 0x4820b2
cmp dword [edi], 5
jne 0x4820b2
mov edi, dword [edi + 8]
push eax
call fcn.004829f6
pop ecx
jmp 0x4820b2
cmp edx, 4
jne 0x4820a3
cmp dword [ebp + 0x10], 2
jb 0x4820b2
test edi, edi
je 0x4820b2
mov eax, dword [edi + 4]
test eax, eax
je 0x4820b2
cmp dword [eax], 5
jne 0x4820b2
mov eax, dword [edi + 0x10]
cmp dword [eax], 1
jne 0x4820b2
push 0
lea ecx, [esp + 0x5c]
mov dword [esp + 0x58], vtable.Json::FastWriter.0
mov dword [esp + 0x74], 0xf
call fcn.00401830
mov byte [esp + 0x74], 0
push 0
lea esi, [esp + 0x28]
mov dword [esp + 0x8c], 7
call fcn.0044e9e0
mov byte [esp + 0x88], 8
mov eax, dword [edi + 4]
cmp dword [eax], 5
jne 0x481f4d
mov esi, dword [eax + 8]
jmp 0x481f4f
xor esi, esi
test esi, esi
je 0x481fd1
mov eax, dword [esi]
mov ecx, esi
call dword [eax + 0x5c]
and dword [esp + 0x10], 0
mov dword [esp + 0x1c], eax
test eax, eax
jbe 0x481fd1
push dword [esp + 0x10]
mov eax, dword [esi]
lea ecx, [esp + 0x3c]
push ecx
mov ecx, esi
call dword [eax + 0x50]
mov byte [esp + 0x88], 9
mov ebx, dword [esp + 0x3c]
test ebx, ebx
je 0x481f9c
mov eax, ebx
call fcn.0040ef50
test al, al
je 0x481f9c
cmp dword [ebx], 1
jne 0x481f9c
mov ebx, dword [ebx + 8]
jmp 0x481f9e
xor ebx, ebx
lea eax, [esp + 0x44]
push eax
lea eax, [esp + 0x28]
push ebx
push eax
call fcn.00482876
add esp, 0xc
lea eax, [esp + 0x38]
push eax
mov byte [esp + 0x8c], 8
call fcn.0040cf60
inc dword [esp + 0x10]
mov eax, dword [esp + 0x10]
cmp eax, dword [esp + 0x1c]
jb 0x481f67
mov edi, dword [edi + 0x10]
xor esi, esi
and dword [esp + 0x14], esi
cmp dword [edi], 1
jne 0x481fe4
mov edi, dword [edi + 8]
jmp 0x481fe6
xor edi, edi
push 0x51dc04
lea eax, [esp + 0x18]
push edi
push eax
call fcn.004d0935
add esp, 0xc
cmp dword [esp + 0x14], 0
je 0x48204a
lea eax, [esp + 0x24]
push eax
lea eax, [esp + 0x3c]
push eax
lea ecx, [esp + 0x5c]
call fcn.00452a70
cmp dword [esp + 0x50], 0x10
mov eax, dword [esp + 0x3c]
jae 0x482022
lea eax, [esp + 0x3c]
push dword [esp + 0x14]
push dword [esp + 0x50]
push 1
push eax
call fcn.004d1083
push dword [esp + 0x24]
call fcn.004cf964
xor esi, esi
add esp, 0x14
lea ecx, [esp + 0x38]
inc esi
call fcn.004018a0
push 0x54cfe0
push 0x10
call fcn.004cba2a
pop ecx
pop ecx
mov ecx, eax
mov dword [esp + 0x1c], ecx
mov byte [esp + 0x88], 0xa
test ecx, ecx
je 0x482073
mov eax, esi
call fcn.0040c000
jmp 0x482075
xor eax, eax
mov ecx, dword [esp + 0x18]
push eax
mov byte [esp + 0x8c], 8
call fcn.0040ed50
lea eax, [esp + 0x24]
mov byte [esp + 0x88], 7
call fcn.0044ed30
lea ecx, [esp + 0x54]
call fcn.0040f280
jmp 0x4820b2
push eax
push dword [ebp + 0x10]
push edi
push edx
call fcn.0046626b
mov dword [esp + 0x20], eax
mov eax, dword [esp + 0x20]
mov ecx, dword [esp + 0x80]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [esp + 0x68]
xor ecx, esp
call fcn.004cb38b
mov esp, ebp
pop ebp
ret 0x10