Function at 0x424d00
Capabilities:
Access peb ldr_data
Get kernel32 base address
Get ntdll base address

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x99166f
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x14c
push ebx
xor ebx, ebx
push esi
push edi
mov edi, dword [ebp + 0x34]
xor esi, esi
mov dword [edi + 0x30], ebx
mov dword [edi + 0x34], ebx
mov dword [edi + 0x28], ebx
mov dword [edi + 0x2c], ebx
mov dword [edi + 0x20], ebx
mov dword [edi + 0x24], ebx
mov dword [edi + 0x18], ebx
mov dword [edi + 0x1c], ebx
mov dword [edi + 0x10], ebx
mov dword [edi + 0x14], ebx
mov dword [edi + 8], ebx
mov dword [edi + 0xc], ebx
mov dword [edi], ebx
mov dword [edi + 4], ebx
mov dword [ebp - 0x48], ebx
mov dword [ebp - 0x44], ebx
mov dword [ebp - 0x38], ebx
mov dword [ebp - 0x34], esi
mov dword [ebp - 0x30], ebx
mov eax, dword [ebp + 0x20]
mov dword [ebp - 4], ebx
cmp byte [eax + 0x3c], bl
je 0x424d70
lea ecx, [ebx + 1]
jmp 0x424d76
mov ecx, dword [ebp + 0x14]
mov ecx, dword [ecx + 4]
mov dword [ebp - 0x2c], ecx
mov dword [ebp - 0x28], ebx
cmp ecx, ebx
jbe 0x424edd
lea ecx, [ebp - 0xfc]
call fcn.0040cc80
lea ecx, [ebp - 0xd4]
call fcn.00409c70
mov edx, dword [ebp + 0x20]
mov byte [ebp - 4], 1
mov dword [ebp - 0xfc], ebx
mov dword [ebp - 0xf8], ebx
cmp byte [edx + 0x3c], bl
jne 0x424e05
mov eax, dword [ebp + 0x14]
mov ecx, dword [eax]
mov edx, dword [ebp - 0x28]
mov eax, dword [ecx + edx*4]
push eax
lea ecx, [ebp - 0x24]
call fcn.00409dc0
mov eax, dword [ebp - 0x24]
push 1
push eax
lea ecx, [ebp - 0xfc]
mov byte [ebp - 4], 2
call fcn.0040d1c0
test al, al
je 0x424f38
mov ecx, dword [ebp - 0xdc]
shr ecx, 4
test cl, 1
jne 0x424fd3
mov edx, dword [ebp - 0x24]
push edx
mov byte [ebp - 4], 1
call fcn.0092ae01
add esp, 4
mov eax, dword [ebp - 0xfc]
mov ecx, dword [ebp - 0xf8]
mov dword [ebp - 0x54], eax
mov eax, dword [ebp - 0x30]
mov dword [ebp - 0x50], ecx
cmp esi, eax
jne 0x424e90
cmp eax, 0x7fffffff
jae 0x425022
mov ecx, SysReAllocString
sub ecx, eax
shr eax, 2
inc eax
cmp eax, ecx
jbe 0x424e3a
mov eax, ecx
add eax, dword [ebp - 0x30]
xor ecx, ecx
mov dword [ebp - 0x14], eax
mov edx, 8
mul edx
seto cl
neg ecx
or ecx, eax
push ecx
call fcn.0092ae17
add esp, 4
mov dword [ebp - 0x10], eax
cmp esi, ebx
je 0x424e78
mov ecx, dword [ebp - 0x38]
mov edx, dword [ebp - 0x10]
lea eax, [esi*8]
push eax
push ecx
push edx
call fcn.0092a5e0
add esp, 0xc
mov eax, dword [ebp - 0x38]
push eax
call fcn.0092ae01
mov ecx, dword [ebp - 0x10]
mov edx, dword [ebp - 0x14]
add esp, 4
mov dword [ebp - 0x38], ecx
mov dword [ebp - 0x30], edx
mov ecx, dword [ebp - 0x38]
mov edx, dword [ebp - 0x54]
mov eax, esi
mov dword [ecx + eax*8], edx
mov edx, dword [ebp - 0x50]
mov dword [ecx + eax*8 + 4], edx
mov eax, dword [ebp - 0xfc]
mov edx, dword [ebp - 0xd4]
mov ecx, dword [ebp - 0xf8]
inc esi
add dword [ebp - 0x48], eax
push edx
mov dword [ebp - 0x34], esi
adc dword [ebp - 0x44], ecx
mov byte [ebp - 4], bl
call fcn.0092ae01
mov eax, dword [ebp - 0x28]
inc eax
add esp, 4
mov dword [ebp - 0x28], eax
cmp eax, dword [ebp - 0x2c]
jb 0x424d84
mov ecx, dword [ebp - 0x2c]
xor eax, eax
mov dword [ebp - 0x14], eax
cmp ecx, ebx
je 0x424ef8
mov edx, dword [ebp - 0x2c]
push edx
call fcn.0092ae17
mov ecx, dword [ebp - 0x2c]
add esp, 4
mov dword [ebp - 0x14], eax
mov byte [ebp - 4], 4
cmp ecx, ebx
jbe 0x424f0e
mov ecx, dword [ebp - 0x2c]
push ecx
push ebx
push eax
call fcn.0092aac0
add esp, 0xc
push 0x180
call fcn.0092aebf
add esp, 4
mov dword [ebp - 0x4c], eax
mov byte [ebp - 4], 5
cmp eax, ebx
je 0x425037
mov ecx, eax
call fcn.00421b20
mov esi, eax
jmp 0x425039
call fcn.0040da40
mov esi, dword [ebp + 0x30]
push str.Cannot_find_archive_file
mov ecx, esi
mov edi, eax
call fcn.0040a030
push 0x9953f0
mov ecx, esi
call fcn.0040a210
push edi
lea eax, [ebp - 0xc4]
push eax
call fcn.004202d0
push eax
mov ecx, esi
mov byte [ebp - 4], 3
call fcn.0040a180
mov ecx, dword [ebp - 0xc4]
push ecx
mov byte [ebp - 4], 2
call fcn.0092ae01
add esp, 4
push 0x9953f0
mov ecx, esi
call fcn.0040a210
lea edx, [ebp - 0x24]
push edx
mov ecx, esi
call fcn.0040a180
mov eax, dword [ebp - 0x24]
push eax
call fcn.0092ae01
mov ecx, dword [ebp - 0xd4]
push ecx
call fcn.0092ae01
mov edx, dword [ebp - 0x38]
push edx
call fcn.0092ae01
add esp, 0xc
mov eax, edi
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
mov esp, ebp
pop ebp
ret 0x30
mov esi, dword [ebp + 0x30]
push 0x80004005
lea eax, [ebp - 0x24]
push eax
push str.The_item_is_a_directory
call fcn.00424420
mov ecx, dword [ebp - 0x24]
push ecx
call fcn.0092ae01
mov edx, dword [ebp - 0xd4]
push edx
call fcn.0092ae01
mov eax, dword [ebp - 0x38]
push eax
call fcn.0092ae01
add esp, 0xc
pop edi
pop esi
mov eax, 0x80004005
pop ebx
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
mov esp, ebp
pop ebp
ret 0x30
push 0x9c2574
lea ecx, [ebp + 0x20]
push ecx
mov dword [ebp + 0x20], 0x7e5
call fcn.0092ae22
xor esi, esi
mov byte [ebp - 4], 4
mov dword [ebp - 0x158], esi
cmp esi, ebx
je 0x42504f
mov edx, dword [esi]
mov eax, dword [edx + 4]
push esi
call eax
mov edx, dword [ebp + 0x20]
mov eax, dword [edx + 0x10]
mov ecx, dword [edx + 0xc]
mov edx, dword [edx + 8]
cmp dword [ebp - 0x2c], 1
mov dword [ebp - 0x10], edx
seta byte [ebp - 0x16]
mov dl, byte [ebp - 0x16]
mov byte [esi + 0x40], dl
mov edx, dword [ebp - 0x10]
mov byte [ebp - 4], 6
mov dword [esi + 0x44], edx
mov dword [esi + 0x48], ecx
mov dword [esi + 0x130], eax
mov byte [esi + 0x35], bl
mov dword [esi + 0x160], ebx
mov dword [esi + 0x164], ebx
mov dword [esi + 0x158], ebx
mov dword [esi + 0x15c], ebx
mov dword [esi + 0x150], ebx
mov dword [esi + 0x154], ebx
mov dword [esi + 0x148], ebx
mov dword [esi + 0x14c], ebx
mov dword [esi + 0x140], ebx
mov dword [esi + 0x144], ebx
cmp byte [ebp - 0x16], bl
je 0x425114
mov edx, dword [ebp - 0x44]
mov eax, dword [ebp + 0x2c]
mov ecx, dword [eax]
push edx
mov edx, dword [ebp - 0x48]
push edx
push eax
mov eax, dword [ecx + 0xc]
call eax
mov dword [ebp - 0x10], eax
cmp eax, ebx
je 0x425114
mov ecx, dword [esi]
mov edx, dword [ecx + 8]
push esi
mov byte [ebp - 4], 4
call edx
mov eax, dword [ebp - 0x14]
push eax
call fcn.0092ae01
mov ecx, dword [ebp - 0x38]
push ecx
call fcn.0092ae01
mov eax, dword [ebp - 0x10]
add esp, 8
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
mov esp, ebp
pop ebp
ret 0x30
mov dword [ebp - 0x40], ebx
mov dword [ebp - 0x3c], ebx
mov byte [ebp - 0x15], bl
mov dword [ebp - 0x28], ebx
cmp dword [ebp - 0x2c], ebx
jbe 0x425802
lea esp, [esp]
mov edx, dword [ebp - 0x14]
mov eax, dword [ebp - 0x28]
cmp byte [edx + eax], bl
jne 0x4257ef
mov ecx, esi
call fcn.00420840
mov ecx, dword [ebp + 0x14]
mov edx, dword [ecx]
mov eax, dword [ebp - 0x28]
mov edi, dword [edx + eax*4]
lea ecx, [ebp - 0xfc]
mov dword [ebp - 0x10], edi
call fcn.0040cc80
lea ecx, [ebp - 0xd4]
call fcn.00409c70
mov ecx, dword [ebp + 0x20]
cmp byte [ecx + 0x3c], bl
mov byte [ebp - 4], 7
lea ecx, [ebp - 0xfc]
je 0x425195
call fcn.0040cc80
mov dword [ebp - 0xfc], ebx
mov dword [ebp - 0xf8], ebx
mov dword [ebp - 0xdc], ebx
jmp 0x4251b9
mov eax, dword [edi]
push 1
push eax
call fcn.0040d1c0
test al, al
je 0x425db4
mov edx, dword [ebp - 0xdc]
shr edx, 4
test dl, 1
jne 0x425db4
mov eax, dword [edi]
mov edi, dword [ebp + 0x20]
movzx edi, byte [edi + 0x3f]
mov ecx, dword [ebp + 0x28]
mov edx, dword [ecx]
push edi
push eax
mov eax, dword [edx]
call eax
mov edi, eax
cmp edi, ebx
jne 0x425b11
mov dword [ebp - 0xb4], ebx
mov dword [ebp - 0xb0], ebx
mov dword [ebp - 0xac], ebx
mov dword [ebp - 0xa8], ebx
mov dword [ebp - 0xa4], ebx
mov dword [ebp - 0xa0], ebx
lea ecx, [ebp - 0x90]
mov byte [ebp - 4], 0xa
mov dword [ebp - 0x9c], ebx
mov dword [ebp - 0x98], ebx
mov word [ebp - 0x94], bx
call fcn.00409c70
lea ecx, [ebp - 0x84]
mov dword [ebp - 0x4c], ecx
or edi, 0xffffffff
lea ecx, [ebp - 0x6c]
mov byte [ebp - 4], 0xb
mov dword [ebp - 0x84], ebx
mov dword [ebp - 0x80], ebx
mov dword [ebp - 0x7c], ebx
mov dword [ebp - 0x78], edi
mov dword [ebp - 0x74], ebx
mov dword [ebp - 0x70], ebx
call fcn.00409c70
lea ecx, [ebp - 0x60]
mov byte [ebp - 4], 0xc
call fcn.00409c70
mov edx, dword [ebp + 0xc]
push edx
lea ecx, [ebp - 0x24]
mov byte [ebp - 4], 0xd
call fcn.00424590
lea ecx, [ebp - 0x108]
mov byte [ebp - 4], 0xe
mov dword [ebp - 0x14c], ebx
mov dword [ebp - 0x144], edi
mov dword [ebp - 0x13c], ebx
mov dword [ebp - 0x134], 0x101
mov word [ebp - 0x130], bx
mov byte [ebp - 0x12e], bl
mov dword [ebp - 0x12c], ebx
mov dword [ebp - 0x128], ebx
mov dword [ebp - 0x140], 0x1010101
mov dword [ebp - 0x138], 0x1010100
mov dword [ebp - 0x124], ebx
mov dword [ebp - 0x120], ebx
mov dword [ebp - 0x11c], ebx
mov dword [ebp - 0x118], ebx
mov dword [ebp - 0x114], ebx
mov dword [ebp - 0x110], ebx
mov byte [ebp - 0x10c], bl
call fcn.00409c70
mov eax, dword [ebp + 8]
mov edx, dword [ebp + 0x10]
lea ecx, [ebp - 0x24]
mov dword [ebp - 0x14c], eax
mov eax, dword [ebp + 0x20]
mov dword [ebp - 0x124], ecx
mov cl, byte [eax + 0x3c]
mov dword [ebp - 0x120], edx
mov edx, dword [ebp - 0x10]
mov byte [ebp - 0x10c], cl
push edx
lea ecx, [ebp - 0x108]
mov byte [ebp - 4], 0xf
mov dword [ebp - 0x11c], ebx
call fcn.00409ee0
mov eax, dword [ebp + 0x24]
push eax
lea ecx, [ebp - 0x14c]
push ecx
lea ecx, [ebp - 0xb4]
call fcn.00429670
mov edi, eax
cmp edi, ebx
jne 0x425350
cmp dword [ebp - 0x78], ebx
jl 0x42535c
mov edi, 1
jmp 0x42535c
cmp edi, 0x80004004
je 0x425865
mov edx, dword [ebp - 0x10]
mov eax, dword [edx]
mov ecx, dword [ebp + 0x28]
mov edx, dword [ecx]
mov edx, dword [edx + 4]
push edi
push eax
lea eax, [ebp - 0xb4]
push eax
mov eax, dword [ebp + 8]
push eax
call edx
mov dword [ebp - 0x4c], eax
cmp eax, ebx
jne 0x4259ad
cmp edi, ebx
je 0x42547d
mov eax, dword [ebp + 0x20]
mov byte [ebp - 0x15], 1
cmp byte [eax + 0x3c], bl
jne 0x4253a9
mov ecx, dword [ebp - 0xfc]
add dword [ebp - 0x40], ecx
mov edx, dword [ebp - 0xf8]
adc dword [ebp - 0x3c], edx
mov eax, dword [ebp - 0x108]
push eax
call fcn.0092ae01
mov edi, dword [ebp - 0x20]
add esp, 4
cmp edi, ebx
je 0x4253d5
nop
mov ecx, dword [ebp - 0x24]
mov eax, dword [ecx + edi*4 - 4]
dec edi
push eax
call fcn.0092ae0c
add esp, 4
cmp edi, ebx
jne 0x4253c0
mov edx, dword [ebp - 0x24]
push edx
call fcn.0092ae01
add esp, 4
lea ecx, [ebp - 0xb4]
mov byte [ebp - 4], 0x1d
call fcn.004289d0
mov eax, dword [ebp - 0x60]
push eax
call fcn.0092ae01
mov ecx, dword [ebp - 0x6c]
push ecx
call fcn.0092ae01
mov edx, dword [ebp - 0x90]
push edx
call fcn.0092ae01
add esp, 0xc
lea ecx, [ebp - 0xa8]
call fcn.00414090
mov eax, dword [ebp - 0xb0]
mov byte [ebp - 4], 0x1e
cmp eax, ebx
je 0x425459
lea ebx, [ebx]
mov ecx, dword [ebp - 0xb4]
mov edi, dword [ecx + eax*4 - 4]
dec eax
mov dword [ebp - 0x10], eax
cmp edi, ebx
je 0x425455
mov ecx, edi
call fcn.004244c0
push edi
call fcn.0092ae0c
mov eax, dword [ebp - 0x10]
add esp, 4
cmp eax, ebx
jne 0x425430
mov edx, dword [ebp - 0xb4]
push edx
call fcn.0092ae01
mov eax, dword [ebp - 0xd4]
push eax
mov byte [ebp - 4], 6
call fcn.0092ae01
add esp, 8
jmp 0x4257ef
mov eax, dword [ebp - 0xb0]
cmp eax, ebx
je 0x4255a4
mov ecx, dword [ebp - 0xb4]
mov eax, dword [ecx + eax*4 - 4]
mov eax, dword [eax + 0x3c]
cmp eax, ebx
jl 0x4255a4
mov edx, dword [ebp - 0x14c]
mov ecx, dword [edx + 8]
mov eax, dword [ecx + eax*4]
mov edx, dword [eax]
shr edx, 0xd
and dl, 1
je 0x4255a4
mov eax, dword [ebp + 0x20]
cmp byte [eax + 0x3f], bl
jne 0x42553c
mov ecx, dword [ebp - 0x10]
mov eax, dword [ecx]
mov ecx, dword [ebp + 0x28]
mov edx, dword [ecx]
mov edx, dword [edx + 4]
push 0x80004001
push eax
lea eax, [ebp - 0xb4]
push eax
mov eax, dword [ebp + 8]
push eax
call edx
mov edi, eax
cmp edi, ebx
jne 0x425aeb
mov eax, dword [ebp + 0x20]
mov byte [ebp - 0x15], 1
cmp byte [eax + 0x3c], bl
jne 0x42550a
mov ecx, dword [ebp - 0xfc]
add dword [ebp - 0x40], ecx
mov edx, dword [ebp - 0xf8]
adc dword [ebp - 0x3c], edx
mov eax, dword [ebp - 0x108]
push eax
call fcn.0092ae01
add esp, 4
lea ecx, [ebp - 0x24]
call fcn.00424650
lea ecx, [ebp - 0xb4]
mov byte [ebp - 4], 7
call fcn.00424760
mov ecx, dword [ebp - 0xd4]
push ecx
jmp 0x4257e3
mov edx, eax
add edx, 0x30
push edx
lea ecx, [ebp - 0xc4]
call fcn.00409dc0
mov byte [ebp - 4], 0x1f
cmp dword [ebp - 0xc0], ebx
jne 0x425573
mov eax, dword [ebp - 0x10]
mov eax, dword [eax]
lea ecx, [ebp - 0xc4]
push ecx
push eax
call fcn.0040c830
cmp dword [ebp - 0xc0], ebx
je 0x42557f
lea edx, [ebp - 0xc4]
push edx
call fcn.0040dff0
lea eax, [ebp - 0xc4]
push eax
lea ecx, [esi + 0x168]
call fcn.00409ee0
mov ecx, dword [ebp - 0xc4]
push ecx
mov byte [ebp - 4], 0xf
call fcn.0092ae01
add esp, 4
mov edx, dword [ebp + 0x20]
cmp byte [edx + 0x3c], bl
jne 0x425662
mov eax, dword [ebp - 0xa4]
cmp eax, ebx
je 0x425662
mov ecx, dword [ebp - 0x98]
mov edi, dword [ebp - 0x9c]
mov dword [ebp - 0x150], ecx
mov dword [ebp - 0x10], ebx
jbe 0x425625
jmp 0x4255e0
mov edx, dword [ebp - 0xa8]
mov eax, dword [ebp - 0x10]
mov eax, dword [edx + eax*4]
mov ecx, dword [ebp + 0x18]
push eax
push ecx
call fcn.00424690
cmp eax, ebx
jl 0x425616
cmp eax, dword [ebp - 0x28]
jbe 0x425616
mov edx, dword [ebp - 0x14]
mov ecx, dword [ebp - 0x38]
mov byte [eax + edx], 1
sub edi, dword [ecx + eax*8]
mov eax, dword [ecx + eax*8 + 4]
sbb dword [ebp - 0x150], eax
mov eax, dword [ebp - 0x10]
inc eax
mov dword [ebp - 0x10], eax
cmp eax, dword [ebp - 0xa4]
jb 0x4255e0
mov eax, dword [ebp - 0x150]
mov ecx, edi
or ecx, eax
je 0x425662
add edi, dword [ebp - 0x48]
adc eax, dword [ebp - 0x44]
cmp eax, ebx
jg 0x425645
jl 0x425641
cmp edi, ebx
jae 0x425645
xor edi, edi
xor eax, eax
mov ecx, dword [ebp + 0x2c]
mov edx, dword [ecx]
push eax
push edi
mov dword [ebp - 0x44], eax
mov eax, dword [edx + 0xc]
push ecx
mov dword [ebp - 0x48], edi
call eax
mov edi, eax
cmp edi, ebx
jne 0x425b56
mov ecx, dword [ebp - 0xb4]
mov edx, dword [ebp - 0xb0]
mov eax, dword [ecx + edx*4 - 4]
mov ecx, dword [ebp + 0x20]
cmp byte [ecx + 0x3c], bl
jne 0x425689
cmp byte [ebp - 0xd7], bl
jne 0x425689
mov edx, 1
jmp 0x42568b
xor edx, edx
mov byte [eax + 0x4f], dl
cmp dl, bl
je 0x4256b0
mov edx, dword [ebp - 0xe4]
mov dword [eax + 0x44], edx
mov edx, dword [ebp - 0xe0]
mov dword [eax + 0x48], edx
mov edx, 0x17
mov word [eax + 0x4c], dx
mov byte [eax + 0x4e], bl
mov edi, dword [ebp + 0x30]
mov edx, dword [ebp + 0x2c]
lea eax, [ebp - 0x54]
push eax
mov eax, dword [ebp + 0x28]
push edi
push esi
push edx
mov edx, dword [ebp + 0x1c]
push eax
mov eax, dword [ebp - 0x9c]
add eax, dword [ebp - 0xfc]
push ebx
push edx
mov edx, dword [ebp - 0x98]
adc edx, dword [ebp - 0xf8]
push edx
push eax
mov eax, dword [ebp + 8]
push eax
lea edx, [ebp - 0xb4]
call fcn.004247d0
mov dword [ebp - 0x4c], eax
cmp eax, ebx
jne 0x425be6
mov ecx, dword [ebp + 0x20]
cmp byte [ecx + 0x3c], bl
jne 0x425722
mov edx, dword [ebp - 0x9c]
add edx, dword [ebp - 0xfc]
mov ecx, dword [ebp - 0x98]
adc ecx, dword [ebp - 0xf8]
mov dword [ebp - 0x54], edx
mov dword [ebp - 0x50], ecx
jmp 0x425728
mov ecx, dword [ebp - 0x50]
mov edx, dword [ebp - 0x54]
add dword [ebp - 0x40], edx
adc dword [ebp - 0x3c], ecx
mov eax, dword [esi + 0x13c]
add dword [eax + 0x20], edx
adc dword [eax + 0x24], ecx
mov eax, dword [esi + 0x13c]
mov edx, dword [esi + 0x158]
mov dword [eax + 0x28], edx
mov ecx, dword [esi + 0x15c]
mov dword [eax + 0x2c], ecx
cmp dword [edi + 4], ebx
jne 0x425ceb
mov edx, dword [ebp - 0x108]
push edx
call fcn.0092ae01
mov edi, dword [ebp - 0x20]
add esp, 4
cmp edi, ebx
je 0x425786
mov eax, dword [ebp - 0x24]
mov eax, dword [eax + edi*4 - 4]
dec edi
push eax
call fcn.0092ae0c
add esp, 4
cmp edi, ebx
jne 0x425771
mov ecx, dword [ebp - 0x24]
push ecx
call fcn.0092ae01
add esp, 4
lea ecx, [ebp - 0xb4]
mov byte [ebp - 4], 0x30
call fcn.004289d0
mov edx, dword [ebp - 0x60]
push edx
call fcn.0092ae01
mov eax, dword [ebp - 0x6c]
push eax
call fcn.0092ae01
mov ecx, dword [ebp - 0x90]
push ecx
call fcn.0092ae01
add esp, 0xc
lea ecx, [ebp - 0xa8]
call fcn.00414090
lea ecx, [ebp - 0xb4]
mov byte [ebp - 4], 7
call fcn.004246f0
mov edx, dword [ebp - 0xd4]
push edx
mov byte [ebp - 4], 6
call fcn.0092ae01
add esp, 4
mov eax, dword [ebp - 0x28]
inc eax
mov dword [ebp - 0x28], eax
cmp eax, dword [ebp - 0x2c]
jb 0x425130
mov edi, dword [ebp + 0x34]
cmp byte [ebp - 0x16], bl
jne 0x425810
cmp byte [ebp - 0x15], bl
je 0x425eab
mov edx, dword [ebp - 0x44]
mov eax, dword [ebp + 0x2c]
mov ecx, dword [eax]
push edx
mov edx, dword [ebp - 0x48]
push edx
push eax
mov eax, dword [ecx + 0xc]
call eax
mov dword [ebp + 0x20], eax
cmp eax, ebx
je 0x425e5e
mov ecx, dword [esi]
mov edx, dword [ecx + 8]
push esi
mov byte [ebp - 4], 4
call edx
mov eax, dword [ebp - 0x14]
push eax
call fcn.0092ae01
mov ecx, dword [ebp - 0x38]
push ecx
call fcn.0092ae01
mov eax, dword [ebp + 0x20]
add esp, 8
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
mov esp, ebp
pop ebp
ret 0x30
mov edx, dword [ebp - 0x108]
push edx
call fcn.0092ae01
mov edi, dword [ebp - 0x20]
add esp, 4
cmp edi, ebx
je 0x425895
jmp 0x425880
mov eax, dword [ebp - 0x24]
mov eax, dword [eax + edi*4 - 4]
dec edi
push eax
call fcn.0092ae0c
add esp, 4
cmp edi, ebx
jne 0x425880
mov ecx, dword [ebp - 0x24]
push ecx
call fcn.0092ae01
add esp, 4
lea ecx, [ebp - 0xb4]
mov byte [ebp - 4], 0x13
call fcn.004289d0
mov edx, dword [ebp - 0x60]
push edx
call fcn.0092ae01
mov eax, dword [ebp - 0x6c]
push eax
call fcn.0092ae01
mov ecx, dword [ebp - 0x90]
push ecx
call fcn.0092ae01
mov eax, dword [ebp - 0xa4]
add esp, 0xc
cmp eax, ebx
je 0x42590a
jmp 0x4258e0
mov edx, dword [ebp - 0xa8]
mov edi, dword [edx + eax*4 - 4]
dec eax
mov dword [ebp + 0x20], eax
cmp edi, ebx
je 0x425906
mov eax, dword [edi]
push eax
call fcn.0092ae01
push edi
call fcn.0092ae0c
mov eax, dword [ebp + 0x20]
add esp, 8
cmp eax, ebx
jne 0x4258e0
mov eax, dword [ebp - 0xa8]
push eax
call fcn.0092ae01
add esp, 4
mov eax, dword [ebp - 0xb0]
mov byte [ebp - 4], 0x14
cmp eax, ebx
je 0x425959
jmp 0x425930
mov ecx, dword [ebp - 0xb4]
mov edi, dword [ecx + eax*4 - 4]
dec eax
mov dword [ebp + 0x20], eax
cmp edi, ebx
je 0x425955
mov ecx, edi
call fcn.004244c0
push edi
call fcn.0092ae0c
mov eax, dword [ebp + 0x20]
add esp, 4
cmp eax, ebx
jne 0x425930
mov edx, dword [ebp - 0xb4]
push edx
call fcn.0092ae01
mov eax, dword [ebp - 0xd4]
push eax
call fcn.0092ae01
mov ecx, dword [esi]
mov edx, dword [ecx + 8]
add esp, 8
push esi
mov byte [ebp - 4], 4
call edx
mov eax, dword [ebp - 0x14]
push eax
call fcn.0092ae01
mov ecx, dword [ebp - 0x38]
push ecx
call fcn.0092ae01
add esp, 8
pop edi
pop esi
mov eax, 0x80004004
pop ebx
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
mov esp, ebp
pop ebp
ret 0x30
mov edx, dword [ebp - 0x108]
push edx
call fcn.0092ae01
mov edi, dword [ebp - 0x20]
add esp, 4
cmp edi, ebx
je 0x4259d8
mov eax, dword [ebp - 0x24]
mov eax, dword [eax + edi*4 - 4]
dec edi
push eax
call fcn.0092ae0c
add esp, 4
cmp edi, ebx
jne 0x4259c3
mov ecx, dword [ebp - 0x24]
push ecx
call fcn.0092ae01
add esp, 4
lea ecx, [ebp - 0xb4]
mov byte [ebp - 4], 0x18
call fcn.004289d0
mov edx, dword [ebp - 0x60]
push edx
call fcn.0092ae01
mov eax, dword [ebp - 0x6c]
push eax
call fcn.0092ae01
mov ecx, dword [ebp - 0x90]
push ecx
call fcn.0092ae01
mov eax, dword [ebp - 0xa4]
add esp, 0xc
cmp eax, ebx
je 0x425a4a
mov edi, edi
mov edx, dword [ebp - 0xa8]
mov edi, dword [edx + eax*4 - 4]
dec eax
mov dword [ebp + 0x20], eax
cmp edi, ebx
je 0x425a46
mov eax, dword [edi]
push eax
call fcn.0092ae01
push edi
call fcn.0092ae0c
mov eax, dword [ebp + 0x20]
add esp, 8
cmp eax, ebx
jne 0x425a20
mov eax, dword [ebp - 0xa8]
push eax
call fcn.0092ae01
add esp, 4
mov eax, dword [ebp - 0xb0]
mov byte [ebp - 4], 0x19
cmp eax, ebx
je 0x425a99
jmp 0x425a70
mov ecx, dword [ebp - 0xb4]
mov edi, dword [ecx + eax*4 - 4]
dec eax
mov dword [ebp + 0x20], eax
cmp edi, ebx
je 0x425a95
mov ecx, edi
call fcn.004244c0
push edi
call fcn.0092ae0c
mov eax, dword [ebp + 0x20]
add esp, 4
cmp eax, ebx
jne 0x425a70
mov edx, dword [ebp - 0xb4]
push edx
call fcn.0092ae01
mov eax, dword [ebp - 0xd4]
push eax
call fcn.0092ae01
mov ecx, dword [esi]
mov edx, dword [ecx + 8]
add esp, 8
push esi
mov byte [ebp - 4], 4
call edx
mov eax, dword [ebp - 0x14]
push eax
call fcn.0092ae01
mov ecx, dword [ebp - 0x38]
push ecx
call fcn.0092ae01
mov eax, dword [ebp - 0x4c]
add esp, 8
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
mov esp, ebp
pop ebp
ret 0x30
mov edx, dword [ebp - 0x108]
push edx
call fcn.0092ae01
add esp, 4
lea ecx, [ebp - 0x24]
call fcn.00424650
lea ecx, [ebp - 0xb4]
mov byte [ebp - 4], 7
call fcn.00424760
mov eax, dword [ebp - 0xd4]
push eax
call fcn.0092ae01
mov ecx, dword [esi]
mov edx, dword [ecx + 8]
add esp, 4
push esi
mov byte [ebp - 4], 4
call edx
mov eax, dword [ebp - 0x14]
push eax
call fcn.0092ae01
mov ecx, dword [ebp - 0x38]
push ecx
call fcn.0092ae01
add esp, 8
mov eax, edi
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
mov esp, ebp
pop ebp
ret 0x30
mov edx, dword [ebp - 0x108]
push edx
call fcn.0092ae01
mov eax, dword [ebp - 0x20]
add esp, 4
cmp eax, ebx
je 0x425b8b
jmp 0x425b73
mov eax, dword [ebp + 0x20]
mov ecx, dword [ebp - 0x24]
dec eax
mov dword [ebp + 0x20], eax
mov eax, dword [ecx + eax*4]
push eax
call fcn.0092ae0c
add esp, 4
cmp dword [ebp + 0x20], ebx
jne 0x425b70
mov edx, dword [ebp - 0x24]
push edx
call fcn.0092ae01
add esp, 4
lea ecx, [ebp - 0xb4]
mov byte [ebp - 4], 0x23
call fcn.004289d0
mov eax, dword [ebp - 0x60]
push eax
call fcn.0092ae01
mov ecx, dword [ebp - 0x6c]
push ecx
call fcn.0092ae01
mov edx, dword [ebp - 0x90]
push edx
call fcn.0092ae01
add esp, 0xc
lea ecx, [ebp - 0xa8]
call fcn.00414090
lea ecx, [ebp - 0xb4]
mov byte [ebp - 4], 7
call fcn.004246f0
jmp 0x425b11
mov edx, dword [ebp - 0x108]
push edx
call fcn.0092ae01
mov edi, dword [ebp - 0x20]
add esp, 4
cmp edi, ebx
je 0x425c15
lea esp, [esp]
mov eax, dword [ebp - 0x24]
mov eax, dword [eax + edi*4 - 4]
dec edi
push eax
call fcn.0092ae0c
add esp, 4
cmp edi, ebx
jne 0x425c00
mov ecx, dword [ebp - 0x24]
push ecx
call fcn.0092ae01
add esp, 4
lea ecx, [ebp - 0xb4]
mov byte [ebp - 4], 0x27
call fcn.004289d0
mov edx, dword [ebp - 0x60]
push edx
call fcn.0092ae01
mov eax, dword [ebp - 0x6c]
push eax
call fcn.0092ae01
mov ecx, dword [ebp - 0x90]
push ecx
call fcn.0092ae01
add esp, 0xc
lea ecx, [ebp - 0xa8]
call fcn.00414090
mov eax, dword [ebp - 0xb0]
mov byte [ebp - 4], 0x28
cmp eax, ebx
je 0x425c99
lea ebx, [ebx]
mov edx, dword [ebp - 0xb4]
mov edi, dword [edx + eax*4 - 4]
dec eax
mov dword [ebp + 0x20], eax
cmp edi, ebx
je 0x425c95
mov ecx, edi
call fcn.004244c0
push edi
call fcn.0092ae0c
mov eax, dword [ebp + 0x20]
add esp, 4
cmp eax, ebx
jne 0x425c70
mov eax, dword [ebp - 0xb4]
push eax
call fcn.0092ae01
mov ecx, dword [ebp - 0xd4]
push ecx
call fcn.0092ae01
mov edx, dword [esi]
mov eax, dword [edx + 8]
add esp, 8
push esi
mov byte [ebp - 4], 4
call eax
mov ecx, dword [ebp - 0x14]
push ecx
call fcn.0092ae01
mov edx, dword [ebp - 0x38]
push edx
call fcn.0092ae01
mov eax, dword [ebp - 0x4c]
add esp, 8
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
mov esp, ebp
pop ebp
ret 0x30
mov eax, dword [ebp - 0x108]
push eax
call fcn.0092ae01
mov edi, dword [ebp - 0x20]
add esp, 4
cmp edi, ebx
je 0x425d16
mov ecx, dword [ebp - 0x24]
mov eax, dword [ecx + edi*4 - 4]
dec edi
push eax
call fcn.0092ae0c
add esp, 4
cmp edi, ebx
jne 0x425d01
mov edx, dword [ebp - 0x24]
push edx
call fcn.0092ae01
add esp, 4
lea ecx, [ebp - 0xb4]
mov byte [ebp - 4], 0x2c
call fcn.004289d0
mov eax, dword [ebp - 0x60]
push eax
call fcn.0092ae01
mov ecx, dword [ebp - 0x6c]
push ecx
call fcn.0092ae01
mov edx, dword [ebp - 0x90]
push edx
call fcn.0092ae01
add esp, 0xc
lea ecx, [ebp - 0xa8]
call fcn.00414090
lea ecx, [ebp - 0xb4]
mov byte [ebp - 4], 7
call fcn.004246f0
mov eax, dword [ebp - 0xd4]
push eax
call fcn.0092ae01
mov ecx, dword [esi]
mov edx, dword [ecx + 8]
add esp, 4
push esi
mov byte [ebp - 4], 4
call edx
mov eax, dword [ebp - 0x14]
push eax
call fcn.0092ae01
mov ecx, dword [ebp - 0x38]
push ecx
call fcn.0092ae01
add esp, 8
pop edi
pop esi
mov eax, 0x80004005
pop ebx
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
mov esp, ebp
pop ebp
ret 0x30
call fcn.0040da40
mov edi, dword [ebp + 0x30]
push str.Cannot_find_archive_file
mov ecx, edi
mov ebx, eax
call fcn.0040a030
push 0x9953f0
mov ecx, edi
call fcn.0040a210
push ebx
lea edx, [ebp - 0xc4]
push edx
call fcn.004202d0
push eax
mov ecx, edi
mov byte [ebp - 4], 8
call fcn.0040a180
mov eax, dword [ebp - 0xc4]
push eax
mov byte [ebp - 4], 7
call fcn.0092ae01
add esp, 4
push 0x9953f0
mov ecx, edi
call fcn.0040a210
mov ecx, dword [ebp - 0x10]
push ecx
mov ecx, edi
call fcn.0040a180
mov edx, dword [ebp - 0xd4]
push edx
call fcn.0092ae01
mov eax, dword [esi]
mov ecx, dword [eax + 8]
add esp, 4
push esi
mov byte [ebp - 4], 4
call ecx
mov edx, dword [ebp - 0x14]
push edx
call fcn.0092ae01
mov eax, dword [ebp - 0x38]
push eax
call fcn.0092ae01
add esp, 8
pop edi
pop esi
mov eax, ebx
pop ebx
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
mov esp, ebp
pop ebp
ret 0x30
mov eax, dword [ebp + 0x2c]
mov edx, dword [eax]
mov edx, dword [edx + 0x10]
lea ecx, [ebp - 0x40]
push ecx
push eax
call edx
mov dword [ebp + 0x20], eax
cmp eax, ebx
je 0x425eab
mov eax, dword [esi]
mov ecx, dword [eax + 8]
push esi
mov byte [ebp - 4], 4
call ecx
mov edx, dword [ebp - 0x14]
push edx
call fcn.0092ae01
mov eax, dword [ebp - 0x38]
push eax
call fcn.0092ae01
mov eax, dword [ebp + 0x20]
add esp, 8
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
mov esp, ebp
pop ebp
ret 0x30
mov ecx, dword [esi + 0x140]
mov dword [edi + 0x20], ecx
mov edx, dword [esi + 0x144]
mov dword [edi + 0x24], edx
mov eax, dword [esi + 0x148]
mov dword [edi + 0x28], eax
mov ecx, dword [esi + 0x14c]
mov dword [edi + 0x2c], ecx
mov edx, dword [esi + 0x150]
mov dword [edi + 0x30], edx
mov eax, dword [esi + 0x154]
mov dword [edi + 0x34], eax
mov ecx, dword [esi + 0x158]
mov dword [edi + 8], ecx
mov edx, dword [esi + 0x15c]
mov dword [edi + 0xc], edx
mov eax, dword [esi + 0x160]
mov edx, dword [ebp + 0x14]
mov dword [edi + 0x10], eax
mov ecx, dword [esi + 0x164]
mov dword [edi + 0x14], ecx
mov eax, dword [edx + 4]
mov dword [edi], eax
mov dword [edi + 4], ebx
mov eax, dword [esi + 0x13c]
mov ecx, dword [eax + 0x20]
mov dword [edi + 0x18], ecx
mov edx, dword [eax + 0x24]
mov dword [edi + 0x1c], edx
mov eax, dword [esi]
mov ecx, dword [eax + 8]
push esi
mov byte [ebp - 4], 4
call ecx
mov edx, dword [ebp - 0x14]
push edx
call fcn.0092ae01
mov eax, dword [ebp - 0x38]
push eax
call fcn.0092ae01
mov ecx, dword [ebp - 0xc]
add esp, 8
pop edi
pop esi
xor eax, eax
pop ebx
mov dword fs:[0], ecx
mov esp, ebp
pop ebp
ret 0x30