Function at 0x455b29
Capabilities:
Set current directory

Disassembly:
push 0x65c
mov eax, 0x476ef8
call fcn.00472eab
mov dword [ebp - 0x654], ecx
or dword [ecx], 0xffffffff
lea eax, [ecx + 0x428]
or dword [ecx + 4], 0xffffffff
xor ebx, ebx
mov esi, dword [ebp + 8]
mov ecx, eax
push ebx
mov dword [ebp - 0x65c], esi
mov dword [ebp - 0x640], ebx
mov dword [ebp - 0x660], eax
call fcn.00456666
lea eax, [ebp - 0x640]
mov edx, 0x412f60
push eax
push ebx
mov ecx, 0x407a68
call fcn.004268f1
mov edi, dword [ebp - 0x640]
mov ebx, eax
test ebx, ebx
jns 0x455b99
mov ecx, ebx
call fcn.00427566
jmp 0x4563a6
push 0
push 0
call dword [sym.imp.KERNEL32.dll_GetLastError]
push eax
call dword [sym.imp.WDSCORE.dll_CurrentIP]
push eax
push 0x412f78
push 0x412fe8
push 0x97
push 0
push 0x411d1c
push 0xa4000
push esi
push 0x413050
push 0x4000000
call fcn.0044cdfc
add esp, 0xc
push eax
call dword [sym.imp.WDSCORE.dll_WdsSetupLogMessageW]
push 0
push 0
call dword [sym.imp.KERNEL32.dll_GetLastError]
push eax
call dword [sym.imp.WDSCORE.dll_CurrentIP]
push eax
push 0x412f78
push 0x412fe8
push 0x98
push 0
push 0x411d1c
push 0xa4000
push edi
push 0x41308c
push 0x4000000
call fcn.0044cdfc
add esp, 0xc
push eax
call dword [sym.imp.WDSCORE.dll_WdsSetupLogMessageW]
call fcn.0042ab66
mov dword [ebp - 0x668], eax
test eax, eax
jne 0x455c9c
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov ebx, eax
test ebx, ebx
jle 0x455c4b
movzx ebx, bx
or ebx, 0x80070000
xor esi, esi
push esi
push esi
call dword [sym.imp.KERNEL32.dll_GetLastError]
push eax
call dword [sym.imp.WDSCORE.dll_CurrentIP]
push eax
push 0x412f78
push 0x412fe8
push 0xa2
push esi
push 0x411d1c
push 0xa4000
push 0x4130c8
push 0x2800025
call fcn.0044cdfc
pop ecx
pop ecx
push eax
call dword [sym.imp.WDSCORE.dll_WdsSetupLogMessageW]
test ebx, ebx
jns 0x4563a6
jmp 0x455b8d
push esi
call dword [sym.imp.KERNEL32.dll_SetCurrentDirectoryW]
test eax, eax
jne 0x455d18
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov ebx, eax
test ebx, ebx
jle 0x455cbc
movzx ebx, bx
or ebx, 0x80070000
push 0
push 0
call dword [sym.imp.KERNEL32.dll_GetLastError]
push eax
call dword [sym.imp.WDSCORE.dll_CurrentIP]
push eax
push 0x412f78
push 0x412fe8
push 0xa9
push 0
push 0x411d1c
push 0xa4000
push ebx
push esi
push 0x413108
push 0x2800025
call fcn.0044cdfc
add esp, 0x10
push eax
call dword [sym.imp.WDSCORE.dll_WdsSetupLogMessageW]
test ebx, ebx
jns 0x45639a
mov ecx, ebx
call fcn.00427566
jmp 0x45639a
push ecx
push 0
xor edx, edx
xor ecx, ecx
call fcn.0045d140
mov esi, eax
mov dword [ebp - 0x664], esi
test esi, esi
jne 0x455d87
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov ebx, eax
test ebx, ebx
jle 0x455d45
movzx ebx, bx
or ebx, 0x80070000
xor esi, esi
push esi
push esi
call dword [sym.imp.KERNEL32.dll_GetLastError]
push eax
call dword [sym.imp.WDSCORE.dll_CurrentIP]
push eax
push 0x412f78
push 0x412fe8
push 0xb3
push esi
push 0x411d1c
push 0xa4000
push 0x413160
push 0x2800025
call fcn.0044cdfc
pop ecx
pop ecx
jmp 0x455cfd
push 0
push 0
call dword [sym.imp.KERNEL32.dll_GetLastError]
push eax
call dword [sym.imp.WDSCORE.dll_CurrentIP]
push eax
push 0x412f78
push 0x412fe8
push 0xb7
push 0
push 0x411d1c
push 0xa4000
push esi
push 0x4131b0
push 0x4000000
call fcn.0044cdfc
add esp, 0xc
push eax
call dword [sym.imp.WDSCORE.dll_WdsSetupLogMessageW]
xor esi, esi
mov dword [ebp - 0x658], esi
and dword [ebp - 0x640], 0
xor eax, eax
and dword [ebp - 0x63c], 0
and dword [ebp - 0x64c], eax
mov word [ebp - 0x218], ax
push ecx
push 0x104
lea edx, [ebp - 0x218]
mov ecx, esi
call fcn.0045d140
mov dword [ebp - 0x644], eax
test eax, eax
jne 0x455e5e
push eax
push eax
call dword [sym.imp.KERNEL32.dll_GetLastError]
push eax
call dword [sym.imp.WDSCORE.dll_CurrentIP]
push eax
push 0x412f78
push 0x412fe8
push 0xc7
push 0
push 0x411d1c
push 0xa4000
push esi
push 0x4131e8
push 0x2000000
call fcn.0044cdfc
add esp, 0xc
push eax
call dword [sym.imp.WDSCORE.dll_WdsSetupLogMessageW]
or dword [ebp - 4], 0xffffffff
jmp 0x456338
cmp word [ebp - 0x218], 0
jne 0x455eb1
push 0
push 0
call dword [sym.imp.KERNEL32.dll_GetLastError]
push eax
call dword [sym.imp.WDSCORE.dll_CurrentIP]
push eax
push 0x412f78
push 0x412fe8
push 0xcd
push 0
push 0x411d1c
push 0xa4000
push esi
push 0x413240
push 0x2000000
call fcn.0044cdfc
add esp, 0xc
push eax
call dword [sym.imp.WDSCORE.dll_WdsSetupLogMessageW]
jmp 0x455e55
lea eax, [ebp - 0x64c]
push eax
lea eax, [ebp - 0x218]
push eax
push dword [ebp - 0x65c]
call fcn.00456439
mov dword [ebp - 0x648], eax
test eax, eax
jns 0x455f26
push 0
push 0
call dword [sym.imp.KERNEL32.dll_GetLastError]
push eax
call dword [sym.imp.WDSCORE.dll_CurrentIP]
push eax
push 0x412f78
push 0x412fe8
push 0xd4
push 0
push 0x411d1c
push 0xa4000
push dword [ebp - 0x648]
push esi
push 0x413290
push 0x2000000
call fcn.0044cdfc
add esp, 0x10
push eax
call dword [sym.imp.WDSCORE.dll_WdsSetupLogMessageW]
jmp 0x455e55
xor ebx, ebx
lea ecx, [ebp - 0x218]
mov esi, ebx
call fcn.0045cda4
test eax, eax
jne 0x455f47
mov eax, 0x80070032
mov ecx, eax
mov esi, eax
call fcn.00427566
mov ecx, esi
call fcn.0042757e
test esi, esi
jns 0x455fa4
push ebx
push ebx
call dword [sym.imp.KERNEL32.dll_GetLastError]
push eax
call dword [sym.imp.WDSCORE.dll_CurrentIP]
push eax
push 0x412f78
push 0x412fe8
push 0xdb
push ebx
push 0x411d1c
push 0xa4000
lea eax, [ebp - 0x218]
push eax
push 0x4132f8
push 0x3000000
call fcn.0044cdfc
add esp, 0xc
push eax
call dword [sym.imp.WDSCORE.dll_WdsSetupLogMessageW]
mov dword [ebp - 0x648], ebx
jmp 0x455fae
mov dword [ebp - 0x648], 1
mov eax, dword [ebp - 0x644]
lea edx, [ebp - 0x218]
mov ecx, eax
shr eax, 1
and eax, 1
and ecx, 1
mov dword [ebp - 0x644], eax
lea eax, [ebp - 0x640]
push eax
mov dword [ebp - 0x650], ecx
mov ecx, edi
push ebx
call fcn.004268f1
mov ebx, eax
test ebx, ebx
js 0x456379
mov esi, dword [ebp - 0x640]
lea eax, [ebp - 0x63c]
push eax
push 0
mov edx, 0x413344
mov ecx, esi
call fcn.004268f1
mov ebx, eax
test ebx, ebx
js 0x45634d
push 0
push 0
call dword [sym.imp.KERNEL32.dll_GetLastError]
push eax
call dword [sym.imp.WDSCORE.dll_CurrentIP]
push eax
push 0x412f78
push 0x412fe8
push 0xe9
push 0
push 0x411d1c
push 0xa4000
push dword [ebp - 0x658]
push 0x413354
push 0x4000000
call fcn.0044cdfc
add esp, 0xc
push eax
call dword [sym.imp.WDSCORE.dll_WdsSetupLogMessageW]
push 0
push 0
call dword [sym.imp.KERNEL32.dll_GetLastError]
push eax
call dword [sym.imp.WDSCORE.dll_CurrentIP]
push eax
push 0x412f78
push 0x412fe8
push 0xea
push 0
push 0x411d1c
push 0xa4000
lea eax, [ebp - 0x218]
push eax
push 0x413390
push 0x4000000
call fcn.0044cdfc
add esp, 0xc
push eax
call dword [sym.imp.WDSCORE.dll_WdsSetupLogMessageW]
push 0
push 0
call dword [sym.imp.KERNEL32.dll_GetLastError]
push eax
call dword [sym.imp.WDSCORE.dll_CurrentIP]
push eax
push 0x412f78
push 0x412fe8
push 0xeb
push 0
push 0x411d1c
push 0xa4000
push dword [ebp - 0x63c]
push 0x4133cc
push 0x4000000
call fcn.0044cdfc
add esp, 0xc
push eax
call dword [sym.imp.WDSCORE.dll_WdsSetupLogMessageW]
push 0
push 0
call dword [sym.imp.KERNEL32.dll_GetLastError]
push eax
call dword [sym.imp.WDSCORE.dll_CurrentIP]
push eax
push 0x412f78
push 0x412fe8
push 0xec
push 0
push 0x411d1c
push 0xa4000
push dword [ebp - 0x650]
push 0x413408
push 0x4000000
call fcn.0044cdfc
add esp, 0xc
push eax
call dword [sym.imp.WDSCORE.dll_WdsSetupLogMessageW]
push 0
push 0
call dword [sym.imp.KERNEL32.dll_GetLastError]
push eax
call dword [sym.imp.WDSCORE.dll_CurrentIP]
push eax
push 0x412f78
push 0x412fe8
push 0xed
push 0
push 0x411d1c
push 0xa4000
push dword [ebp - 0x644]
push 0x413444
push 0x4000000
call fcn.0044cdfc
add esp, 0xc
push eax
call dword [sym.imp.WDSCORE.dll_WdsSetupLogMessageW]
push 0
push 0
call dword [sym.imp.KERNEL32.dll_GetLastError]
push eax
call dword [sym.imp.WDSCORE.dll_CurrentIP]
push eax
push 0x412f78
push 0x412fe8
push 0xee
push 0
push 0x411d1c
push 0xa4000
push dword [ebp - 0x64c]
push 0x413480
push 0x4000000
call fcn.0044cdfc
add esp, 0xc
push eax
call dword [sym.imp.WDSCORE.dll_WdsSetupLogMessageW]
push dword [ebp - 0x648]
lea eax, [ebp - 0x218]
push dword [ebp - 0x64c]
lea ecx, [ebp - 0x638]
push dword [ebp - 0x644]
push dword [ebp - 0x650]
push dword [ebp - 0x63c]
push eax
call fcn.00455aa1
lea eax, [ebp - 0x638]
push eax
mov eax, dword [ebp - 0x660]
mov ecx, eax
push dword [eax + 4]
call fcn.004565a1
cmp dword [ebp - 0x650], 0
je 0x456301
cmp dword [ebp - 0x648], 0
mov ecx, dword [ebp - 0x654]
je 0x45629b
cmp dword [ecx], 0
jge 0x45629b
mov eax, dword [ecx + 0x42c]
push 0
dec eax
push 0
mov dword [ecx], eax
call dword [sym.imp.KERNEL32.dll_GetLastError]
push eax
call dword [sym.imp.WDSCORE.dll_CurrentIP]
push eax
push 0x412f78
push 0x412fe8
push 0x100
push 0
push 0x411d1c
push 0xa4000
lea eax, [ebp - 0x638]
push eax
push 0x4134bc
push 0x4000000
call fcn.0044cdfc
add esp, 0xc
push eax
call dword [sym.imp.WDSCORE.dll_WdsSetupLogMessageW]
mov ecx, dword [ebp - 0x654]
cmp dword [ebp - 0x644], 0
je 0x456301
cmp dword [ecx + 4], 0
jge 0x456301
mov eax, dword [ecx + 0x42c]
push 0
dec eax
push 0
mov dword [ecx + 4], eax
call dword [sym.imp.KERNEL32.dll_GetLastError]
push eax
call dword [sym.imp.WDSCORE.dll_CurrentIP]
push eax
push 0x412f78
push 0x412fe8
push 0x106
push 0
push 0x411d1c
push 0xa4000
lea eax, [ebp - 0x638]
push eax
push 0x413500
push 0x4000000
call fcn.0044cdfc
add esp, 0xc
push eax
call dword [sym.imp.WDSCORE.dll_WdsSetupLogMessageW]
mov dword [ebp - 4], 0xa
cmp dword [ebp - 0x63c], 0
je 0x45631c
mov ecx, dword [ebp - 0x63c]
call fcn.00427347
mov dword [ebp - 4], 0xb
test esi, esi
je 0x45632e
mov ecx, esi
call fcn.00427347
or dword [ebp - 4], 0xffffffff
mov esi, dword [ebp - 0x658]
inc esi
mov dword [ebp - 0x658], esi
cmp esi, dword [ebp - 0x664]
jb 0x455dd6
jmp 0x45639a
mov ecx, ebx
call fcn.00427566
mov dword [ebp - 4], 8
mov ecx, dword [ebp - 0x63c]
test ecx, ecx
je 0x45636a
call fcn.00427347
mov dword [ebp - 4], 9
test esi, esi
je 0x456396
mov ecx, esi
jmp 0x456391
mov ecx, ebx
call fcn.00427566
mov dword [ebp - 4], 7
mov ecx, dword [ebp - 0x640]
test ecx, ecx
je 0x456396
call fcn.00427347
or dword [ebp - 4], 0xffffffff
push dword [ebp - 0x668]
call dword [sym.imp.KERNEL32.dll_SetCurrentDirectoryW]
mov ecx, ebx
call fcn.0042757e
mov dword [ebp - 4], 0xc
test edi, edi
je 0x4563bf
mov ecx, edi
call fcn.00427347
or dword [ebp - 4], 0xffffffff
mov eax, ebx
call fcn.00472e69
ret 8