Function at 0x414620
Capabilities:
Query environment variable

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x49f069
mov eax, dword fs:[0]
push eax
sub esp, 0x4d8
mov eax, dword [0x51a074]
xor eax, ebp
mov dword [ebp - 0x10], eax
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov edi, ecx
mov eax, dword [ebp + 8]
xorps xmm0, xmm0
mov esi, dword [ebp + 0xc]
mov dword [ebp - 4], 0
mov dword [ebp - 0x4cc], eax
mov dword [ebp - 0x490], 0
movq qword [eax], xmm0
push 0x28
mov dword [ebp - 0x494], eax
mov dword [ebp - 0x488], 0x4506b0
mov dword [eax], 0
mov dword [eax + 4], 0
call fcn.004697d2
mov ecx, dword [ebp - 0x494]
add esp, 4
mov dword [eax], eax
mov dword [eax + 4], eax
mov dword [eax + 8], eax
mov word [eax + 0xc], 0x101
mov dword [ecx], eax
mov dword [ebp - 4], 0
lea eax, [ebp - 0x488]
mov dword [ebp - 0x4d8], ecx
mov ecx, edi
push esi
mov dword [ebp - 0x490], 1
mov dword [ebp - 0x4dc], eax
call fcn.0045a270
mov edi, dword [eax]
mov eax, dword [eax + 4]
mov dword [ebp - 0x48c], edi
mov dword [ebp - 0x4c8], eax
cmp edi, eax
je 0x4155bb
lea ecx, [ebp - 0x4c4]
call fcn.0045a330
mov esi, eax
push edi
lea ecx, [ebp - 0x230]
mov dword [ebp - 4], 1
call fcn.0045ebb0
push esi
lea edx, [ebp - 0x230]
mov byte [ebp - 4], 2
lea ecx, [ebp - 0x278]
call fcn.0045b8b0
add esp, 4
mov byte [ebp - 4], 4
mov edx, dword [ebp - 0x21c]
cmp edx, 8
jb 0x414771
mov ecx, dword [ebp - 0x230]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x414767
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x4155f9
push edx
push ecx
call fcn.004697c4
add esp, 8
xor eax, eax
mov dword [ebp - 0x220], 0
mov dword [ebp - 0x21c], 7
mov word [ebp - 0x230], ax
mov byte [ebp - 4], 5
mov edx, dword [ebp - 0x4b0]
cmp edx, 8
jb 0x4147d2
mov ecx, dword [ebp - 0x4c4]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x4147c8
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x4155f9
push edx
push ecx
call fcn.004697c4
add esp, 8
xor eax, eax
mov dword [ebp - 0x4b4], 0
lea ecx, [ebp - 0x278]
mov dword [ebp - 0x4b0], 7
mov word [ebp - 0x4c4], ax
call fcn.0045c670
test al, al
je 0x41485d
lea eax, [ebp - 0x278]
push eax
lea ecx, [ebp - 0x4dc]
call fcn.00415600
mov byte [ebp - 4], 0
mov edx, dword [ebp - 0x264]
cmp edx, 8
jb 0x4155a6
mov ecx, dword [ebp - 0x278]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x41484e
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x4155f9
push edx
push ecx
call fcn.004697c4
add esp, 8
jmp 0x4155a6
lea ecx, [ebp - 0x278]
call fcn.0045bb10
test al, al
je 0x41492b
lea eax, [ebp - 0x4ac]
push eax
lea ecx, [ebp - 0x278]
call fcn.0045b9f0
mov byte [ebp - 4], 6
push dword [ebp - 0x4cc]
push eax
push ecx
mov ecx, dword [ebp - 0x494]
lea eax, [ebp - 0x4e4]
push eax
call fcn.0045a0a0
mov byte [ebp - 4], 5
mov edx, dword [ebp - 0x498]
cmp edx, 0x10
jb 0x4148de
mov ecx, dword [ebp - 0x4ac]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x4148d4
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x4155f9
push edx
push ecx
call fcn.004697c4
add esp, 8
mov byte [ebp - 4], 0
mov edx, dword [ebp - 0x264]
cmp edx, 8
jb 0x4155a6
mov ecx, dword [ebp - 0x278]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x41491c
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x4155f9
push edx
push ecx
call fcn.004697c4
add esp, 8
jmp 0x4155a6
mov eax, dword [ebp - 0x48c]
mov ecx, eax
mov edi, dword [edi + 0x10]
mov esi, dword [eax + 0x14]
cmp esi, 0x10
jb 0x414940
mov ecx, dword [eax]
push 5
push str.local
mov edx, edi
call fcn.00465360
add esp, 8
test al, al
je 0x4149a5
push 0x104
lea eax, [ebp - 0x484]
push 0
push eax
call fcn.00481150
add esp, 0xc
lea eax, [ebp - 0x484]
push 0x104
push eax
push str._windir_SysNativeWinMetadata
call dword [sym.imp.KERNEL32.dll_ExpandEnvironmentStringsA]
lea eax, [ebp - 0x484]
mov dword [ebp - 0x4d0], eax
lea ecx, [ebp - 0x4dc]
lea eax, [ebp - 0x4d0]
push eax
call fcn.00415a10
jmp 0x415560
mov dword [ebp - 0x238], 0
mov dword [ebp - 0x234], 0xf
mov byte [ebp - 0x248], 0
mov eax, dword [ebp - 0x48c]
mov ecx, eax
mov byte [ebp - 4], 7
cmp esi, 0x10
jb 0x4149d3
mov ecx, dword [eax]
push 3
push 0x50dcc0
mov edx, edi
call fcn.00465360
add esp, 8
test al, al
jne 0x414c95
mov eax, dword [ebp - 0x48c]
mov ecx, eax
cmp esi, 0x10
jb 0x4149fb
mov ecx, dword [eax]
push 4
push str.sdk
mov edx, edi
call fcn.00465360
add esp, 8
test al, al
jne 0x414c95
push ecx
xorps xmm0, xmm0
mov dword [ebp - 0x2c8], 0
push str.__d_._d_._d_._d___
lea ecx, [ebp - 0x2d8]
movups xmmword [ebp - 0x2d8], xmm0
call fcn.004569c0
push 0x38
lea eax, [ebp - 0x2b4]
push 0
push eax
call fcn.00481150
xorps xmm0, xmm0
mov dword [ebp - 0x2b4], 0
add esp, 0xc
mov byte [ebp - 0x2b0], 0
movups xmmword [ebp - 0x2ac], xmm0
mov dword [ebp - 0x29c], 0
mov byte [ebp - 0x298], 0
mov dword [ebp - 0x294], 0
mov dword [ebp - 0x290], 0
mov byte [ebp - 0x28c], 0
mov dword [ebp - 0x288], 0
mov dword [ebp - 0x284], 0
mov byte [ebp - 0x280], 0
mov edi, dword [ebp - 0x48c]
mov ecx, edi
mov byte [ebp - 4], 9
mov edx, dword [edi + 0x14]
cmp edx, 0x10
jb 0x414ac4
mov ecx, dword [edi]
mov eax, dword [edi + 0x10]
add eax, ecx
mov ecx, edi
cmp edx, 0x10
jb 0x414ad2
mov ecx, dword [edi]
sub esp, 8
lea edx, [ebp - 0x2d8]
push eax
push ecx
lea ecx, [ebp - 0x2b4]
call fcn.00452c60
add esp, 0x10
test al, al
je 0x414bc1
mov ecx, dword [ebp - 0x2a8]
mov eax, 0x2aaaaaab
mov esi, dword [ebp - 0x2ac]
sub ecx, esi
imul ecx
lea ecx, [ebp - 0x288]
sar edx, 1
mov eax, edx
shr eax, 0x1f
add eax, edx
cmp eax, 1
jbe 0x414b1f
lea ecx, [esi + 0xc]
cmp byte [ecx + 8], 0
je 0x414b3a
mov eax, dword [ecx]
mov edx, dword [ecx + 4]
mov ecx, edx
mov dword [ebp - 0x4d4], eax
mov dword [ebp - 0x4d0], edx
jmp 0x414b40
xor eax, eax
xor edx, edx
xor ecx, ecx
mov dword [ebp - 0x220], 0
mov dword [ebp - 0x21c], 0xf
mov byte [ebp - 0x230], 0
cmp eax, edx
je 0x414b6e
sub ecx, eax
push ecx
push eax
lea ecx, [ebp - 0x230]
call fcn.00465e10
or dword [ebp - 0x490], 2
lea eax, [ebp - 0x230]
push eax
lea ecx, [ebp - 0x248]
call fcn.0045f360
mov edx, dword [ebp - 0x21c]
cmp edx, 0x10
jb 0x414bc1
mov ecx, dword [ebp - 0x230]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x414bb7
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x4155f9
push edx
push ecx
call fcn.004697c4
add esp, 8
mov byte [ebp - 4], 8
mov esi, dword [ebp - 0x2ac]
test esi, esi
je 0x414c33
mov ecx, dword [ebp - 0x2a4]
mov eax, 0x2aaaaaab
sub ecx, esi
imul ecx
sar edx, 1
mov eax, edx
shr eax, 0x1f
add eax, edx
lea ecx, [eax + eax*2]
mov eax, esi
shl ecx, 2
cmp ecx, 0x1000
jb 0x414c0b
mov esi, dword [esi - 4]
add ecx, 0x23
sub eax, esi
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x4155f9
push ecx
push esi
call fcn.004697c4
add esp, 8
mov dword [ebp - 0x2ac], 0
mov dword [ebp - 0x2a8], 0
mov dword [ebp - 0x2a4], 0
mov byte [ebp - 4], 7
mov ecx, dword [ebp - 0x2d8]
test ecx, ecx
je 0x414c6c
or eax, 0xffffffff
lock xadd dword [ecx + 0x20], eax
jne 0x414c6c
mov esi, dword [ebp - 0x2d8]
test esi, esi
je 0x414c6c
mov ecx, esi
lea eax, [esi + 0xc]
mov esi, dword [eax]
mov dword [eax], 0
push 1
mov eax, dword [ecx]
call dword [eax]
test esi, esi
jne 0x414c55
mov ecx, dword [ebp - 0x2c8]
mov dword [ebp - 0x2d8], 0
test ecx, ecx
je 0x414cec
mov eax, dword [ecx]
mov eax, dword [eax + 8]
call eax
mov ecx, eax
test ecx, ecx
je 0x414cec
mov eax, dword [ecx]
push 1
call dword [eax]
jmp 0x414cec
lea ecx, [ebp - 0x4ac]
call fcn.00459370
push eax
lea ecx, [ebp - 0x248]
call fcn.0045f360
mov edx, dword [ebp - 0x498]
cmp edx, 0x10
jb 0x414ce6
mov ecx, dword [ebp - 0x4ac]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x414cdc
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x4155f9
push edx
push ecx
call fcn.004697c4
add esp, 8
mov edi, dword [ebp - 0x48c]
cmp dword [ebp - 0x238], 0
je 0x4155de
lea ecx, [ebp - 0x230]
call fcn.004572b0
lea eax, [ebp - 0x230]
mov byte [ebp - 4], 0xa
push eax
lea ecx, [ebp - 0x260]
call fcn.0045d430
push 0x50d780
lea ecx, [ebp - 0x4ac]
mov byte [ebp - 4], 0xb
call fcn.004513d0
push eax
lea ecx, [ebp - 0x260]
mov byte [ebp - 4], 0xc
call fcn.0045e810
mov byte [ebp - 4], 0xb
mov edx, dword [ebp - 0x498]
cmp edx, 8
jb 0x414d82
mov ecx, dword [ebp - 0x4ac]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x414d78
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x4155f9
push edx
push ecx
call fcn.004697c4
add esp, 8
lea eax, [ebp - 0x248]
push eax
lea ecx, [ebp - 0x260]
call fcn.00451270
push 0x50d764
lea ecx, [ebp - 0x4ac]
call fcn.004513d0
push eax
lea ecx, [ebp - 0x260]
mov byte [ebp - 4], 0xd
call fcn.0045e810
mov byte [ebp - 4], 0xb
mov edx, dword [ebp - 0x498]
cmp edx, 8
jb 0x414df8
mov ecx, dword [ebp - 0x4ac]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x414dee
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x4155f9
push edx
push ecx
call fcn.004697c4
add esp, 8
mov ecx, dword [ebp - 0x494]
lea eax, [ebp - 0x230]
push eax
lea eax, [ebp - 0x260]
push eax
lea edx, [ebp - 0x248]
call fcn.00450b50
add esp, 8
mov ecx, edi
cmp dword [edi + 0x14], 0x10
jb 0x414e24
mov ecx, dword [edi]
mov eax, dword [edi + 0x10]
cmp byte [eax + ecx - 1], 0x2b
je 0x414f9a
mov byte [ebp - 4], 0xa
mov edx, dword [ebp - 0x24c]
cmp edx, 8
jb 0x414e76
mov ecx, dword [ebp - 0x260]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x414e6c
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x4155f9
push edx
push ecx
call fcn.004697c4
add esp, 8
xor eax, eax
mov byte [ebp - 4], 7
mov edx, dword [ebp - 0x21c]
mov dword [ebp - 0x250], 0
mov dword [ebp - 0x24c], 7
mov word [ebp - 0x260], ax
cmp edx, 8
jb 0x414ed7
mov ecx, dword [ebp - 0x230]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x414ecd
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x4155f9
push edx
push ecx
call fcn.004697c4
add esp, 8
xor eax, eax
mov byte [ebp - 4], 5
mov edx, dword [ebp - 0x234]
mov dword [ebp - 0x220], 0
mov dword [ebp - 0x21c], 7
mov word [ebp - 0x230], ax
cmp edx, 0x10
jb 0x414f32
mov ecx, dword [ebp - 0x248]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x414f28
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x4155f9
push edx
push ecx
call fcn.004697c4
add esp, 8
mov byte [ebp - 4], 0
mov edx, dword [ebp - 0x264]
mov dword [ebp - 0x238], 0
mov dword [ebp - 0x234], 0xf
mov byte [ebp - 0x248], 0
cmp edx, 8
jb 0x4155a6
mov ecx, dword [ebp - 0x278]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x414f8b
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x4155f9
push edx
push ecx
call fcn.004697c4
add esp, 8
jmp 0x4155a6
push str.Extension_SDKs
lea ecx, [ebp - 0x4ac]
call fcn.004513d0
lea eax, [ebp - 0x230]
mov byte [ebp - 4], 0xe
push eax
lea ecx, [ebp - 0x2f0]
call fcn.0045d430
lea eax, [ebp - 0x4ac]
mov byte [ebp - 4], 0xf
push eax
lea ecx, [ebp - 0x2f0]
call fcn.0045e810
push eax
lea ecx, [ebp - 0x4c4]
call fcn.0045d430
or dword [ebp - 0x490], 4
mov byte [ebp - 4], 0xe
mov edx, dword [ebp - 0x2dc]
cmp edx, 8
jb 0x41502d
mov ecx, dword [ebp - 0x2f0]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x415023
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x4155f9
push edx
push ecx
call fcn.004697c4
add esp, 8
xor eax, eax
mov dword [ebp - 0x2e0], 0
mov dword [ebp - 0x2dc], 7
mov word [ebp - 0x2f0], ax
lea eax, [ebp - 0x4c4]
mov byte [ebp - 4], 0x10
push eax
lea ecx, [ebp - 0x2c4]
call fcn.0045c1d0
mov byte [ebp - 4], 0x12
mov edx, dword [ebp - 0x4b0]
cmp edx, 8
jb 0x4150a4
mov ecx, dword [ebp - 0x4c4]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x41509a
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x4155f9
push edx
push ecx
call fcn.004697c4
add esp, 8
xor eax, eax
mov dword [ebp - 0x4b4], 0
mov dword [ebp - 0x4b0], 7
mov word [ebp - 0x4c4], ax
mov byte [ebp - 4], 0x13
mov edx, dword [ebp - 0x498]
cmp edx, 8
jb 0x415105
mov ecx, dword [ebp - 0x4ac]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x4150fb
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x4155f9
push edx
push ecx
call fcn.004697c4
add esp, 8
push 0x48
lea eax, [ebp - 0x338]
push 0
push eax
call fcn.00481150
mov ecx, dword [ebp - 0x2c0]
add esp, 0xc
test ecx, ecx
je 0x41512c
lock inc dword [ecx + 4]
mov ecx, dword [ebp - 0x2c0]
mov eax, dword [ebp - 0x2c4]
mov dword [ebp - 0x338], eax
mov dword [ebp - 0x334], ecx
lea eax, [ebp - 0x2bc]
mov byte [ebp - 4], 0x14
push eax
lea ecx, [ebp - 0x330]
call fcn.0045d430
lea eax, [ebp - 0x2a4]
mov byte [ebp - 4], 0x15
push eax
lea ecx, [ebp - 0x318]
call fcn.0045d430
mov eax, dword [ebp - 0x28c]
mov dword [ebp - 0x300], eax
mov eax, dword [ebp - 0x288]
mov dword [ebp - 0x2fc], eax
mov eax, dword [ebp - 0x284]
mov dword [ebp - 0x2f8], eax
mov eax, dword [ebp - 0x280]
mov dword [ebp - 0x2f4], eax
push 0x48
lea eax, [ebp - 0x380]
push 0
push eax
call fcn.00481150
push 4
mov byte [ebp - 4], 0x17
call fcn.004697d2
add esp, 0x10
mov dword [ebp - 0x380], 0
lea ecx, [ebp - 0x380]
mov dword [ebp - 0x37c], 0
mov dword [eax], 0
push 0x45bdd0
push eax
call fcn.0045bd20
movaps xmm0, xmmword [0x50e060]
xor eax, eax
mov dword [ebp - 0x368], 0
mov dword [ebp - 0x364], 7
mov word [ebp - 0x378], ax
mov dword [ebp - 0x350], eax
mov dword [ebp - 0x34c], 7
mov word [ebp - 0x360], ax
movups xmmword [ebp - 0x348], xmm0
mov byte [ebp - 4], 0x18
mov edi, dword [ebp - 0x380]
mov esi, dword [ebp - 0x338]
test esi, esi
je 0x415248
test edi, edi
je 0x415251
mov eax, dword [esi]
xor ecx, ecx
cmp eax, dword [edi]
sete cl
jmp 0x415253
test edi, edi
jne 0x415251
lea ecx, [edi + 1]
jmp 0x415253
xor ecx, ecx
test cl, cl
jne 0x415424
lea eax, [ebp - 0x248]
push eax
lea ecx, [ebp - 0x4ac]
call fcn.0045ebb0
lea eax, [ebp - 0x4ac]
mov byte [ebp - 4], 0x19
push eax
lea edx, [ebp - 0x318]
lea ecx, [ebp - 0x4c4]
call fcn.0045be90
add esp, 4
lea ecx, [ebp - 0x260]
push eax
call fcn.0045d990
mov edx, dword [ebp - 0x4b0]
cmp edx, 8
jb 0x4152d8
mov ecx, dword [ebp - 0x4c4]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x4152ce
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x4155f9
push edx
push ecx
call fcn.004697c4
add esp, 8
xor eax, eax
mov byte [ebp - 4], 0x18
mov edx, dword [ebp - 0x498]
mov dword [ebp - 0x4b4], 0
mov dword [ebp - 0x4b0], 7
mov word [ebp - 0x4c4], ax
cmp edx, 8
jb 0x415339
mov ecx, dword [ebp - 0x4ac]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x41532f
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x4155f9
push edx
push ecx
call fcn.004697c4
add esp, 8
push str.SDKManifest.xml
lea ecx, [ebp - 0x4ac]
call fcn.004513d0
push eax
lea ecx, [ebp - 0x260]
mov byte [ebp - 4], 0x1a
call fcn.0045e810
mov byte [ebp - 4], 0x18
mov edx, dword [ebp - 0x498]
cmp edx, 8
jb 0x41539d
mov ecx, dword [ebp - 0x4ac]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x415393
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x4155f9
push edx
push ecx
call fcn.004697c4
add esp, 8
mov ecx, dword [ebp - 0x494]
lea eax, [ebp - 0x230]
push eax
lea eax, [ebp - 0x260]
push eax
lea edx, [ebp - 0x248]
call fcn.00450b50
mov esi, dword [ebp - 0x338]
add esp, 8
mov eax, dword [esi]
test eax, eax
je 0x415235
lea ecx, [ebp - 0x27c]
push ecx
push eax
lea eax, [ebp - 0x218]
push eax
call fcn.004666d1
add esp, 0xc
cmp word [eax], 0
jne 0x415401
push dword [esi]
call fcn.0046656a
add esp, 4
mov dword [esi], 0
jmp 0x415235
push dword [ebp - 0x4cc]
lea eax, [ebp - 0x218]
push dword [ebp - 0x27c]
lea ecx, [ebp - 0x338]
push eax
call fcn.0045c0b0
jmp 0x41522f
lea ecx, [ebp - 0x380]
call fcn.0045bba0
lea ecx, [ebp - 0x338]
call fcn.0045bba0
lea ecx, [ebp - 0x2c4]
call fcn.0045bba0
mov byte [ebp - 4], 0xa
mov edx, dword [ebp - 0x24c]
cmp edx, 8
jb 0x415489
mov ecx, dword [ebp - 0x260]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x41547f
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x4155f9
push edx
push ecx
call fcn.004697c4
add esp, 8
xor eax, eax
mov byte [ebp - 4], 7
mov edx, dword [ebp - 0x21c]
mov dword [ebp - 0x250], 0
mov dword [ebp - 0x24c], 7
mov word [ebp - 0x260], ax
cmp edx, 8
jb 0x4154ea
mov ecx, dword [ebp - 0x230]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x4154e0
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x4155f9
push edx
push ecx
call fcn.004697c4
add esp, 8
xor eax, eax
mov byte [ebp - 4], 5
mov edx, dword [ebp - 0x234]
mov dword [ebp - 0x220], 0
mov dword [ebp - 0x21c], 7
mov word [ebp - 0x230], ax
cmp edx, 0x10
jb 0x415545
mov ecx, dword [ebp - 0x248]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x41553b
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x4155f9
push edx
push ecx
call fcn.004697c4
add esp, 8
mov dword [ebp - 0x238], 0
mov dword [ebp - 0x234], 0xf
mov byte [ebp - 0x248], 0
mov byte [ebp - 4], 0
mov edx, dword [ebp - 0x264]
cmp edx, 8
jb 0x4155a0
mov ecx, dword [ebp - 0x278]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x415596
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x4155f9
push edx
push ecx
call fcn.004697c4
add esp, 8
mov edi, dword [ebp - 0x48c]
add edi, 0x18
mov dword [ebp - 0x48c], edi
cmp edi, dword [ebp - 0x4c8]
jne 0x4146f4
mov eax, dword [ebp - 0x494]
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.004697b3
mov esp, ebp
pop ebp
ret 0xc
sub esp, 0x18
mov ecx, esp
push str.Path_
call fcn.00465f50
mov edx, str._is_not_a_file_or_directory
mov ecx, edi
call fcn.00450a60
call fcn.0048409c
int3