Function at 0x2002c33
Capabilities:
Empty the recycle bin
Get file system object information

Disassembly:
sub esp, 0x458
mov eax, dword [0x2026168]
xor eax, esp
mov dword [esp + 0x454], eax
push ebx
push ebp
push esi
push edi
push 0xff
lea eax, [esp + 0x369]
push 0
push eax
call fcn.0200a480
mov ebp, dword [0x20273e0]
mov ebx, dword [esp + 0x24]
mov eax, dword [esp + 0x1c]
mov edx, dword [0x20273e4]
mov esi, dword [0x20273d4]
lea ecx, [ebp + 4]
imul ecx, dword [0x20273d8]
add eax, ebx
add esp, 0xc
mov dword [esp + 0x364], edx
cmp eax, ecx
jne 0x2002ca3
mov eax, esi
imul eax, edx
add eax, dword [0x20273ec]
mov dword [0x20273d8], eax
mov edi, dword [0x20273e8]
test edi, edi
jne 0x2002cb1
test ebp, ebp
je 0x2002d0b
xor ebp, ebp
push ebp
call dword [sym.imp.ole32.dll_CoInitialize]
lea eax, [esp + 0x10]
push eax
push 0x2018388
push 1
push ebp
push 0x2018378
mov dword [esp + 0x24], ebp
call dword [sym.imp.ole32.dll_CoCreateInstance]
mov dword [esp + 0x18], ebp
cmp dword [0x20273e8], ebp
je 0x2002cf3
mov eax, dword [esp + 0x10]
lea edx, [esp + 0x18]
mov ecx, dword [eax]
push edx
push ebp
push ebp
push eax
call dword [ecx + 0x10]
mov eax, dword [esp + 0x10]
push eax
mov ecx, dword [eax]
call dword [ecx + 8]
mov esi, dword [0x20273d4]
mov edi, dword [0x20273e8]
jmp 0x2002d0d
xor ebp, ebp
xor eax, eax
push 0x206
mov word [esp + 0x160], ax
lea eax, [esp + 0x162]
push ebp
push eax
mov dword [esp + 0x1c], ebp
mov dword [esp + 0x28], ebp
call fcn.0200a480
mov ebp, dword [sym.imp.USER32.dll_GetDlgItem]
add esp, 0xc
mov dword [esp + 0x18], 0x40000000
push esi
push edi
call ebp
mov esi, eax
lea eax, [esp + 0x10]
push eax
call dword [sym.imp.SHELL32.dll_SHGetDesktopFolder]
push 0x104
lea eax, [esp + 0x5c]
push eax
lea eax, [esp + 0x164]
push eax
call fcn.02006f7b
add esp, 0xc
lea edx, [esp + 0x18]
push edx
lea edx, [esp + 0x20]
push edx
push 0
xor eax, eax
lea edx, [esp + 0x168]
push edx
mov word [esp + 0x372], ax
mov eax, dword [esp + 0x20]
push 0
mov ecx, dword [eax]
push esi
push eax
call dword [ecx + 0xc]
mov eax, dword [0x20273e4]
mov ecx, dword [0x20273e8]
mov esi, dword [0x20273e0]
lea ecx, [ecx + eax*2]
mov eax, dword [0x20273d8]
add ecx, esi
cdq
idiv ecx
mov edx, dword [0x20273e4]
add esi, 4
mov ecx, esi
imul ecx, dword [0x20273d8]
add eax, edx
add ebx, eax
mov eax, dword [esp + 0x10]
add eax, ebx
cmp eax, ecx
jne 0x2002dea
mov eax, dword [0x20273d4]
imul eax, edx
add eax, dword [0x20273ec]
mov dword [0x20273d8], eax
mov ecx, dword [0x20273e8]
push 8
pop eax
sub eax, ecx
mov dword [esp + 0x24], eax
lea eax, [esp + 0x20]
push eax
mov dword [esp + 0x24], esi
mov esi, dword [sym.imp.USER32.dll_MapDialogRect]
push ecx
call esi
mov eax, dword [0x20273e0]
mov ecx, dword [0x20273e8]
add eax, 4
push 8
mov dword [esp + 0x24], eax
pop eax
sub eax, ecx
mov dword [esp + 0x24], eax
lea eax, [esp + 0x20]
push eax
push ecx
call esi
mov esi, dword [0x20273e4]
mov edi, dword [0x20273e8]
mov eax, dword [0x20273e0]
mov dword [esp + 0x14], eax
lea ecx, [edi + esi*2]
add ecx, eax
mov eax, dword [0x20273d8]
mov dword [esp + 0x1c], eax
cdq
idiv ecx
add eax, esi
mov esi, dword [0x20273d4]
add ebx, eax
lea eax, [esp + 0x10]
push eax
push 0x2018780
push 1
mov dword [esp + 0x24], ebx
xor ebx, ebx
push ebx
push 0x2018790
call dword [sym.imp.ole32.dll_CoCreateInstance]
test eax, eax
jne 0x2002ead
mov eax, dword [esp + 0x10]
push eax
mov ecx, dword [eax]
call dword [ecx + 0xc]
test eax, eax
jne 0x2002ead
mov eax, dword [esp + 0x10]
push edi
mov ecx, dword [eax]
push eax
call dword [ecx + 0x14]
mov ecx, dword [0x20273d4]
test eax, eax
push 1
pop eax
cmovne ecx, eax
mov dword [0x20273d4], ecx
push dword [esp + 0x1c]
push esi
push dword [esp + 0x1c]
push edi
call dword [sym.imp.USER32.dll_DefWindowProcA]
push dword [0x20273d8]
push dword [0x20273e8]
call ebp
mov ecx, dword [0x20273d8]
add ecx, 4
push ecx
push eax
call ebp
mov ecx, dword [esp + 0x2c]
test ecx, ecx
je 0x2002f1a
cmp ecx, 2
jbe 0x2002f05
cmp ecx, 4
jne 0x2002f1a
test dword [esp + 0x30], 0x200
jne 0x2002f1a
lea eax, [esp + 0x3c]
push eax
push dword [esp + 0x3c]
call dword [sym.imp.USER32.dll_DrawFocusRect]
jmp 0x2002f1a
lea ecx, [esp + 0x58]
push ecx
push dword [esp + 0x2c]
push 0x189
push eax
call dword [sym.imp.USER32.dll_SendMessageA]
mov esi, dword [esp + 0x10]
cmp esi, dword [0x20273e8]
jne 0x2002f58
mov eax, dword [0x20273d4]
imul eax, dword [0x20273e4]
mov esi, dword [0x20273e0]
mov edi, dword [esp + 0x10]
lea ecx, [esi + 1]
cdq
idiv ecx
movzx ecx, di
add ecx, esi
imul ecx, esi
mov esi, dword [esp + 0x10]
lea edi, [eax + ecx*4]
imul edi, dword [esp + 0x14]
jmp 0x2002f5c
mov edi, dword [esp + 0x14]
push 0x2a
lea eax, [esp + 0x368]
push eax
call dword [sym.imp.SHLWAPI.dll_StrChrA]
mov ebp, dword [sym.imp.KERNEL32.dll_CreateFileA]
push ebx
push ebx
test eax, eax
jne 0x200314e
push 4
push ebx
inc eax
push eax
push 0x40000000
lea eax, [esp + 0x37c]
push eax
call ebp
mov ebx, dword [0x20273e0]
cmp esi, dword [0x20273e8]
jne 0x2002fd5
mov eax, dword [esp + 0x10]
movzx eax, ax
add eax, ebx
cdq
lea ecx, [ebx + 4]
idiv ecx
mov esi, dword [0x20273ec]
imul esi, ebx
sub esi, eax
movzx eax, byte [0x20273e4]
imul eax, dword [0x20273d8]
cdq
idiv dword [0x20273ec]
sub esi, eax
add edi, esi
mov esi, dword [esp + 0x10]
lea eax, [esp + 0x364]
push eax
push ebx
call dword [sym.imp.USER32.dll_LoadAcceleratorsA]
cmp dword [0x20273e8], 0
mov ebx, dword [sym.imp.USER32.dll_GetMessageA]
mov dword [esp + 0x14], eax
je 0x200304b
xor eax, eax
push eax
push eax
push eax
lea eax, [esp + 0x2c]
push eax
call ebx
test eax, eax
je 0x200304b
mov ebp, dword [esp + 0x14]
lea eax, [esp + 0x20]
push eax
push ebp
push dword [esp + 0x28]
call dword [sym.imp.USER32.dll_TranslateAcceleratorA]
test eax, eax
jne 0x2003035
lea eax, [esp + 0x20]
push eax
call dword [sym.imp.USER32.dll_TranslateMessage]
lea eax, [esp + 0x20]
push eax
call dword [sym.imp.USER32.dll_DispatchMessageA]
xor eax, eax
push eax
push eax
push eax
lea eax, [esp + 0x2c]
push eax
call ebx
test eax, eax
jne 0x200300b
mov ebp, dword [sym.imp.KERNEL32.dll_CreateFileA]
mov eax, dword [0x20273d4]
mov ecx, dword [0x20273e0]
imul eax, ecx
cmp eax, dword [0x20273ec]
jne 0x2003078
movzx eax, di
imul eax, eax, 5
add eax, dword [0x20273d8]
inc ecx
imul ecx, esi
add eax, ecx
mov dword [0x20273d8], eax
mov edi, dword [0x20273e8]
push 0x800
push edi
call dword [sym.imp.USER32.dll_GetDlgItem]
mov esi, dword [sym.imp.USER32.dll_GetWindowLongA]
push 0xfffffffffffffffc
push eax
call esi
push eax
push 8
push edi
call dword [sym.imp.USER32.dll_SetWindowLongA]
push 8
push edi
call esi
push 0x4001
push 0x160
lea eax, [esp + 0x164]
push eax
push 0
push 0x2018530
call dword [sym.imp.SHELL32.dll_SHGetFileInfoA]
mov esi, dword [0x20273e8]
push esi
call dword [sym.imp.USER32.dll_GetDC]
mov edi, dword [sym.imp.GDI32.dll_SelectObject]
mov ebx, eax
push esi
push ebx
call edi
mov esi, eax
lea eax, [esp + 0x20]
push eax
push ebx
call dword [sym.imp.GDI32.dll_GetTextMetricsA]
push esi
push ebx
call edi
mov ecx, dword [0x20273e0]
mov ebx, dword [esp + 0x18]
mov esi, dword [esp + 0x10]
add ecx, 0xc
imul ecx, dword [0x20273d8]
lea eax, [esi + ebx]
cmp eax, ecx
jne 0x2003123
mov eax, dword [0x20273d4]
add eax, dword [0x20273ec]
add eax, dword [0x20273e4]
mov dword [0x20273d8], eax
push 0x2a
lea eax, [esp + 0x368]
push eax
call dword [sym.imp.SHLWAPI.dll_StrChrA]
test eax, eax
je 0x2003192
xor edi, edi
jmp 0x2003177
call dword [sym.imp.KERNEL32.dll_GetLastError]
cmp eax, 0xb7
jne 0x2002f90
push ebx
push ebx
xor eax, eax
inc eax
push eax
push ebx
push eax
push 0x40000000
lea eax, [esp + 0x70]
push eax
call ebp
cmp eax, 0xffffffff
je 0x200313b
jmp 0x2002f90
call dword [sym.imp.KERNEL32.dll_GetLastError]
cmp eax, 0xb7
jne 0x20031aa
push edi
push edi
xor eax, eax
inc eax
push eax
push edi
push eax
push 0x40000000
lea eax, [esp + 0x70]
push eax
call ebp
cmp eax, 0xffffffff
je 0x200316a
jmp 0x20031aa
xor eax, eax
push eax
push eax
push 4
push eax
inc eax
push eax
push 0x40000000
lea eax, [esp + 0x37c]
push eax
call ebp
mov eax, dword [0x20273e0]
mov edi, dword [0x20273e8]
sub ebx, esi
mov esi, dword [0x20273d8]
sub eax, esi
imul eax, esi
cmp ebx, eax
jne 0x20031e5
mov eax, dword [0x20273ec]
lea ecx, [edi - 3]
xor edx, edx
div ecx
movzx ecx, word [0x20273e4]
imul eax, ecx
imul esi, eax
mov dword [0x20273d8], esi
push esi
push edi
mov edi, dword [sym.imp.USER32.dll_GetDlgItem]
call edi
mov ecx, dword [0x20273d8]
add ecx, 4
push ecx
push eax
call edi
mov ecx, dword [esp + 0x2c]
test ecx, ecx
je 0x200323e
cmp ecx, 2
jbe 0x2003229
cmp ecx, 4
jne 0x200323e
test dword [esp + 0x30], 0x200
jne 0x200323e
lea eax, [esp + 0x3c]
push eax
push dword [esp + 0x3c]
call dword [sym.imp.USER32.dll_DrawFocusRect]
jmp 0x200323e
lea ecx, [esp + 0x58]
push ecx
push dword [esp + 0x2c]
push 0x189
push eax
call dword [sym.imp.USER32.dll_SendMessageA]
xor ecx, ecx
xor eax, eax
push 0x206
mov word [esp + 0x160], ax
push ecx
lea eax, [esp + 0x166]
push eax
mov dword [esp + 0x24], ecx
mov dword [esp + 0x28], ecx
call fcn.0200a480
add esp, 0xc
mov dword [esp + 0x14], 0x40000000
push dword [0x20273d4]
push dword [0x20273e8]
call edi
mov esi, eax
lea eax, [esp + 0x18]
push eax
call dword [sym.imp.SHELL32.dll_SHGetDesktopFolder]
push 0x104
lea eax, [esp + 0x5c]
push eax
lea eax, [esp + 0x164]
push eax
call fcn.02006f7b
add esp, 0xc
lea edx, [esp + 0x14]
push edx
lea edx, [esp + 0x20]
push edx
push 0
xor eax, eax
lea edx, [esp + 0x168]
push edx
mov word [esp + 0x372], ax
mov eax, dword [esp + 0x28]
push 0
mov ecx, dword [eax]
push esi
push eax
call dword [ecx + 0xc]
mov esi, dword [0x20273e0]
lea eax, [esp + 0x20]
push eax
push esi
call dword [sym.imp.KERNEL32.dll_SetCommTimeouts]
push 0
lea eax, [esp + 0x18]
push eax
push esi
call dword [sym.imp.KERNEL32.dll_ClearCommError]
xor eax, eax
inc eax
push eax
push esi
call dword [sym.imp.KERNEL32.dll_SetCommMask]
push 0
lea eax, [esp + 0x18]
push eax
push esi
call dword [sym.imp.KERNEL32.dll_WaitCommEvent]
mov esi, dword [0x20273d4]
test eax, eax
cmove esi, dword [0x20273d8]
xor ecx, ecx
xor eax, eax
push 0x206
mov word [esp + 0x160], ax
push ecx
lea eax, [esp + 0x166]
push eax
mov dword [0x20273d4], esi
mov dword [esp + 0x24], ecx
mov dword [esp + 0x28], ecx
call fcn.0200a480
add esp, 0xc
mov dword [esp + 0x14], 0x40000000
push esi
push dword [0x20273e8]
call edi
mov esi, eax
lea eax, [esp + 0x18]
push eax
call dword [sym.imp.SHELL32.dll_SHGetDesktopFolder]
push 0x104
lea eax, [esp + 0x5c]
push eax
lea eax, [esp + 0x164]
push eax
call fcn.02006f7b
add esp, 0xc
lea edx, [esp + 0x14]
push edx
lea edx, [esp + 0x20]
push edx
xor edi, edi
push edi
xor eax, eax
lea edx, [esp + 0x168]
push edx
mov word [esp + 0x372], ax
mov eax, dword [esp + 0x28]
push edi
mov ecx, dword [eax]
push esi
push eax
call dword [ecx + 0xc]
cmp dword [0x20273e8], edi
jne 0x20033bd
mov esi, dword [0x20273e0]
test esi, esi
je 0x200340f
push edi
call dword [sym.imp.ole32.dll_CoInitialize]
lea eax, [esp + 0x10]
push eax
push 0x2018388
xor eax, eax
inc eax
push eax
push edi
push 0x2018378
mov dword [esp + 0x24], edi
call dword [sym.imp.ole32.dll_CoCreateInstance]
mov dword [esp + 0x14], edi
cmp dword [0x20273e8], edi
je 0x20033ff
mov eax, dword [esp + 0x10]
lea edx, [esp + 0x14]
mov ecx, dword [eax]
push edx
push edi
push edi
push eax
call dword [ecx + 0x10]
mov eax, dword [esp + 0x10]
push eax
mov ecx, dword [eax]
call dword [ecx + 8]
mov esi, dword [0x20273e0]
lea eax, [esp + 0x20]
push eax
push esi
call dword [sym.imp.KERNEL32.dll_SetCommTimeouts]
push edi
lea eax, [esp + 0x18]
push eax
push esi
call dword [sym.imp.KERNEL32.dll_ClearCommError]
xor eax, eax
inc eax
push eax
push esi
call dword [sym.imp.KERNEL32.dll_SetCommMask]
push edi
lea eax, [esp + 0x18]
push eax
push esi
call dword [sym.imp.KERNEL32.dll_WaitCommEvent]
mov ecx, dword [0x20273d4]
test eax, eax
cmove ecx, dword [0x20273d8]
xor eax, eax
lea edi, [esp + 0x20]
stosd dword es:[edi], eax
stosd dword es:[edi], eax
stosd dword es:[edi], eax
stosd dword es:[edi], eax
stosd dword es:[edi], eax
lea eax, [esp + 0x20]
push eax
xor esi, esi
push esi
mov dword [0x20273d4], ecx
mov dword [esp + 0x28], 0x14
call dword [sym.imp.SHELL32.dll_SHQueryRecycleBinA]
neg eax
push 7
sbb eax, eax
and eax, dword [0x20273d8]
push esi
push esi
mov dword [0x20273d4], eax
call dword [sym.imp.SHELL32.dll_SHEmptyRecycleBinA]
mov ecx, dword [0x20273d8]
push 1
pop edi
test eax, eax
push 0x2a
lea eax, [esp + 0x368]
cmove ecx, edi
push eax
mov dword [0x20273d8], ecx
call dword [sym.imp.SHLWAPI.dll_StrChrA]
push esi
push esi
test eax, eax
jne 0x200353f
push 4
push esi
push edi
push 0x40000000
lea eax, [esp + 0x37c]
push eax
call ebp
mov edi, dword [0x20273e0]
mov esi, dword [0x20273d8]
mov eax, edi
sub eax, esi
imul eax, esi
cmp ebx, eax
jne 0x200350b
mov ecx, dword [0x20273e8]
mov eax, dword [0x20273ec]
lea ecx, [ecx - 3]
xor edx, edx
div ecx
movzx ecx, word [0x20273e4]
imul eax, ecx
imul eax, esi
mov dword [0x20273d8], eax
mov ebp, dword [sym.imp.USER32.dll_LoadAcceleratorsA]
lea eax, [esp + 0x364]
push eax
push edi
call ebp
mov edi, dword [sym.imp.USER32.dll_GetMessageA]
xor ebx, ebx
mov esi, eax
cmp dword [0x20273e8], ebx
je 0x2003590
jmp 0x2003582
call dword [sym.imp.KERNEL32.dll_GetLastError]
cmp eax, 0xb7
jne 0x20034d0
push esi
push esi
push edi
push esi
push edi
push 0x40000000
lea eax, [esp + 0x70]
push eax
call ebp
cmp eax, 0xffffffff
je 0x2003530
jmp 0x20034d0
lea eax, [esp + 0x20]
push eax
push esi
push dword [esp + 0x28]
call dword [sym.imp.USER32.dll_TranslateAcceleratorA]
test eax, eax
jne 0x2003582
lea eax, [esp + 0x20]
push eax
call dword [sym.imp.USER32.dll_TranslateMessage]
lea eax, [esp + 0x20]
push eax
call dword [sym.imp.USER32.dll_DispatchMessageA]
push ebx
push ebx
push ebx
lea eax, [esp + 0x2c]
push eax
call edi
test eax, eax
jne 0x2003558
xor eax, eax
push 0x206
mov word [esp + 0x160], ax
lea eax, [esp + 0x162]
push ebx
push eax
mov dword [esp + 0x24], ebx
mov dword [esp + 0x28], ebx
call fcn.0200a480
mov ebx, dword [sym.imp.USER32.dll_GetDlgItem]
add esp, 0xc
mov dword [esp + 0x14], 0x40000000
push dword [0x20273d4]
push dword [0x20273e8]
call ebx
mov esi, eax
lea eax, [esp + 0x18]
push eax
call dword [sym.imp.SHELL32.dll_SHGetDesktopFolder]
push 0x104
lea eax, [esp + 0x5c]
push eax
lea eax, [esp + 0x164]
push eax
call fcn.02006f7b
add esp, 0xc
lea edx, [esp + 0x14]
push edx
lea edx, [esp + 0x20]
push edx
push 0
xor eax, eax
lea edx, [esp + 0x168]
push edx
mov word [esp + 0x372], ax
mov eax, dword [esp + 0x28]
push 0
mov ecx, dword [eax]
push esi
push eax
call dword [ecx + 0xc]
mov esi, dword [0x20273e0]
lea eax, [esp + 0x20]
push eax
push esi
call dword [sym.imp.KERNEL32.dll_SetCommTimeouts]
push 0
lea eax, [esp + 0x18]
push eax
push esi
call dword [sym.imp.KERNEL32.dll_ClearCommError]
xor eax, eax
inc eax
push eax
push esi
call dword [sym.imp.KERNEL32.dll_SetCommMask]
push 0
lea eax, [esp + 0x18]
push eax
push esi
call dword [sym.imp.KERNEL32.dll_WaitCommEvent]
mov ecx, dword [0x20273d4]
test eax, eax
mov eax, dword [0x20273d8]
push eax
push dword [0x20273e8]
cmove ecx, eax
mov dword [0x20273d4], ecx
call ebx
mov ecx, dword [0x20273d8]
add ecx, 4
push ecx
push eax
call ebx
mov ecx, dword [esp + 0x2c]
test ecx, ecx
je 0x20036cd
cmp ecx, 2
jbe 0x20036b8
cmp ecx, 4
jne 0x20036cd
test dword [esp + 0x30], 0x200
jne 0x20036cd
lea eax, [esp + 0x3c]
push eax
push dword [esp + 0x3c]
call dword [sym.imp.USER32.dll_DrawFocusRect]
jmp 0x20036cd
lea ecx, [esp + 0x58]
push ecx
push dword [esp + 0x2c]
push 0x189
push eax
call dword [sym.imp.USER32.dll_SendMessageA]
lea eax, [esp + 0x364]
push eax
push dword [0x20273e0]
call ebp
xor ebp, ebp
mov esi, eax
cmp dword [0x20273e8], ebp
je 0x2003723
jmp 0x2003715
lea eax, [esp + 0x20]
push eax
push esi
push dword [esp + 0x28]
call dword [sym.imp.USER32.dll_TranslateAcceleratorA]
test eax, eax
jne 0x2003715
lea eax, [esp + 0x20]
push eax
call dword [sym.imp.USER32.dll_TranslateMessage]
lea eax, [esp + 0x20]
push eax
call dword [sym.imp.USER32.dll_DispatchMessageA]
push ebp
push ebp
push ebp
lea eax, [esp + 0x2c]
push eax
call edi
test eax, eax
jne 0x20036eb
cmp dword [0x20273e0], 0x110
mov edi, dword [0x20273e8]
jne 0x200377b
mov eax, dword [0x20273e4]
cdq
mov ecx, 0x3e8
idiv ecx
push eax
push ebp
push ecx
push 0xc
push edi
call ebx
push eax
push ebp
push 0x70
push edi
push ebp
push ebp
push ebp
push ebp
push 0x508001a6
call dword [sym.imp.COMCTL32.dll_CreateUpDownControl]
mov esi, dword [sym.imp.USER32.dll_SetDlgItemTextA]
lea eax, [esp + 0x58]
push eax
push 0x10
push edi
call esi
lea eax, [esp + 0x15c]
push eax
push 0x12
push edi
call esi
push dword [0x20273d8]
push dword [0x20273e8]
call ebx
mov ecx, dword [0x20273d8]
add ecx, 4
push ecx
push eax
call ebx
mov ecx, dword [esp + 0x2c]
pop edi
pop esi
pop ebp
pop ebx
test ecx, ecx
je 0x20037df
cmp ecx, 2
jbe 0x20037c7
cmp ecx, 4
jne 0x20037df
test dword [esp + 0x20], 0x200
jne 0x20037df
lea eax, [esp + 0x2c]
push eax
push dword [esp + 0x2c]
call dword [sym.imp.USER32.dll_DrawFocusRect]
jmp 0x20037df
lea ecx, [esp + 0x14c]
push ecx
push dword [esp + 0x1c]
push 0x189
push eax
call dword [sym.imp.USER32.dll_SendMessageA]
mov ecx, dword [esp + 0x454]
xor ecx, esp
call fcn.020071d2
add esp, 0x458
ret