Function at 0x407680
Capabilities:
Create directory
Set current directory

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
sub esp, 0x74
mov esi, dword [ebp + 8]
mov dword [ebp - 0x5c], 0x795e0d6
jmp 0x4076c0
mov eax, dword [0x4ccd44]
sub esp, 4
mov dword [esp], eax
call dword [0x4ccd40]
add esp, 4
mov eax, dword [ebp - 0x48]
mov dword [ebp - 0x5c], 0x9e2425d0
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov eax, dword [ebp - 0x5c]
cmp eax, 0x83180ef4
jg 0x4076e0
cmp eax, 0x80814650
jne 0x4076c0
jmp 0x407695
cmp eax, 0x886bdb37
jg 0x407700
cmp eax, 0x83180ef5
jne 0x4076c0
mov dword [ebp - 0x5c], 0x886bdb38
jmp 0x4076c0
cmp eax, 0x8a170444
jg 0x407717
cmp eax, 0x886bdb38
jne 0x4076c0
mov dword [ebp - 0x5c], 0x1cb1f3c9
jmp 0x4076c0
cmp eax, 0x8b5f4889
jg 0x40772e
cmp eax, 0x8a170445
jne 0x4076c0
mov dword [ebp - 0x5c], 0x9ee8f5e2
jmp 0x4076c0
cmp eax, 0x946bc506
jg 0x407748
cmp eax, 0x8b5f488a
jne 0x4076c0
mov dword [ebp - 0x5c], 0x9e2425d0
jmp 0x4076c0
cmp eax, 0x95ef09af
jg 0x407766
cmp eax, 0x946bc507
jne 0x4076c0
mov dword [ebp - 0x5c], 0xd83f2138
jmp 0x4076c0
cmp eax, 0x7cb65818
jg 0x407796
cmp eax, 0x7bb54e0b
jg 0x4077be
cmp eax, 0x968581d8
jg 0x40797d
cmp eax, 0x95ef09b0
jne 0x4076c0
mov dword [ebp - 0x5c], 0x1cb1f3c9
jmp 0x4076c0
cmp eax, 0x7cb65819
jne 0x4076c0
mov eax, dword [ebp - 0x54]
mov ecx, dword [eax]
mov eax, 0x53221f6a
cmp dword [ecx + 4], 0
je 0x4077b6
mov eax, 0x2ca4b836
mov dword [ebp - 0x5c], eax
jmp 0x4076c0
cmp eax, 0x7bb54e0c
jne 0x4076c0
mov eax, dword [0x4b90e8]
movzx eax, byte [eax]
mov ecx, dword [ebp - 0x44]
mov dword [ecx], eax
mov eax, dword [ebp - 0x44]
mov eax, dword [eax]
mov ecx, dword [0x4b90e8]
movzx eax, byte [eax + ecx + 1]
mov ecx, dword [ebp - 0x40]
mov dword [ecx], eax
mov eax, dword [ebp - 0x40]
mov eax, dword [eax]
mov ecx, dword [0x4b90e8]
mov edx, dword [ebp - 0x44]
mov edx, dword [edx]
lea ecx, [ecx + edx + 2]
mov edx, dword [0x4b90e8]
inc edx
mov edi, dword [ebp - 0x44]
mov edi, dword [edi]
mov ebx, dword [ebp - 0x20]
sub esp, 0x14
mov dword [esp + 0x10], eax
mov dword [esp + 0xc], ecx
mov dword [esp + 8], edx
mov dword [esp + 4], edi
mov dword [esp], ebx
call fcn.00402880
add esp, 0x14
mov eax, dword [ebp - 0x28]
sub esp, 8
mov dword [esp], eax
mov dword [esp + 4], 0x105
call fcn.00403e70
add esp, 8
mov eax, dword [ebp - 0x2c]
mov ecx, dword [ebp - 0x28]
sub esp, 0xc
mov dword [esp + 4], eax
mov dword [esp], ecx
mov dword [esp + 8], 0x105
call fcn.004052c0
add esp, 0xc
mov eax, dword [ebp - 0x2c]
sub esp, 4
mov dword [esp], eax
call fcn.004047a0
add esp, 4
mov ecx, dword [ebp - 0x34]
mov dword [ecx], eax
mov eax, dword [0x4b90ec]
movzx eax, byte [eax]
mov ecx, dword [ebp - 0x3c]
mov dword [ecx], eax
mov eax, dword [ebp - 0x3c]
mov eax, dword [eax]
mov ecx, dword [0x4b90ec]
movzx eax, byte [eax + ecx + 1]
mov ecx, dword [ebp - 0x38]
mov dword [ecx], eax
mov eax, dword [ebp - 0x38]
mov eax, dword [eax]
mov ecx, dword [0x4b90ec]
mov edx, dword [ebp - 0x3c]
mov edx, dword [edx]
lea ecx, [ecx + edx + 2]
mov edx, dword [0x4b90ec]
inc edx
mov edi, dword [ebp - 0x3c]
mov edi, dword [edi]
mov ebx, dword [ebp - 0x1c]
sub esp, 0x14
mov dword [esp + 0x10], eax
mov dword [esp + 0xc], ecx
mov dword [esp + 8], edx
mov dword [esp + 4], edi
mov dword [esp], ebx
call fcn.00402880
add esp, 0x14
mov eax, dword [ebp - 0x34]
mov eax, dword [eax]
mov ecx, dword [ebp - 0x2c]
mov edx, dword [ebp - 0x24]
sub esp, 0x10
mov dword [esp + 0xc], eax
mov dword [esp + 8], ecx
mov dword [esp], edx
mov dword [esp + 4], 0x105
call fcn.00404250
add esp, 0x10
mov eax, dword [ebp - 0x44]
mov eax, dword [eax]
mov ecx, dword [ebp - 0x20]
mov edx, dword [ebp - 0x34]
mov edi, 0x105
sub edi, dword [edx]
mov edx, dword [ebp - 0x24]
mov ebx, dword [ebp - 0x34]
add edx, dword [ebx]
sub esp, 0x10
mov dword [esp + 0xc], eax
mov dword [esp + 8], ecx
mov dword [esp + 4], edi
mov dword [esp], edx
call fcn.00404250
add esp, 0x10
mov eax, dword [ebp - 0x3c]
mov edi, dword [eax]
mov ebx, dword [ebp - 0x1c]
sub esp, 4
mov dword [esp], 0
call dword [sym.imp.KERNEL32.dll_GetModuleHandleA]
sub esp, 0xc
mov dword [esp + 8], edi
mov dword [esp + 4], ebx
mov dword [esp], eax
call fcn.004034a0
add esp, 0xc
mov ecx, dword [ebp - 0x4c]
mov dword [ecx], eax
mov eax, dword [ebp - 0x4c]
mov dword [ebp - 0x5c], 0x501446dd
jmp 0x4076c0
cmp eax, 0x97e7b056
jg 0x40799b
cmp eax, 0x968581d9
jne 0x4076c0
mov dword [ebp - 0x5c], 0x95ef09b0
jmp 0x4076c0
cmp eax, 0x9e2425cf
jg 0x4079d6
cmp eax, 0x97e7b057
jne 0x4076c0
mov eax, dword [ebp - 0x24]
sub esp, 8
mov dword [esp], eax
mov dword [esp + 4], 0
call dword [sym.imp.KERNEL32.dll_CreateDirectoryA]
test eax, eax
sete byte [ebp - 0xe]
mov dword [ebp - 0x5c], 0xe5e8a06a
jmp 0x4076c0
cmp eax, 0x9ee8f5e1
jg 0x407a12
cmp eax, 0x9e2425d0
jne 0x4076c0
mov eax, dword [0x4ccd44]
sub esp, 4
mov dword [esp], eax
call dword [0x4ccd40]
add esp, 4
mov eax, dword [ebp - 0x48]
cmp dword [eax], 0
setne byte [ebp - 0xd]
mov dword [ebp - 0x5c], 0x56a55a66
jmp 0x4076c0
cmp eax, 0xa465d761
jg 0x407a29
cmp eax, 0x9ee8f5e2
jne 0x4076c0
jmp 0x408601
cmp eax, 0xaa3b0407
jg 0x407a76
cmp eax, 0xa465d762
jne 0x4076c0
mov eax, dword [ebp - 0x30]
mov eax, dword [eax]
dec eax
mov ecx, dword [ebp - 0x48]
mov ecx, dword [ecx]
sub esp, 0xc
mov dword [esp + 4], eax
mov dword [esp], ecx
mov dword [esp + 8], 0
call fcn.00416bf7
add esp, 0xc
test eax, eax
mov eax, 0x44a8ff18
jne 0x407a6e
mov eax, 0xfac34308
mov dword [ebp - 0x5c], eax
jmp 0x4076c0
cmp eax, 0xb03add10
jg 0x407a9d
cmp eax, 0xaa3b0408
jne 0x4076c0
mov eax, dword [ebp - 0x58]
mov dword [eax], 0
mov dword [ebp - 0x5c], 0x9ee8f5e2
jmp 0x4076c0
cmp eax, 0xbbe72089
jg 0x407abb
cmp eax, 0xb03add11
jne 0x4076c0
mov dword [ebp - 0x5c], 0x1cb1f3c9
jmp 0x4076c0
cmp eax, 0xbdb092de
jg 0x407c8b
cmp eax, 0xbbe7208a
jne 0x4076c0
mov eax, 4
call fcn.00416a40
mov eax, 4
call fcn.00416a40
mov dword [ebp - 0x60], esp
mov eax, 4
call fcn.00416a40
mov dword [ebp - 0x64], esp
mov eax, 4
call fcn.00416a40
mov dword [ebp - 0x68], esp
mov eax, 4
call fcn.00416a40
mov ecx, esp
mov dword [ebp - 0x74], ecx
mov eax, 4
call fcn.00416a40
mov eax, 4
call fcn.00416a40
mov eax, 4
call fcn.00416a40
mov eax, 4
call fcn.00416a40
mov eax, 4
call fcn.00416a40
mov eax, 4
call fcn.00416a40
mov edx, esp
mov eax, 0x108
call fcn.00416a40
mov dword [ebp - 0x80], esp
mov eax, 0x108
call fcn.00416a40
mov dword [ebp - 0x7c], esp
mov eax, 0x108
call fcn.00416a40
mov dword [ebp - 0x78], esp
mov eax, 0x14
call fcn.00416a40
mov edi, esp
mov eax, 0xc
call fcn.00416a40
mov ebx, esp
mov eax, 4
call fcn.00416a40
mov dword [ebp - 0x6c], esp
mov eax, 4
call fcn.00416a40
mov dword [ebp - 0x70], esp
mov eax, dword [ebp - 0x60]
mov dword [eax], esi
mov eax, dword [ebp - 0x64]
mov dword [eax], 0
mov eax, dword [ebp - 0x68]
mov dword [eax], 0
mov dword [edx], 0
mov dword [ecx], 0
sub esp, 0xc
mov eax, dword [ebp - 0x80]
mov dword [esp], eax
mov dword [esp + 8], 0x105
mov dword [esp + 4], 0
call fcn.004172b0
add esp, 0xc
sub esp, 0xc
mov eax, dword [ebp - 0x7c]
mov dword [esp], eax
mov dword [esp + 8], 0x105
mov dword [esp + 4], 0
call fcn.004172b0
add esp, 0xc
sub esp, 0xc
mov eax, dword [ebp - 0x78]
mov dword [esp], eax
mov dword [esp + 8], 0x105
mov dword [esp + 4], 0
call fcn.004172b0
add esp, 0xc
mov dword [edi + 0x10], 0
mov dword [edi + 0xc], 0
mov dword [edi + 8], 0
mov dword [edi + 4], 0
mov dword [edi], 0
mov word [ebx + 8], 0
mov dword [ebx + 4], 0
mov dword [ebx], 0
mov eax, dword [ebp - 0x6c]
mov dword [eax], 1
mov eax, dword [ebp - 0x70]
mov dword [eax], 1
call fcn.00403d80
mov ecx, dword [ebp - 0x74]
mov dword [ecx], eax
mov dword [ebp - 0x5c], 0x6d063e67
jmp 0x4076c0
cmp eax, 0xd67d3067
jg 0x407ca9
cmp eax, 0xbdb092df
jne 0x4076c0
mov dword [ebp - 0x5c], 0x372d6cd4
jmp 0x4076c0
cmp eax, 0xd802b188
jg 0x407cda
cmp eax, 0xd67d3068
jne 0x4076c0
mov eax, dword [ebp - 0x48]
mov eax, dword [eax]
sub esp, 4
mov dword [esp], eax
call fcn.004177bb
add esp, 4
mov dword [ebp - 0x5c], 0xaa3b0408
jmp 0x4076c0
cmp eax, 0x704e3c90
jg 0x407e07
cmp eax, 0x6feec082
jg 0x407e1e
cmp eax, 0x6d063e66
jg 0x407e35
cmp eax, 0x65a63ca7
jg 0x408023
cmp eax, 0x612b8992
jg 0x40803a
cmp eax, 0x5e86c5a0
jg 0x408051
cmp eax, 0x59703501
jg 0x408068
cmp eax, 0x584701b5
jg 0x40808c
cmp eax, 0x56a55a65
jg 0x4080a3
cmp eax, 0x564c2f90
jg 0x4080c7
cmp eax, 0x53221f69
jg 0x4080de
cmp eax, 0x501446dc
jg 0x4080f5
cmp eax, 0x4515e99b
jg 0x4082c1
cmp eax, 0x44a8ff17
jg 0x4082d8
cmp eax, 0x3af070ba
jg 0x4082ef
cmp eax, 0x372d6cd3
jg 0x40830f
cmp eax, 0x3597f72b
jg 0x408326
cmp eax, 0x352188d9
jg 0x40833d
cmp eax, 0x30b45056
jg 0x408361
cmp eax, 0x2ca4b835
jg 0x408378
cmp eax, 0x1cb1f3c8
jg 0x4083d8
cmp eax, 0xa87c91b
jg 0x4083fd
cmp eax, 0xd83f2137
jg 0x408414
cmp eax, 0xd802b189
jne 0x4076c0
mov eax, dword [ebp - 0x14]
mov dword [eax], 0
mov eax, dword [ebp - 0x54]
mov ecx, dword [eax]
mov eax, 0x53221f6a
cmp dword [ecx], 0
je 0x407dff
mov eax, 0x7cb65819
mov dword [ebp - 0x5c], eax
jmp 0x4076c0
cmp eax, 0x704e3c91
jne 0x4076c0
mov dword [ebp - 0x5c], 0x968581d9
jmp 0x4076c0
cmp eax, 0x6feec083
jne 0x4076c0
mov dword [ebp - 0x5c], 0x30b45057
jmp 0x4076c0
cmp eax, 0x6d063e67
jne 0x4076c0
mov eax, 4
call fcn.00416a40
mov dword [ebp - 0x58], esp
mov eax, 4
call fcn.00416a40
mov dword [ebp - 0x54], esp
mov eax, 4
call fcn.00416a40
mov dword [ebp - 0x50], esp
mov eax, 4
call fcn.00416a40
mov dword [ebp - 0x4c], esp
mov eax, 4
call fcn.00416a40
mov dword [ebp - 0x48], esp
mov eax, 4
call fcn.00416a40
mov dword [ebp - 0x44], esp
mov eax, 4
call fcn.00416a40
mov dword [ebp - 0x40], esp
mov eax, 4
call fcn.00416a40
mov dword [ebp - 0x3c], esp
mov eax, 4
call fcn.00416a40
mov dword [ebp - 0x38], esp
mov eax, 4
call fcn.00416a40
mov dword [ebp - 0x34], esp
mov eax, 4
call fcn.00416a40
mov dword [ebp - 0x30], esp
mov eax, 0x108
call fcn.00416a40
mov dword [ebp - 0x2c], esp
mov eax, 0x108
call fcn.00416a40
mov dword [ebp - 0x28], esp
mov eax, 0x108
call fcn.00416a40
mov dword [ebp - 0x24], esp
mov eax, 0x14
call fcn.00416a40
mov dword [ebp - 0x20], esp
mov eax, 0xc
call fcn.00416a40
mov dword [ebp - 0x1c], esp
mov eax, 4
call fcn.00416a40
mov dword [ebp - 0x18], esp
mov eax, 4
call fcn.00416a40
mov dword [ebp - 0x14], esp
mov eax, dword [ebp - 0x54]
mov dword [eax], esi
mov eax, dword [ebp - 0x50]
mov dword [eax], 0
mov eax, dword [ebp - 0x4c]
mov dword [eax], 0
mov eax, dword [ebp - 0x48]
mov dword [eax], 0
mov eax, dword [ebp - 0x30]
mov dword [eax], 0
mov eax, dword [ebp - 0x2c]
sub esp, 0xc
mov dword [esp], eax
mov dword [esp + 8], 0x105
mov dword [esp + 4], 0
call fcn.004172b0
add esp, 0xc
mov eax, dword [ebp - 0x28]
sub esp, 0xc
mov dword [esp], eax
mov dword [esp + 8], 0x105
mov dword [esp + 4], 0
call fcn.004172b0
add esp, 0xc
mov eax, dword [ebp - 0x24]
sub esp, 0xc
mov dword [esp], eax
mov dword [esp + 8], 0x105
mov dword [esp + 4], 0
call fcn.004172b0
add esp, 0xc
mov eax, dword [ebp - 0x20]
mov dword [eax + 0x10], 0
mov dword [eax + 0xc], 0
mov dword [eax + 8], 0
mov dword [eax + 4], 0
mov dword [eax], 0
mov eax, dword [ebp - 0x1c]
mov word [eax + 8], 0
mov dword [eax + 4], 0
mov dword [eax], 0
mov eax, dword [ebp - 0x18]
mov dword [eax], 1
mov eax, dword [ebp - 0x14]
mov dword [eax], 1
call fcn.00403d80
mov ecx, dword [ebp - 0x48]
mov dword [ecx], eax
mov eax, dword [ebp - 0x48]
cmp dword [eax], 0
sete byte [ebp - 0x10]
mov dword [ebp - 0x5c], 0x59703502
jmp 0x4076c0
cmp eax, 0x65a63ca8
jne 0x4076c0
mov dword [ebp - 0x5c], 0x97e7b057
jmp 0x4076c0
cmp eax, 0x612b8993
jne 0x4076c0
mov dword [ebp - 0x5c], 0x1cb1f3c9
jmp 0x4076c0
cmp eax, 0x5e86c5a1
jne 0x4076c0
mov dword [ebp - 0x5c], 0x83180ef5
jmp 0x4076c0
cmp eax, 0x59703502
jne 0x4076c0
mov al, byte [ebp - 0x10]
test al, al
mov eax, 0x564c2f91
jne 0x408084
mov eax, 0x4515e99c
mov dword [ebp - 0x5c], eax
jmp 0x4076c0
cmp eax, 0x584701b6
jne 0x4076c0
mov dword [ebp - 0x5c], 0x1cb1f3c9
jmp 0x4076c0
cmp eax, 0x56a55a66
jne 0x4076c0
mov al, byte [ebp - 0xd]
test al, al
mov eax, 0xd67d3068
jne 0x4080bf
mov eax, 0xaa3b0408
mov dword [ebp - 0x5c], eax
jmp 0x4076c0
cmp eax, 0x564c2f91
jne 0x4076c0
mov dword [ebp - 0x5c], 0x1cb1f3c9
jmp 0x4076c0
cmp eax, 0x53221f6a
jne 0x4076c0
mov dword [ebp - 0x5c], 0x1cb1f3c9
jmp 0x4076c0
cmp eax, 0x501446dd
jne 0x4076c0
mov eax, dword [0x4b90e8]
movzx eax, byte [eax]
mov ecx, dword [ebp - 0x44]
mov dword [ecx], eax
mov eax, dword [ebp - 0x44]
mov eax, dword [eax]
not eax
mov ecx, dword [0x4b90e8]
neg eax
movzx eax, byte [ecx + eax]
mov ecx, dword [ebp - 0x40]
mov dword [ecx], eax
mov eax, dword [ebp - 0x40]
mov eax, dword [eax]
mov ecx, dword [0x4b90e8]
mov edx, dword [ebp - 0x44]
mov edx, dword [edx]
lea ecx, [ecx + edx + 2]
mov edx, dword [0x4b90e8]
inc edx
mov edi, dword [ebp - 0x44]
mov edi, dword [edi]
mov ebx, dword [ebp - 0x20]
sub esp, 0x14
mov dword [esp + 0x10], eax
mov dword [esp + 0xc], ecx
mov dword [esp + 8], edx
mov dword [esp + 4], edi
mov dword [esp], ebx
call fcn.00402880
add esp, 0x14
mov eax, dword [ebp - 0x28]
sub esp, 8
mov dword [esp], eax
mov dword [esp + 4], 0x105
call fcn.00403e70
add esp, 8
mov eax, dword [ebp - 0x2c]
mov ecx, dword [ebp - 0x28]
sub esp, 0xc
mov dword [esp + 4], eax
mov dword [esp], ecx
mov dword [esp + 8], 0x105
call fcn.004052c0
add esp, 0xc
mov eax, dword [ebp - 0x2c]
sub esp, 4
mov dword [esp], eax
call fcn.004047a0
add esp, 4
mov ecx, dword [ebp - 0x34]
mov dword [ecx], eax
mov eax, dword [0x4b90ec]
movzx eax, byte [eax]
mov ecx, dword [ebp - 0x3c]
mov dword [ecx], eax
mov eax, dword [ebp - 0x3c]
mov eax, dword [eax]
not eax
mov ecx, dword [0x4b90ec]
neg eax
movzx eax, byte [ecx + eax]
mov ecx, dword [ebp - 0x38]
mov dword [ecx], eax
mov eax, dword [ebp - 0x38]
mov eax, dword [eax]
mov ecx, dword [0x4b90ec]
mov edx, dword [ebp - 0x3c]
mov edx, dword [edx]
lea ecx, [ecx + edx + 2]
mov edx, dword [0x4b90ec]
inc edx
mov edi, dword [ebp - 0x3c]
mov edi, dword [edi]
mov ebx, dword [ebp - 0x1c]
sub esp, 0x14
mov dword [esp + 0x10], eax
mov dword [esp + 0xc], ecx
mov dword [esp + 8], edx
mov dword [esp + 4], edi
mov dword [esp], ebx
call fcn.00402880
add esp, 0x14
mov eax, dword [ebp - 0x34]
mov eax, dword [eax]
mov ecx, dword [ebp - 0x2c]
mov edx, dword [ebp - 0x24]
sub esp, 0x10
mov dword [esp + 0xc], eax
mov dword [esp + 8], ecx
mov dword [esp], edx
mov dword [esp + 4], 0x105
call fcn.00404250
add esp, 0x10
mov eax, dword [ebp - 0x44]
mov eax, dword [eax]
mov ecx, dword [ebp - 0x20]
mov edx, dword [ebp - 0x34]
mov edi, 0x105
sub edi, dword [edx]
mov edx, dword [ebp - 0x24]
mov ebx, dword [ebp - 0x34]
add edx, dword [ebx]
sub esp, 0x10
mov dword [esp + 0xc], eax
mov dword [esp + 8], ecx
mov dword [esp + 4], edi
mov dword [esp], edx
call fcn.00404250
add esp, 0x10
mov eax, dword [ebp - 0x3c]
mov edi, dword [eax]
mov ebx, dword [ebp - 0x1c]
sub esp, 4
mov dword [esp], 0
call dword [sym.imp.KERNEL32.dll_GetModuleHandleA]
sub esp, 0xc
mov dword [esp + 8], edi
mov dword [esp + 4], ebx
mov dword [esp], eax
call fcn.004034a0
add esp, 0xc
mov ecx, dword [ebp - 0x4c]
mov dword [ecx], eax
mov eax, dword [ebp - 0x4c]
cmp dword [eax], 0
sete byte [ebp - 0xf]
mov dword [ebp - 0x5c], 0x352188da
jmp 0x4076c0
cmp eax, 0x4515e99c
jne 0x4076c0
mov dword [ebp - 0x5c], 0x501446dd
jmp 0x4076c0
cmp eax, 0x44a8ff18
jne 0x4076c0
mov dword [ebp - 0x5c], 0x968581d9
jmp 0x4076c0
cmp eax, 0x3af070bb
jne 0x4076c0
mov eax, dword [ebp - 0x58]
mov dword [eax], 0xffffffff
mov dword [ebp - 0x5c], 0x8a170445
jmp 0x4076c0
cmp eax, 0x372d6cd4
jne 0x4076c0
mov dword [ebp - 0x5c], 0x612b8993
jmp 0x4076c0
cmp eax, 0x3597f72c
jne 0x4076c0
mov dword [ebp - 0x5c], 0xd83f2138
jmp 0x4076c0
cmp eax, 0x352188da
jne 0x4076c0
mov al, byte [ebp - 0xf]
test al, al
mov eax, 0x3597f72c
jne 0x408359
mov eax, 0x65a63ca8
mov dword [ebp - 0x5c], eax
jmp 0x4076c0
cmp eax, 0x30b45057
jne 0x4076c0
mov dword [ebp - 0x5c], 0xb03add11
jmp 0x4076c0
cmp eax, 0x2ca4b836
jne 0x4076c0
mov eax, dword [ebp - 0x54]
mov eax, dword [eax]
mov eax, dword [eax]
mov ecx, dword [ebp - 0x54]
mov ecx, dword [ecx]
add eax, dword [ecx + 0x10]
mov ecx, dword [ebp - 0x50]
mov dword [ecx], eax
mov eax, dword [ebp - 0x50]
mov eax, dword [eax]
mov ecx, dword [ebp - 0x54]
mov ecx, dword [ecx]
mov ecx, dword [ecx]
sub esp, 0xc
mov dword [esp + 8], eax
mov dword [esp], ecx
mov dword [esp + 4], 0
call fcn.0040c270
add esp, 0xc
mov dword [0x4ccd40], eax
mov ecx, 0xf37d6ca2
test eax, eax
je 0x4083d0
mov ecx, 0x8b5f488a
mov dword [ebp - 0x5c], ecx
jmp 0x4076c0
cmp eax, 0x1cb1f3c9
jne 0x4076c0
mov ecx, dword [ebp - 0x48]
mov eax, 0xeedd9fd3
cmp dword [ecx], 0
jne 0x4083f5
mov eax, 0xa87c91c
mov dword [ebp - 0x5c], eax
jmp 0x4076c0
cmp eax, 0xa87c91c
jne 0x4076c0
mov dword [ebp - 0x5c], 0x3af070bb
jmp 0x4076c0
cmp eax, 0xd8eacedd
jg 0x408432
cmp eax, 0xd83f2138
jne 0x4076c0
mov dword [ebp - 0x5c], 0x584701b6
jmp 0x4076c0
cmp eax, 0xdb3698d4
jg 0x408450
cmp eax, 0xd8eacede
jne 0x4076c0
mov dword [ebp - 0x5c], 0x83180ef5
jmp 0x4076c0
cmp eax, 0xdcfc850d
jg 0x408485
cmp eax, 0xdb3698d5
jne 0x4076c0
mov eax, dword [ebp - 0x24]
sub esp, 8
mov dword [esp], eax
mov dword [esp + 4], 0
call dword [sym.imp.KERNEL32.dll_CreateDirectoryA]
mov dword [ebp - 0x5c], 0x97e7b057
jmp 0x4076c0
cmp eax, 0xe18bd2c6
jg 0x4084a3
cmp eax, 0xdcfc850e
jne 0x4076c0
mov dword [ebp - 0x5c], 0x1cb1f3c9
jmp 0x4076c0
cmp eax, 0xe5e8a069
jg 0x4084ca
cmp eax, 0xe18bd2c7
jne 0x4076c0
mov eax, dword [ebp - 0x58]
mov dword [eax], 0xffffffff
mov dword [ebp - 0x5c], 0x3af070bb
jmp 0x4076c0
cmp eax, 0xeedd9fd2
jg 0x4084f5
cmp eax, 0xe5e8a06a
jne 0x4076c0
mov al, byte [ebp - 0xe]
test al, al
mov eax, 0x5e86c5a1
jne 0x4084ed
mov eax, 0xf9ba7395
mov dword [ebp - 0x5c], eax
jmp 0x4076c0
cmp eax, 0xf37d6ca1
jg 0x408526
cmp eax, 0xeedd9fd3
jne 0x4076c0
mov eax, dword [ebp - 0x48]
mov eax, dword [eax]
sub esp, 4
mov dword [esp], eax
call fcn.004177bb
add esp, 4
mov dword [ebp - 0x5c], 0xa87c91c
jmp 0x4076c0
cmp eax, 0xf9ba7394
jg 0x408544
cmp eax, 0xf37d6ca2
jne 0x4076c0
mov dword [ebp - 0x5c], 0x372d6cd4
jmp 0x4076c0
cmp eax, 0xfac34307
jg 0x40859e
cmp eax, 0xf9ba7395
jne 0x4076c0
mov eax, dword [ebp - 0x4c]
mov eax, dword [eax]
mov eax, dword [eax + 0x14]
mov ecx, dword [ebp - 0x4c]
mov ecx, dword [ecx]
add eax, dword [ecx + 0x10]
mov ecx, dword [ebp - 0x30]
mov dword [ecx], eax
mov eax, dword [ebp - 0x18]
mov dword [eax], 0
call fcn.0040e260
mov eax, dword [ebp - 0x2c]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_SetCurrentDirectoryA]
test eax, eax
mov eax, 0xdcfc850e
je 0x408596
mov eax, 0xa465d762
mov dword [ebp - 0x5c], eax
jmp 0x4076c0
cmp eax, 0xfac34308
je 0x4085b8
cmp eax, 0x795e0d6
jne 0x4085ea
mov dword [ebp - 0x5c], 0x6d063e67
jmp 0x4076c0
mov eax, dword [ebp - 0x54]
mov eax, dword [eax]
mov ecx, dword [ebp - 0x48]
mov ecx, dword [ecx]
sub esp, 8
mov dword [esp + 4], eax
mov dword [esp], ecx
call fcn.00407140
add esp, 8
test eax, eax
mov eax, 0x6feec083
js 0x4085e2
mov eax, 0xd802b189
mov dword [ebp - 0x5c], eax
jmp 0x4076c0
cmp eax, 0x7a84811
jne 0x4076c0
mov dword [ebp - 0x5c], 0x30b45057
jmp 0x4076c0
mov eax, dword [ebp - 0x58]
mov eax, dword [eax]
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret