Function at 0x446d20
Capabilities:
Query environment variable

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
push 0xffffffffffffffff
push 0x511761
mov eax, dword fs:[0]
push eax
sub esp, 0x410
mov eax, dword [0x55c640]
xor eax, esp
mov dword [esp + 0x408], eax
push ebx
push esi
push edi
mov eax, dword [0x55c640]
xor eax, esp
push eax
lea eax, [esp + 0x420]
mov dword fs:[0], eax
push 0xe
push str._error_log.txt
lea ecx, [esp + 0x94]
mov dword [esp + 0xa8], 0xf
mov dword [esp + 0xa4], 0
mov byte [esp + 0x94], 0
call fcn.004511b0
push 0xc0
lea eax, [esp + 0xa8]
mov dword [esp + 0x42c], 0
push 0
push eax
call fcn.00489f10
add esp, 8
lea ecx, [esp + 0xa8]
call fcn.0044f4e0
push ecx
push 8
push str._error_log.txt
lea ecx, [esp + 0xc8]
mov byte [esp + 0x434], 1
call fcn.00452910
test eax, eax
lea ecx, [esp + 0xa4]
mov eax, dword [esp + 0xa4]
mov edx, 4
mov eax, dword [eax + 4]
jne 0x446e07
add ecx, eax
mov eax, dword [ecx + 0xc]
or eax, 2
cmp dword [ecx + 0x38], 0
jne 0x446e11
or eax, edx
jmp 0x446e11
add ecx, eax
xor eax, eax
cmp dword [ecx + 0x38], eax
cmove eax, edx
push 0
push eax
call fcn.00407930
mov dword [esp + 0x88], 0xf
mov dword [esp + 0x84], 0
mov byte [esp + 0x74], 0
push 0x104
lea eax, [esp + 0x310]
mov byte [esp + 0x42c], 2
push eax
push str.USERPROFILE
call dword [sym.imp.KERNEL32.dll_GetEnvironmentVariableA]
lea ecx, [esp + 0x14]
mov esi, eax
call fcn.0040b120
push esi
push ecx
mov edx, eax
mov byte [esp + 0x430], 3
lea ecx, [esp + 0xbc]
call fcn.00456a00
mov edx, str._dwRet
mov ecx, eax
call fcn.00456c60
add esp, 4
mov ecx, eax
call fcn.0044ccc0
push eax
call fcn.00456f10
add esp, 4
mov byte [esp + 0x428], 2
cmp dword [esp + 0x28], 0x10
jb 0x446eb1
push dword [esp + 0x14]
call fcn.00485250
add esp, 4
test esi, esi
je 0x4474a4
cmp byte [esp + 0x30c], 0
jne 0x446ec7
xor ecx, ecx
jmp 0x446eda
lea ecx, [esp + 0x30c]
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x446ed1
sub ecx, edx
push ecx
lea eax, [esp + 0x310]
push eax
lea ecx, [esp + 0x7c]
call fcn.004511b0
push 0x1e
push str.AppDataLocalDayZUIDLOG.txt
lea ecx, [esp + 0x7c]
call fcn.0044b970
mov edx, str.guidzz
lea ecx, [esp + 0xb4]
call fcn.00456c60
lea edx, [esp + 0x74]
mov ecx, eax
call fcn.00456a00
push eax
call fcn.00456f10
add esp, 4
lea eax, [esp + 0x74]
cmp dword [esp + 0x88], 0x10
cmovae eax, dword [esp + 0x74]
push eax
call fcn.0048720d
cmp dword [esp + 0x8c], 0x10
lea edx, [esp + 0x78]
cmovae edx, dword [esp + 0x78]
sub esp, 0x14
mov esi, esp
mov dword [esi + 0x14], 0xf
mov dword [esi + 0x10], 0
mov byte [esi], 0
cmp byte [edx], 0
jne 0x446f68
xor ecx, ecx
jmp 0x446f79
mov ecx, edx
lea edi, [ecx + 1]
lea ecx, [ecx]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x446f70
sub ecx, edi
push ecx
push edx
mov ecx, esi
call fcn.004511b0
call fcn.0040af50
lea ecx, [esp + 0x2c]
mov bl, al
call fcn.0040b120
mov esi, eax
mov byte [esp + 0x440], 4
lea eax, [esp + 0x17c]
cmp dword [esp + 0xa0], 0x10
lea ecx, [esp + 0x8c]
push eax
cmovae ecx, dword [esp + 0x90]
push ecx
call fcn.00488e40
add esp, 0x20
mov edx, esi
cmp eax, 0xffffffff
setne al
push ebx
push ecx
movzx eax, al
push eax
push ecx
lea ecx, [esp + 0xc4]
call fcn.00456a00
mov edx, str._FS::FileExist_guidzz.c_str___
mov ecx, eax
call fcn.00456c60
add esp, 4
mov ecx, eax
call fcn.0044c980
mov edx, str.FileIsExist_guidzz.c_str___
mov ecx, eax
call fcn.00456c60
add esp, 4
mov ecx, eax
call fcn.0044c980
push eax
call fcn.00456f10
add esp, 4
mov byte [esp + 0x428], 2
cmp dword [esp + 0x28], 0x10
jb 0x44702f
push dword [esp + 0x14]
call fcn.00485250
add esp, 4
xor bl, bl
cmp dword [esp + 0x88], 0x10
lea edx, [esp + 0x74]
cmovae edx, dword [esp + 0x74]
sub esp, 0x18
mov esi, esp
mov dword [esi + 0x14], 0xf
mov dword [esi + 0x10], 0
mov byte [esi], 0
cmp byte [edx], 0
jne 0x447061
xor eax, eax
jmp 0x44706f
mov eax, edx
lea edi, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x447066
sub eax, edi
push eax
push edx
mov ecx, esi
call fcn.004511b0
call fcn.0040af50
add esp, 0x18
test al, al
je 0x447494
push 0xb8
lea eax, [esp + 0x198]
push 0
push eax
call fcn.00489f10
add esp, 4
lea eax, [esp + 0x7c]
lea ecx, [esp + 0x19c]
push 1
push eax
call fcn.0044ede0
mov eax, dword [esp + 0x194]
lea ecx, [esp + 0x194]
mov eax, dword [eax + 4]
add ecx, eax
lea eax, [esp + 0x40]
push eax
call fcn.004079f0
push eax
mov byte [esp + 0x42c], 6
call fcn.004565e0
mov byte [esp + 0x42c], 5
add esp, 4
mov ecx, dword [esp + 0x40]
mov esi, eax
test ecx, ecx
je 0x447103
mov edx, dword [ecx]
call dword [edx + 8]
test eax, eax
je 0x447103
mov edx, dword [eax]
mov ecx, eax
push 1
call dword [edx]
mov eax, dword [esi]
mov ecx, esi
push 0xa
mov eax, dword [eax + 0x20]
call eax
mov byte [esp + 0x2c], al
lea ecx, [esp + 0x194]
push dword [esp + 0x2c]
mov edx, 0x55e1d4
call fcn.0045b360
add esp, 4
mov ecx, dword [eax]
mov ecx, dword [ecx + 4]
test byte [ecx + eax + 0xc], 6
jne 0x44740f
lea ecx, [esp + 0x14]
call fcn.0040b120
mov edx, eax
mov byte [esp + 0x428], 7
lea ecx, [esp + 0xb4]
call fcn.00456a00
mov edx, str._testst_guidzz
mov ecx, eax
call fcn.00456c60
mov edx, 0x55e1d4
mov ecx, eax
call fcn.00456a00
push eax
call fcn.00456f10
add esp, 4
mov byte [esp + 0x428], 5
cmp dword [esp + 0x28], 0x10
jb 0x447195
push dword [esp + 0x14]
call fcn.00485250
add esp, 4
cmp dword [0x55e1e4], 0xa
jbe 0x4470b2
push 0xc0
lea eax, [esp + 0x250]
push 0
push eax
call fcn.00489f10
add esp, 8
lea ecx, [esp + 0x250]
call fcn.0044f4e0
push ecx
push 2
push str._vip_guid.txt
lea ecx, [esp + 0x270]
mov byte [esp + 0x434], 8
call fcn.00452910
test eax, eax
lea ecx, [esp + 0x24c]
mov eax, dword [esp + 0x24c]
mov eax, dword [eax + 4]
jne 0x447209
add ecx, eax
mov eax, dword [ecx + 0xc]
or eax, 2
cmp dword [ecx + 0x38], 0
jne 0x447218
or eax, 4
jmp 0x447218
add ecx, eax
mov edx, 4
xor eax, eax
cmp dword [ecx + 0x38], eax
cmove eax, edx
push 0
push eax
call fcn.00407930
mov edx, 0x55e1d4
lea ecx, [esp + 0x25c]
call fcn.00456a00
sub esp, 0x18
mov bl, 1
mov ecx, esp
mov dword [esp + 0x48], esp
push 0
mov dword [ecx + 0x14], 0xf
mov dword [ecx + 0x10], 0
push 0x53e536
mov byte [ecx], 0
call fcn.004511b0
push 0x545230
mov edx, 0x55f1a8
mov byte [esp + 0x444], 9
lea ecx, [esp + 0x180]
call fcn.00456910
add esp, 4
push str.start2sg
mov edx, eax
mov byte [esp + 0x444], 0xa
lea ecx, [esp + 0x30]
call fcn.004573b0
add esp, 4
push 0x545230
mov edx, eax
mov byte [esp + 0x444], 0xb
lea ecx, [esp + 0x78]
call fcn.004573b0
sub esp, 0x14
mov byte [esp + 0x458], 0xc
mov ecx, esp
mov dword [esp + 0x64], esp
mov edx, eax
push 0x55e1d4
call fcn.00457540
sub esp, 0x14
mov byte [esp + 0x470], 0xd
mov ecx, esp
mov dword [esp + 0x84], esp
push 0xffffffffffffffff
push 0
mov dword [ecx + 0x14], 0xf
mov dword [ecx + 0x10], 0
push 0x55ec4c
mov byte [ecx], 0
call fcn.00451080
sub esp, 0x18
mov byte [esp + 0x488], 0xe
mov ecx, esp
push 0xffffffffffffffff
push 0
mov dword [ecx + 0x14], 0xf
mov dword [ecx + 0x10], 0
push 0x55ee2c
mov byte [ecx], 0
call fcn.00451080
lea ecx, [esp + 0xa4]
mov byte [esp + 0x488], 0x11
call fcn.0040d5c0
add esp, 0x60
cmp dword [esp + 0x58], 0x10
jb 0x447353
push dword [esp + 0x44]
call fcn.00485250
add esp, 4
cmp dword [esp + 0x70], 0x10
mov dword [esp + 0x58], 0xf
mov dword [esp + 0x54], 0
mov byte [esp + 0x44], 0
jb 0x44737b
push dword [esp + 0x5c]
call fcn.00485250
add esp, 4
cmp dword [esp + 0x28], 0x10
mov dword [esp + 0x70], 0xf
mov dword [esp + 0x6c], 0
mov byte [esp + 0x5c], 0
jb 0x4473a3
push dword [esp + 0x14]
call fcn.00485250
add esp, 4
mov byte [esp + 0x428], 8
cmp dword [esp + 0x178], 0x10
mov dword [esp + 0x28], 0xf
mov dword [esp + 0x24], 0
mov byte [esp + 0x14], 0
jb 0x4473d9
push dword [esp + 0x164]
call fcn.00485250
add esp, 4
xor cl, cl
call fcn.0041f500
lea ecx, [esp + 0x2c4]
mov byte [esp + 0x428], 5
call fcn.0044f600
lea eax, [esp + 0x2c4]
mov dword [esp + method.std::ios_base.virtual_0], vtable.std::ios_base.0
push eax
call fcn.0046ca3b
add esp, 4
mov byte [esp + 0x428], 2
mov eax, dword [esp + 0x194]
mov eax, dword [eax + 4]
mov dword [esp + eax + method.std::basic_ifstream_char__struct_std::char_traits_char__.virtual_0], vtable.std::basic_ifstream_char__struct_std::char_traits_char__.0
mov eax, dword [esp + 0x194]
mov ecx, dword [eax + 4]
lea eax, [ecx - 0x70]
mov dword [esp + ecx + 0x190], eax
lea ecx, [esp + 0x1a4]
call fcn.0044e1e0
mov eax, dword [esp + 0x194]
mov eax, dword [eax + 4]
mov dword [esp + eax + method.std::basic_istream_char__struct_std::char_traits_char__.virtual_0], vtable.std::basic_istream_char__struct_std::char_traits_char__.0
mov eax, dword [esp + 0x194]
mov ecx, dword [eax + 4]
lea eax, [ecx - 0x18]
mov dword [esp + ecx + 0x190], eax
lea eax, [esp + 0x204]
push eax
mov dword [esp + method.std::ios_base.virtual_0], vtable.std::ios_base.0
call fcn.0046ca3b
add esp, 4
test bl, bl
jne 0x4474a4
push 0x3e8
call dword [sym.imp.KERNEL32.dll_Sleep]
jmp 0x447031
sub esp, 0x18
mov ecx, esp
mov dword [esp + 0x50], esp
push 0
mov dword [ecx + 0x14], 0xf
mov dword [ecx + 0x10], 0
push 0x53e536
mov byte [ecx], 0
call fcn.004511b0
push 0x545230
mov edx, 0x55f1a8
mov byte [esp + 0x444], 0x12
lea ecx, [esp + 0x180]
call fcn.00456910
sub esp, 0x14
mov byte [esp + 0x458], 0x13
mov ecx, esp
mov dword [esp + 0x6c], esp
mov edx, eax
push str.start2s
call fcn.004573b0
sub esp, 0x14
mov byte [esp + 0x470], 0x14
mov ecx, esp
mov dword [esp + 0x7c], esp
push 0xffffffffffffffff
push 0
mov dword [ecx + 0x14], 0xf
mov dword [ecx + 0x10], 0
push 0x55ec4c
mov byte [ecx], 0
call fcn.00451080
sub esp, 0x18
mov byte [esp + 0x488], 0x15
mov ecx, esp
push 0xffffffffffffffff
push 0
mov dword [ecx + 0x14], 0xf
mov dword [ecx + 0x10], 0
push 0x55ee2c
mov byte [ecx], 0
call fcn.00451080
lea ecx, [esp + 0x74]
mov byte [esp + 0x488], 0x16
call fcn.0040d5c0
add esp, 0x60
cmp dword [esp + 0x28], 0x10
jb 0x447588
push dword [esp + 0x14]
call fcn.00485250
add esp, 4
cmp dword [esp + 0x178], 0x10
mov dword [esp + 0x28], 0xf
mov dword [esp + 0x24], 0
mov byte [esp + 0x14], 0
jb 0x4475b6
push dword [esp + 0x164]
call fcn.00485250
add esp, 4
cmp dword [esp + 0x88], 0x10
jb 0x4475cc
push dword [esp + 0x74]
call fcn.00485250
add esp, 4
mov byte [esp + 0x428], 0
mov eax, dword [esp + 0xa4]
mov dword [esp + 0x88], 0xf
mov dword [esp + 0x84], 0
mov byte [esp + 0x74], 0
mov eax, dword [eax + 4]
mov dword [esp + eax + 0xa4], vtable.std::basic_fstream_char__struct_std::char_traits_char__.0
mov eax, dword [esp + 0xa4]
mov ecx, dword [eax + 4]
lea eax, [ecx - 0x78]
mov dword [esp + ecx + 0xa0], eax
cmp dword [esp + 0x10c], 0
mov dword [esp + 0xbc], vtable.std::basic_filebuf_char__struct_std::char_traits_char__.0
je 0x447663
mov eax, dword [esp + 0xc8]
lea ecx, [esp + 0x100]
cmp dword [eax], ecx
jne 0x447663
mov edx, dword [esp + 0xf8]
mov ecx, dword [esp + 0xf4]
sub edx, ecx
mov dword [eax], ecx
mov eax, dword [esp + 0xd8]
mov dword [eax], ecx
mov eax, dword [esp + 0xe8]
mov dword [eax], edx
cmp byte [esp + 0x108], 0
je 0x447679
lea ecx, [esp + 0xbc]
call fcn.004529d0
mov esi, dword [esp + 0xf0]
mov dword [esp + 0xbc], vtable.std::basic_streambuf_char__struct_std::char_traits_char__.0
test esi, esi
je 0x4476af
mov ecx, dword [esi]
test ecx, ecx
je 0x4476a6
mov eax, dword [ecx]
call dword [eax + 8]
test eax, eax
je 0x4476a6
mov edx, dword [eax]
mov ecx, eax
push 1
call dword [edx]
push esi
call fcn.00485250
add esp, 4
mov eax, dword [esp + 0xa4]
mov eax, dword [eax + 4]
mov dword [esp + eax + 0xa4], vtable.std::basic_iostream_char__struct_std::char_traits_char__.0
mov eax, dword [esp + 0xa4]
mov ecx, dword [eax + 4]
lea eax, [ecx - 0x20]
mov dword [esp + ecx + 0xa0], eax
mov eax, dword [esp + 0xb4]
mov eax, dword [eax + 4]
mov dword [esp + eax + 0xb4], vtable.std::basic_ostream_char__struct_std::char_traits_char__.0
mov eax, dword [esp + 0xb4]
mov ecx, dword [eax + 4]
lea eax, [ecx - 8]
mov dword [esp + ecx + 0xb0], eax
mov eax, dword [esp + 0xa4]
mov eax, dword [eax + 4]
mov dword [esp + eax + 0xa4], vtable.std::basic_istream_char__struct_std::char_traits_char__.0
mov eax, dword [esp + 0xa4]
mov ecx, dword [eax + 4]
lea eax, [ecx - 0x18]
mov dword [esp + ecx + 0xa0], eax
lea eax, [esp + 0x11c]
push eax
mov dword [esp + method.std::ios_base.virtual_0], vtable.std::ios_base.0
call fcn.0046ca3b
add esp, 4
cmp dword [esp + 0xa0], 0x10
jb 0x44775e
push dword [esp + 0x8c]
call fcn.00485250
add esp, 4
mov ecx, dword [esp + 0x420]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [esp + 0x408]
xor ecx, esp
call fcn.00484516
mov esp, ebp
pop ebp
ret