Function at 0x458b40
Capabilities:
Write file on windows

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x548ede
mov eax, dword fs:[0]
push eax
sub esp, 0x918
mov eax, dword [0x672114]
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 eax, dword [ebp + 8]
mov dword [ebp - 0x918], eax
mov eax, dword [ebp + 0xc]
mov dword [ebp - 0x910], eax
call fcn.00402160
mov eax, dword [0x674ab4]
test eax, eax
jne 0x458bc0
push 0xc
call fcn.00474152
add esp, 4
mov dword [ebp - 0x914], eax
mov dword [ebp - 4], 0
test eax, eax
je 0x458bb2
mov ecx, eax
call fcn.0043a720
jmp 0x458bb4
xor eax, eax
mov dword [ebp - 4], 0xffffffff
mov dword [0x674ab4], eax
push 0x103
lea ecx, [ebp - 0x820]
push ecx
mov ecx, eax
call fcn.0043a750
mov dword [ebp - 4], 1
call fcn.00402160
cmp dword [ebp - 0x80c], 0x10
lea ebx, [ebp - 0x820]
cmovae ebx, dword [ebp - 0x820]
lea ecx, [ebx + 1]
mov al, byte [ebx]
inc ebx
test al, al
jne 0x458bf6
sub ebx, ecx
mov dword [ebp - 0x914], ebx
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp - 0x90c], eax
mov dword [ebp - 0x924], 0
mov dword [ebp - 0x920], 0
mov dword [ebp - 0x91c], 0
mov ecx, 0x6a
mov byte [ebp - 4], 2
mov esi, str.0Ck2sSZ2oZiRRcLCsPn0Cl440rLzKYVEY72XjQ1CtMiX0mBMqq7b6u7CaMJy1Msg697LCub5K7jN1j7VRzyUEhGsHBgp9JBXHmHeEfRlcefucnyGgiPuGOaAqDpv8YRaEMIqwn2D9TkSytSERisOoTwReI0DZ31fLACINMnEkl2vKjEJAbJEYSI4BC7hTA4BoG4er6NT083jlSLBJAzy6tRNSZH2wZFdt4HWbwf2akRhcATzqwcXWM6R5TIUxyCCCHxCzGtolSstr4suHqSXJMljC3GV7E5yHT9zJbGtyCVjR736BVAd5knVPjb99opOnxOhyOT39UYTcAwOj9pFK3jlMbZIEQWUEShXMyn90k89hBXqRoeDtRiCVfPHG0n69JSHjPIb8Ag8xU5oS9kROBhiFgTmckEmVWMLxft
mov dword [ebp - 0x83c], 0xf
lea edi, [ebp - 0x3fc]
mov dword [ebp - 0x840], 0
rep movsd dword es:[edi], dword [esi]
cmp byte [ebp - 0x3fc], 0
mov byte [ebp - 0x850], 0
jne 0x458c6d
xor ecx, ecx
jmp 0x458c7f
lea ecx, [ebp - 0x3fc]
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x458c76
sub ecx, edx
push ecx
lea eax, [ebp - 0x3fc]
push eax
lea ecx, [ebp - 0x850]
call fcn.00407f10
lea eax, [ebp - 0x850]
mov byte [ebp - 4], 3
push eax
lea ecx, [ebp - 0x924]
call fcn.00408170
mov eax, dword [ebp - 0x83c]
mov byte [ebp - 4], 2
cmp eax, 0x10
jb 0x458cca
inc eax
lea ecx, [ebp - 0x850]
push eax
push dword [ebp - 0x850]
call fcn.00408010
mov eax, dword [ebp - 0x90c]
cdq
push edx
push eax
lea eax, [ebp - 0x868]
push eax
call fcn.004cddd6
add esp, 0xc
mov eax, dword [0x674ab4]
mov byte [ebp - 4], 4
test eax, eax
jne 0x458d1b
push 0xc
call fcn.00474152
add esp, 4
mov dword [ebp - 0x90c], eax
mov byte [ebp - 4], 5
test eax, eax
je 0x458d10
mov ecx, eax
call fcn.0043a720
jmp 0x458d12
xor eax, eax
mov byte [ebp - 4], 4
mov dword [0x674ab4], eax
push 0x102
lea ecx, [ebp - 0x880]
push ecx
mov ecx, eax
call fcn.0043a750
push 0xffffffffffffffff
push 0
push eax
lea ecx, [ebp - 0x868]
mov byte [ebp - 4], 6
call fcn.00409720
mov eax, dword [ebp - 0x86c]
cmp eax, 0x10
jb 0x458d60
inc eax
lea ecx, [ebp - 0x880]
push eax
push dword [ebp - 0x880]
call fcn.00408010
mov dword [ebp - 0x844], 0
mov dword [ebp - 0x840], 0
mov dword [ebp - 0x83c], 0
mov ecx, 0x7a
mov byte [ebp - 4], 7
mov esi, str.c8hwJqJbrGjiQoaD6T4NzArKXGY4bvOLhrqNGfnQBUVBX0jBx293nnOqpDU3fu02wP98ruayMQVXnuuvmadIXSd2xtPyC6nP6CWeJabj2q9eLHDbzPvcEwvqq7Au0bBAzvpILPRkK2GNWEUptJe4bcP0XLULEJpfSsf1r50czYd4qhdtvzyPNd845uj4ORyGOhEReK1jFlHytbepiSwFA8dOBhktGLIfHpCwbj7UIxRMDcBP1EziBfzvxNUPv7YXJUGNEAF2dLt601her8UBTtM3Vqdij2pGSozkkHJyln7Xg6CdKKSI7ZCzanYeSEeKayz1E54XdNnRmfYTRB4DoRidCHayUf8QpwgcDwTp49SPmeuIXyevmu5RCLEyJZGcgVQR6SCpFlQEMLabnEh6oRidYmTHTULqxgp17XJ5oqwk5hm8yG8BtBkIWjXT1nu660lGvH8XUmJjD0pWG3xyHXQdDU1VSzbMwuiqreK3Ar
mov dword [ebp - 0x824], 0xf
lea edi, [ebp - 0x5e8]
mov dword [ebp - 0x828], 0
rep movsd dword es:[edi], dword [esi]
mov byte [ebp - 0x838], 0
movsw word es:[edi], word [esi]
movsb byte es:[edi], byte [esi]
cmp byte [ebp - 0x5e8], 0
jne 0x458dbf
xor ecx, ecx
jmp 0x458dd1
lea ecx, [ebp - 0x5e8]
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x458dc8
sub ecx, edx
push ecx
lea eax, [ebp - 0x5e8]
push eax
lea ecx, [ebp - 0x838]
call fcn.00407f10
lea eax, [ebp - 0x838]
mov byte [ebp - 4], 8
push eax
lea ecx, [ebp - 0x844]
call fcn.00408170
mov eax, dword [ebp - 0x824]
mov byte [ebp - 4], 7
cmp eax, 0x10
jb 0x458e1c
inc eax
lea ecx, [ebp - 0x838]
push eax
push dword [ebp - 0x838]
call fcn.00408010
lea ecx, [ebp - 0x904]
call fcn.004e7341
cmp dword [ebp - 0x854], 0x10
lea eax, [ebp - 0x868]
push dword [ebp - 0x858]
cmovae eax, dword [ebp - 0x868]
lea ecx, [ebp - 0x904]
push eax
call fcn.004e7d0d
lea eax, [ebp - 0x898]
push eax
lea ecx, [ebp - 0x904]
call fcn.004e755b
mov dword [ebp - 0x90c], 0
mov dword [ebp - 0x82c], 0
mov dword [ebp - 0x828], 0
mov dword [ebp - 0x824], 0
mov ecx, 0x54
mov byte [ebp - 4], 0xa
mov esi, str.LXza9MB8BEYqe2zzqZTG82FuUOdULopOulypjeqFCdA8zFY3yz3IHKeeJNcjXtCblnucDUvnvISYafJSyPlsVmV2j7UAQZMS8fKswQgU9bb99Q1nZKYURQmkJVwJhYA1ibQyL5qzAcIHVSfDthfsEYSM692xaMDpiYiIzvaejgRvPAIeMxBEr7budzDa8YUBs3rDMHCAOzt82SN8hrNDZ7FVWJkZGo74hJGYGARGrpK5mcx8cep5ckUXUoqSTci6wezHaH148HmWSVUOz4O4KloGAm1I4tsj4jEkycAcCb3k3RVMGIV58EAZMA2aaPBtPcKs8pKdMnfI97XgvV
mov dword [ebp - 0x7f4], 0xf
lea edi, [ebp - 0x254]
mov dword [ebp - 0x7f8], 0
rep movsd dword es:[edi], dword [esi]
mov byte [ebp - 0x808], 0
movsw word es:[edi], word [esi]
movsb byte es:[edi], byte [esi]
cmp byte [ebp - 0x254], 0
jne 0x458ec8
xor ecx, ecx
jmp 0x458eda
lea ecx, [ebp - 0x254]
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x458ed1
sub ecx, edx
push ecx
lea eax, [ebp - 0x254]
push eax
lea ecx, [ebp - 0x808]
call fcn.00407f10
lea eax, [ebp - 0x808]
mov byte [ebp - 4], 0xb
push eax
lea ecx, [ebp - 0x82c]
call fcn.00408170
mov eax, dword [ebp - 0x7f4]
mov byte [ebp - 4], 0xa
cmp eax, 0x10
jb 0x458f25
inc eax
lea ecx, [ebp - 0x808]
push eax
push dword [ebp - 0x808]
call fcn.00408010
xor esi, esi
xor edi, edi
mov dword [ebp - 0x908], esi
cmp dword [ebp + 0x10], esi
jle 0x458fcd
nop dword [eax + eax]
push 0
lea ecx, [ebp - 0x820]
call fcn.00456b10
mov ecx, dword [ebp - 0x910]
mov cl, byte [ecx + edi]
cmp cl, byte [eax]
jne 0x458fc3
test esi, esi
jne 0x458fcd
xor edx, edx
mov dword [ebp - 0x90c], edi
test ebx, ebx
jle 0x458fbd
nop word [eax + eax]
cmp dword [ebp - 0x80c], 0x10
lea ecx, [ebp - 0x820]
mov eax, dword [ebp - 0x910]
cmovae ecx, dword [ebp - 0x820]
add eax, edi
mov ebx, dword [ebp - 0x914]
mov al, byte [eax + edx]
cmp al, byte [ecx + edx]
jne 0x458fb3
inc esi
cmp esi, ebx
je 0x458fa6
inc edx
cmp edx, ebx
jl 0x458f70
jmp 0x458fbd
mov esi, 1
mov dword [ebp - 0x908], esi
jmp 0x458fc3
mov dword [ebp - 0x90c], 0
mov esi, dword [ebp - 0x908]
inc edi
cmp edi, dword [ebp + 0x10]
jl 0x458f40
call fcn.0047a01f
cmp dword [ebp - 0x80c], 0x10
lea ecx, [ebp - 0x820]
cmovae ecx, dword [ebp - 0x820]
lea edx, [ecx + 1]
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x458ff0
mov esi, dword [ebp - 0x90c]
sub ecx, edx
mov ebx, dword [ebp - 0x908]
add esi, ecx
test ebx, ebx
je 0x45905f
mov edi, dword [ebp - 0x884]
lea edx, [ebp - 0x898]
mov ebx, dword [ebp - 0x898]
cmp edi, 0x10
cmovae edx, ebx
lea ecx, [edx + 1]
mov al, byte [edx]
inc edx
test al, al
jne 0x459026
sub edx, ecx
xor ecx, ecx
add esi, dword [ebp - 0x910]
cmp ecx, edx
jge 0x45904f
cmp edi, 0x10
lea eax, [ebp - 0x898]
cmovae eax, ebx
mov al, byte [ecx + eax]
mov byte [esi + ecx], al
jmp 0x459053
mov byte [esi + ecx], 0
inc ecx
cmp ecx, 0x20
jl 0x459037
mov ebx, dword [ebp - 0x908]
mov dword [ebp - 0x7fc], 0
mov dword [ebp - 0x7f8], 0
mov dword [ebp - 0x7f4], 0
mov ecx, 0x7b
mov byte [ebp - 4], 0xc
mov esi, str.V18rrFfCVaR4Hg4vsgDhVzClBGBoZbfLeoADpS57SCyH0NHMlTbFUTKmFv4vWVFNHT1p4x6abbmWkfU8utAuXyiZebfA3T97Bj0yYVWFZEqvMacfF0dXykUmRchMLkm8vI3YBiyCOpscUgdUR3QKWepnvvBkdWP0l4vSYKI1tOGAVGAvsT27Opwwaj7kj92X0lJNs46pnXlR0L2anrFUzKKIvUi5IoOjTRNBzkpH2EIH3d7Ws3ZBOFwVdFD037wyexuY1Y6dn49cOSwMPfUFiKMfthxurUYPL3xXxcQPLAF27UQek3HuqvBP1Gpmzay70dvQBE0irZbNcScQrhB2oj25wwpSDDwhnqy3ETqQkHh85fYk17hDvGo6xWU715g9IOvpPtZHkNu1y9XR4IU0R4m9UMXKBwe8IDsg1wa38nwSisw28xNrVMKF7c8LmS2zV5yMKpjxn5bUfX8dq7cO3Tho6eiFWObjUOwr9gTfBenTp
mov dword [ebp - 0x7dc], 0xf
lea edi, [ebp - 0x7d8]
mov dword [ebp - 0x7e0], 0
rep movsd dword es:[edi], dword [esi]
mov byte [ebp - 0x7f0], 0
movsw word es:[edi], word [esi]
cmp byte [ebp - 0x7d8], 0
jne 0x4590bd
xor ecx, ecx
jmp 0x4590cf
lea ecx, [ebp - 0x7d8]
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x4590c6
sub ecx, edx
push ecx
lea eax, [ebp - 0x7d8]
push eax
lea ecx, [ebp - 0x7f0]
call fcn.00407f10
lea eax, [ebp - 0x7f0]
mov byte [ebp - 4], 0xd
push eax
lea ecx, [ebp - 0x7fc]
call fcn.00408170
mov eax, dword [ebp - 0x7dc]
mov byte [ebp - 4], 0xc
cmp eax, 0x10
jb 0x45911a
inc eax
lea ecx, [ebp - 0x7f0]
push eax
push dword [ebp - 0x7f0]
call fcn.00408010
test ebx, ebx
je 0x459293
mov dword [ebp - 0x7e4], 0
mov dword [ebp - 0x7e0], 0
mov dword [ebp - 0x7dc], 0
mov ecx, 0x3b
mov byte [ebp - 4], 0xe
mov esi, str.D2Iuu3Z1WTsG3icEbvROgoyZlIqAnNGJqS4nXqJm54yR8cD5Hk5c9edCVBwQtqi2G9hEAhnaR96r9ArwvfBjqYyOf0aPcvBt2em4yg5wExRFMBSetcNcGjbOvy0wLRu1zSX4eaussKoP4aLMovV5w6OLl4OxeAL9PVeVy1YJ5JXHbsS6k4VymGJiHnQb9fm4uWAmFyp4RtSlFQQvf3sT13fxcfFxWVglKeJT21CWRHEGa
mov dword [ebp - 0x86c], 0xf
lea edi, [ebp - 0x100]
mov dword [ebp - 0x870], 0
rep movsd dword es:[edi], dword [esi]
mov byte [ebp - 0x880], 0
movsw word es:[edi], word [esi]
cmp byte [ebp - 0x100], 0
jne 0x459180
xor ecx, ecx
jmp 0x459199
lea ecx, [ebp - 0x100]
lea edx, [ecx + 1]
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x459190
sub ecx, edx
push ecx
lea eax, [ebp - 0x100]
push eax
lea ecx, [ebp - 0x880]
call fcn.00407f10
lea eax, [ebp - 0x880]
mov byte [ebp - 4], 0xf
push eax
lea ecx, [ebp - 0x7e4]
call fcn.00408170
mov eax, dword [ebp - 0x86c]
mov byte [ebp - 4], 0xe
cmp eax, 0x10
jb 0x4591e4
inc eax
lea ecx, [ebp - 0x880]
push eax
push dword [ebp - 0x880]
call fcn.00408010
mov esi, dword [ebp - 0x918]
push esi
call fcn.004db213
add esp, 4
push 0
push 0x80
push 1
push 0
push 0
push 0x40000000
push esi
call dword [sym.imp.KERNEL32.dll_CreateFileW]
mov esi, eax
cmp esi, 0xffffffff
je 0x459247
call fcn.004799b5
push 0
lea eax, [ebp - 0x914]
mov dword [ebp - 0x914], 0
push eax
push dword [ebp + 0x10]
push dword [ebp - 0x910]
push esi
call dword [sym.imp.KERNEL32.dll_WriteFile]
call fcn.00402160
push esi
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov esi, dword [ebp - 0x7e4]
test esi, esi
je 0x459293
push dword [ebp - 0x918]
lea eax, [ebp - 0x7e4]
push eax
push dword [ebp - 0x7e0]
push esi
call fcn.004056a0
mov ecx, dword [ebp - 0x7dc]
mov eax, 0x2aaaaaab
sub ecx, esi
add esp, 0x10
imul ecx
lea ecx, [ebp - 0x7e4]
sar edx, 2
mov eax, edx
shr eax, 0x1f
add eax, edx
push eax
push esi
call fcn.00408070
mov esi, dword [ebp - 0x7fc]
test esi, esi
je 0x4592df
push dword [ebp - 0x918]
lea ecx, [ebp - 0x7fc]
push ecx
push dword [ebp - 0x7f8]
push esi
call fcn.004056a0
mov ecx, dword [ebp - 0x7f4]
mov eax, 0x2aaaaaab
sub ecx, esi
add esp, 0x10
imul ecx
lea ecx, [ebp - 0x7fc]
sar edx, 2
mov eax, edx
shr eax, 0x1f
add eax, edx
push eax
push esi
call fcn.00408070
lea ecx, [ebp - 0x82c]
call fcn.00405a70
mov eax, dword [ebp - 0x884]
cmp eax, 0x10
jb 0x459308
inc eax
lea ecx, [ebp - 0x898]
push eax
push dword [ebp - 0x898]
call fcn.00408010
lea ecx, [ebp - 0x844]
mov dword [ebp - 0x884], 0xf
mov dword [ebp - 0x888], 0
mov byte [ebp - 0x898], 0
call fcn.00405a70
mov eax, dword [ebp - 0x854]
cmp eax, 0x10
jb 0x45934c
inc eax
lea ecx, [ebp - 0x868]
push eax
push dword [ebp - 0x868]
call fcn.00408010
lea ecx, [ebp - 0x924]
mov dword [ebp - 0x854], 0xf
mov dword [ebp - 0x858], 0
mov byte [ebp - 0x868], 0
call fcn.00405a70
mov eax, dword [ebp - 0x80c]
cmp eax, 0x10
jb 0x459390
inc eax
lea ecx, [ebp - 0x820]
push eax
push dword [ebp - 0x820]
call fcn.00408010
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.00474193
mov esp, ebp
pop ebp
ret 0xc