Function at 0x454cc6
Capabilities:
Enumerate pe sections

Disassembly:
push ebp
mov ebp, esp
sub esp, 0xe0
mov eax, dword [0x50ce50]
xor eax, ebp
mov dword [ebp - 4], eax
push ebx
mov ebx, dword [ebp + 8]
mov ecx, dword [ebx]
push esi
mov esi, dword [ebp + 0xc]
xor eax, eax
push edi
mov edi, dword [ebp + 0x10]
inc eax
mov dword [ebp - 0x18], ebx
mov dword [ebp - 0x54], esi
mov dword [ebp - 0x4c], edi
mov dword [ebp - 0x3c], eax
mov dword [ebp - 0x34], ecx
test esi, esi
je 0x4558be
cmp byte [ecx + 0x1e], 0
jne 0x4558be
cmp dword [ebx + 0x3f], 0
jne 0x4558be
xor eax, eax
push eax
push eax
push eax
push 0x15
mov eax, ebx
call fcn.004336c1
add esp, 0x10
test eax, eax
je 0x454d32
xor eax, eax
inc eax
jmp 0x4558be
push 0x2a
lea eax, [ebp - 0xac]
push 0
push eax
call fcn.004c18a0
add esp, 0xc
cmp byte [edi], 4
ja 0x454d63
push dword [ebp - 0x34]
mov edi, dword [esi + 0x18]
call fcn.00429c63
and dword [esi + 0x18], 0
mov eax, 0xfffe
and word [esi + 6], ax
pop ecx
push 0
push esi
push ebx
call fcn.00454c41
mov eax, dword [esi + 0x18]
mov dword [ebp - 0x44], eax
mov eax, dword [esi + 8]
add esp, 0xc
cmp dword [ebx + 0x3f], 0
mov dword [ebp - 0x5c], eax
jne 0x45589c
mov eax, dword [ebp - 0x34]
cmp byte [eax + 0x1e], 0
jne 0x45589c
movzx eax, word [esi + 6]
shr eax, 2
and eax, 1
mov edi, ebx
mov dword [ebp - 0x50], eax
call fcn.00434ddd
mov dword [ebp - 0x1c], eax
test eax, eax
je 0x45589c
and dword [ebp - 0x2c], 0
jmp 0x454ea8
mov eax, dword [ebp - 0x5c]
movsx ecx, word [eax]
cmp dword [ebp - 0x2c], ecx
jge 0x454eb2
mov ecx, dword [ebp - 0x2c]
imul ecx, ecx, 0x33
lea ebx, [ecx + eax + 4]
mov eax, dword [ebx + 0x10]
mov dword [ebp - 0x38], eax
test eax, eax
je 0x454ea5
cmp byte [ebx + 0x14], 0
jne 0x454ea5
and dword [ebp - 0x20], 0
lea eax, [ebp - 0x20]
mov ecx, esi
call fcn.00429ae3
mov ecx, dword [ebp - 0x20]
mov eax, dword [ebp - 0x18]
add dword [eax + 0x1ea], ecx
mov eax, dword [ebp - 0x38]
movzx edi, word [eax + 6]
shr edi, 2
and edi, 1
push edi
push dword [ebp - 0x50]
mov eax, esi
push dword [ebp - 0x2c]
push dword [ebp - 0x18]
call fcn.004399eb
add esp, 0x10
test eax, eax
je 0x454e40
test edi, edi
je 0x454e3a
or word [esi + 6], 4
mov dword [ebp - 0x50], 1
or dword [ebp - 0x2c], 0xffffffff
jmp 0x454e6a
mov eax, dword [ebx + 0x17]
and dword [ebp - 0xe], 0
and dword [ebp - 0xa], 0
mov dword [ebp - 0x12], eax
lea eax, [ebp - 0x14]
push eax
push dword [ebp - 0x38]
mov word [ebp - 0x14], 9
push dword [ebp - 0x18]
call fcn.00454cc6
add esp, 0xc
mov byte [ebx + 0x14], 1
mov eax, dword [ebp - 0x34]
cmp byte [eax + 0x1e], 0
jne 0x45589c
and dword [ebp - 0x20], 0
lea eax, [ebp - 0x20]
mov ecx, esi
call fcn.00429ae3
mov eax, dword [ebp - 0x18]
mov ecx, dword [ebp - 0x20]
sub dword [eax + 0x1ea], ecx
mov eax, dword [esi + 8]
mov dword [ebp - 0x5c], eax
mov eax, dword [ebp - 0x4c]
cmp byte [eax], 4
jbe 0x454ea5
mov eax, dword [esi + 0x18]
mov dword [ebp - 0x44], eax
inc dword [ebp - 0x2c]
cmp dword [esi + 0x1c], 0
je 0x454dba
mov eax, dword [esi + 0xc]
mov ecx, dword [esi]
mov dword [ebp - 0x64], eax
mov eax, dword [esi + 0x10]
mov dword [ebp - 0x24], eax
mov eax, dword [esi + 0x14]
mov dword [ebp - 0x7c], eax
movzx eax, word [esi + 6]
and eax, 1
cmp dword [esi + 0x1c], 0
mov dword [ebp - 0x6c], ecx
mov dword [ebp - 0x20], eax
je 0x454f29
cmp dword [esi + 0x24], 0
jne 0x454f16
xor ecx, ecx
xor edx, edx
mov eax, esi
mov dword [eax + 0x20], ecx
mov dword [eax + 0x24], esi
mov ecx, eax
mov eax, dword [eax + 0x1c]
inc edx
test eax, eax
jne 0x454ee5
mov eax, dword [ebp - 0x34]
mov eax, dword [eax + 0x56]
test eax, eax
je 0x454f16
cmp edx, eax
jle 0x454f16
mov edi, dword [ebp - 0x18]
push 0x4f24c4
call fcn.0043176d
pop ecx
jmp 0x454d2a
push dword [ebp - 0x4c]
mov ecx, dword [ebp - 0x18]
mov edx, esi
call fcn.00448a27
pop ecx
jmp 0x4558be
push dword [ecx]
mov eax, dword [ebp - 0x4c]
mov edi, dword [ebp - 0x18]
call fcn.004349ef
pop ecx
test eax, eax
jne 0x45589c
mov al, byte [esi + 6]
and al, 5
cmp al, 1
jne 0x454f69
mov ebx, dword [esi]
push 0
push dword [ebp - 0x34]
call fcn.0042f03b
mov dword [esi + 0x10], eax
mov dword [ebp - 0x24], eax
mov eax, 0xfffe
and word [esi + 6], ax
and dword [ebp - 0x20], 0
pop ecx
pop ecx
mov ebx, dword [ebp - 0x44]
test ebx, ebx
je 0x454fa3
push ebx
push edi
call fcn.004450da
mov ecx, dword [edi + 0x43]
push 0xfffffffffffffff0
push eax
mov dword [ebx + 8], ecx
inc dword [edi + 0x43]
mov eax, dword [ebx]
push 0
add eax, 2
push eax
push dword [ebx + 8]
push 0x28
push dword [ebp - 0x1c]
call fcn.004326fd
add esp, 0x24
mov dword [ebp - 0x48], eax
mov dword [esi + 0x40], eax
jmp 0x454fa7
or dword [ebp - 0x48], 0xffffffff
mov eax, dword [ebp - 0x4c]
xor ebx, ebx
cmp byte [eax], 9
jne 0x454fc7
mov ecx, dword [ebp - 0x6c]
push ebx
push dword [ecx]
push dword [eax + 2]
mov eax, dword [ebp - 0x1c]
push 0x28
call fcn.0042e6eb
add esp, 0x10
mov eax, dword [ebp - 0x1c]
call fcn.0042e785
push eax
mov dword [ebp - 0xbc], eax
push esi
mov eax, edi
call fcn.00434e06
pop ecx
pop ecx
cmp dword [ebp - 0x20], ebx
je 0x455012
mov ebx, dword [edi + 0x43]
lea eax, [ebx + 1]
mov dword [edi + 0x43], eax
push dword [esi]
mov dword [ebp - 0x70], ebx
push edi
call fcn.004450da
push 0xfffffffffffffff0
push eax
push 0
push 0
push ebx
push 0x28
push dword [ebp - 0x1c]
call fcn.004326fd
add esp, 0x24
xor ebx, ebx
jmp 0x455016
or dword [ebp - 0x70], 0xffffffff
mov edx, dword [ebp - 0x24]
cmp dword [ebp - 0x50], ebx
jne 0x455087
cmp edx, ebx
jne 0x45508b
push ebx
lea eax, [ebp - 0x44]
push eax
push dword [ebp - 0x64]
push dword [ebp - 0x5c]
push edi
call fcn.00452c21
mov edi, eax
add esp, 0x14
cmp edi, ebx
je 0x45589c
cmp dword [ebp - 0x48], ebx
jl 0x45505c
cmp dword [ebp - 0x44], ebx
jne 0x45505c
mov ecx, dword [ebp - 0x48]
mov eax, dword [ebp - 0x1c]
push 1
call fcn.0042e954
or dword [esi + 0x40], 0xffffffff
pop ecx
push dword [edi + 0x14]
push dword [edi + 0x10]
push dword [ebp - 0x4c]
push 0xffffffffffffffff
push dword [ebp - 0x44]
push ebx
push ebx
push dword [ebp - 0x6c]
push esi
push dword [ebp - 0x18]
call fcn.0043956d
add esp, 0x28
mov eax, edi
call fcn.00430267
jmp 0x455856
cmp edx, ebx
je 0x4550bf
mov esi, dword [esi]
mov eax, dword [esi]
mov esi, dword [esi + 0xc]
cmp eax, ebx
jle 0x4550a6
lea ecx, [esi + 0x10]
xor esi, esi
mov word [ecx], si
dec eax
add ecx, 0x12
cmp eax, ebx
jg 0x455099
mov eax, dword [edx]
mov ecx, dword [edx + 0xc]
cmp eax, ebx
jle 0x4550bf
add ecx, 0x10
xor edx, edx
mov word [ecx], dx
dec eax
add ecx, 0x12
cmp eax, ebx
jg 0x4550b2
mov eax, dword [ebp - 0x1c]
call fcn.0042e785
push 0x23
mov dword [ebp - 0x68], eax
lea eax, [ebp - 0xe0]
push ebx
push eax
call fcn.004c18a0
mov eax, dword [ebp - 0x5c]
mov dword [ebp - 0xdc], eax
lea eax, [ebp - 0xac]
mov dword [ebp - 0xc5], eax
mov eax, dword [ebp - 0x24]
add esp, 0xc
mov dword [ebp - 0xe0], edi
cmp eax, ebx
je 0x455109
mov eax, dword [eax]
inc eax
mov dword [ebp - 0xa2], eax
jmp 0x45510f
mov dword [ebp - 0xa2], ebx
mov eax, dword [ebp - 0x24]
mov esi, dword [ebp - 0x6c]
mov dword [ebp - 0xa6], eax
lea eax, [ebp - 0xe0]
push eax
call fcn.00437d83
mov esi, dword [ebp - 0x44]
lea eax, [ebp - 0xe0]
push eax
call fcn.00437d83
xor edi, edi
pop ecx
pop ecx
cmp dword [ebp - 0x7c], edi
je 0x45514e
push dword [ebp - 0x7c]
lea eax, [ebp - 0xe0]
call fcn.00437d5c
pop ecx
mov eax, dword [ebp - 0x9a]
mov dword [ebp - 0x92], eax
mov dword [ebp - 0x2c], edi
cmp dword [ebp - 0x8a], edi
jle 0x455191
xor ebx, ebx
mov eax, dword [ebp - 0x8e]
mov eax, dword [ebx + eax]
mov esi, dword [eax + 0x10]
lea ecx, [ebp - 0xe0]
push ecx
call fcn.00437d83
inc dword [ebp - 0x2c]
mov eax, dword [ebp - 0x2c]
add ebx, 0x10
pop ecx
cmp eax, dword [ebp - 0x8a]
jl 0x455167
mov eax, dword [ebp - 0x34]
cmp byte [eax + 0x1e], 0
jne 0x45589c
cmp dword [ebp - 0x24], edi
je 0x455638
mov ebx, dword [ebp - 0x18]
mov eax, dword [ebx + 0x43]
push dword [ebp - 0x24]
mov dword [ebp - 0xaa], eax
inc eax
push ebx
mov dword [ebx + 0x43], eax
call fcn.004450da
push 0xfffffffffffffff0
push eax
push edi
push dword [ebp - 0xa2]
mov dword [ebp - 0x80], eax
push dword [ebp - 0xaa]
push 0x28
push dword [ebp - 0x1c]
call fcn.004326fd
inc dword [ebx + 0x47]
mov dword [ebp - 0x78], eax
mov eax, dword [ebx + 0x47]
lea esi, [eax + 1]
mov dword [ebp - 0x58], eax
lea eax, [esi + 1]
mov dword [ebp - 0x48], eax
mov dword [ebx + 0x47], eax
mov eax, dword [ebp - 0x1c]
mov dword [ebp - 0xb0], esi
call fcn.0042e785
inc dword [ebx + 0x47]
mov dword [ebp - 0x74], eax
mov eax, dword [ebx + 0x47]
mov dword [ebp - 0x20], eax
mov eax, dword [ebp - 0x1c]
call fcn.0042e785
mov dword [ebp - 0x38], eax
mov eax, dword [ebx + 0x47]
lea ecx, [eax + 1]
mov dword [ebp - 0xb8], ecx
mov ecx, dword [ebp - 0x24]
add eax, dword [ecx]
push edi
mov dword [ebx + 0x47], eax
mov ecx, dword [ecx]
push esi
lea edx, [eax + 1]
add ecx, eax
mov eax, dword [ebp - 0x1c]
push edi
push 7
mov dword [ebp - 0x50], edx
mov dword [ebx + 0x47], ecx
call fcn.0042e6eb
mov eax, dword [ebp - 0x1c]
push edi
push dword [ebp - 0x58]
push edi
push 7
call fcn.0042e6eb
mov eax, dword [ebp - 0x1c]
add esp, 0x44
push edi
push dword [ebp - 0x38]
push dword [ebp - 0x20]
push 2
call fcn.0042e6eb
push edi
lea eax, [ebp - 0x24]
push eax
push dword [ebp - 0x64]
push dword [ebp - 0x5c]
push ebx
call fcn.00452c21
add esp, 0x24
mov dword [ebp - 0xb4], eax
cmp eax, edi
je 0x45589c
mov eax, dword [ebp - 0x24]
cmp eax, edi
jne 0x4552a5
mov eax, dword [ebp - 0x54]
mov eax, dword [eax + 0x10]
mov dword [ebp - 0x24], eax
mov dword [ebp - 0x64], edi
jmp 0x4553f0
mov eax, dword [eax]
mov edx, dword [ebp - 0x9a]
mov dword [ebp - 0x30], eax
inc eax
mov dword [ebp - 0x64], 1
mov dword [ebp - 0x60], eax
mov dword [ebp - 0x3c], eax
cmp edx, edi
jle 0x4552d9
mov ecx, dword [ebp - 0x9e]
add ecx, 0xc
cmp dword [ecx], eax
jl 0x4552d3
inc dword [ebp - 0x3c]
inc eax
add ecx, 0x18
dec edx
jne 0x4552cb
mov esi, dword [ebp - 0x3c]
mov ecx, ebx
call fcn.0042a120
mov esi, eax
mov eax, ebx
call fcn.00429f65
mov eax, dword [ebp - 0x24]
push edi
push esi
push ebx
call fcn.00437a37
mov eax, dword [ebp - 0x30]
push edi
add eax, esi
push eax
push dword [ebp - 0xaa]
mov eax, dword [ebp - 0x1c]
push 0x34
call fcn.0042e6eb
mov eax, dword [ebp - 0x60]
add esp, 0x1c
mov dword [ebp - 0x40], eax
mov dword [ebp - 0x2c], edi
cmp dword [ebp - 0x9a], edi
jle 0x45537f
add eax, esi
mov dword [ebp - 0x60], eax
mov dword [ebp - 0x30], edi
mov eax, dword [ebp - 0x9e]
add eax, dword [ebp - 0x30]
mov ecx, dword [ebp - 0x40]
cmp dword [eax + 0xc], ecx
jl 0x45536d
push dword [ebp - 0x60]
push dword [eax + 4]
push dword [eax + 8]
push dword [eax]
mov eax, ebx
call fcn.004479c0
add esp, 0x10
cmp dword [ebp - 0x60], eax
je 0x455367
push edi
push dword [ebp - 0x60]
push eax
mov eax, dword [ebp - 0x1c]
push 0xf
call fcn.0042e6eb
add esp, 0x10
inc dword [ebp - 0x40]
inc dword [ebp - 0x60]
inc dword [ebp - 0x2c]
mov eax, dword [ebp - 0x2c]
add dword [ebp - 0x30], 0x18
cmp eax, dword [ebp - 0x9a]
jl 0x45532a
mov ecx, ebx
call fcn.0042a0d0
mov edi, eax
mov eax, dword [ebp - 0x1c]
push edi
push dword [ebp - 0x3c]
push esi
push 0x1e
call fcn.0042e6eb
mov eax, dword [ebp - 0x1c]
push 0
push edi
push dword [ebp - 0xaa]
push 0x43
call fcn.0042e6eb
mov edx, edi
mov eax, ebx
call fcn.0042a0ec
mov edi, dword [ebp - 0x3c]
mov ecx, esi
call fcn.0042a144
mov eax, dword [ebp - 0xb4]
call fcn.00430267
mov eax, dword [ebp - 0x1c]
push 0
push dword [ebp - 0x68]
push dword [ebp - 0xaa]
push 0x3f
call fcn.0042e6eb
add esp, 0x30
mov eax, ebx
mov byte [ebp - 0xab], 1
call fcn.00429f65
xor edi, edi
mov eax, dword [ebp - 0x1c]
mov eax, dword [eax + 0xc]
mov dword [ebp - 0x3c], eax
mov eax, ebx
call fcn.00429f65
mov eax, dword [ebp - 0x24]
mov dword [ebp - 0x40], edi
cmp dword [eax], edi
jle 0x455465
mov dword [ebp - 0x30], edi
mov ecx, dword [ebp - 0x50]
cmp dword [ebp - 0x64], edi
je 0x455431
mov eax, dword [ebp - 0x40]
add ecx, eax
push ecx
push eax
push dword [ebp - 0xaa]
mov eax, dword [ebp - 0x1c]
push 0x1c
call fcn.0042e6eb
add esp, 0x10
jmp 0x455454
mov edi, dword [ebp - 0x40]
mov eax, dword [ebp - 0x24]
mov byte [ebp - 0xac], 1
mov eax, dword [eax + 0xc]
lea edi, [edi + ecx]
mov ecx, dword [ebp - 0x30]
push dword [eax + ecx]
mov esi, ebx
call fcn.0042f2de
pop ecx
xor edi, edi
inc dword [ebp - 0x40]
mov eax, dword [ebp - 0x24]
mov ecx, dword [ebp - 0x40]
add dword [ebp - 0x30], 0x12
cmp ecx, dword [eax]
jl 0x45540d
mov esi, dword [ebp - 0x24]
mov edi, dword [ebp - 0x1c]
push 0xfffffffffffffffa
push dword [ebp - 0x80]
push dword [esi]
push dword [ebp - 0x50]
push dword [ebp - 0xb8]
push 0x18
push edi
call fcn.004326fd
mov eax, dword [edi + 0xc]
mov dword [ebp - 0x80], eax
inc eax
push eax
push 0
push eax
push 0x19
mov eax, edi
call fcn.0042e6eb
push dword [ebp - 0xb8]
mov ebx, dword [esi]
mov edi, dword [ebp - 0x50]
mov eax, dword [ebp - 0x18]
call fcn.0042f265
mov esi, dword [ebp - 0x1c]
xor ebx, ebx
push ebx
push dword [ebp - 0x74]
mov eax, esi
push dword [ebp - 0x48]
push 2
call fcn.0042e6eb
add esp, 0x40
push ebx
push dword [ebp - 0x68]
mov eax, esi
push dword [ebp - 0xb0]
push 0x70
call fcn.0042e6eb
push ebx
push dword [ebp - 0x38]
mov eax, esi
push dword [ebp - 0x20]
push 2
call fcn.0042e6eb
mov eax, dword [ebp - 0x80]
mov edx, esi
call fcn.00429023
lea eax, [ebp - 0xac]
push eax
push dword [ebp - 0x18]
call fcn.00445b15
push ebx
push dword [ebp - 0x58]
xor edi, edi
inc edi
push edi
push 7
mov eax, esi
call fcn.0042e6eb
add esp, 0x38
cmp dword [ebp - 0x64], ebx
je 0x45552f
push ebx
push dword [ebp - 0x3c]
mov eax, esi
push dword [ebp - 0xaa]
push 0x42
call fcn.0042e6eb
add esp, 0x10
jmp 0x455546
mov eax, dword [ebp - 0xb4]
call fcn.00430267
mov ecx, dword [ebp - 0x78]
push edi
mov eax, esi
call fcn.0042e954
pop ecx
push ebx
push dword [ebp - 0x74]
mov eax, esi
push dword [ebp - 0x48]
push 2
call fcn.0042e6eb
push ebx
push dword [ebp - 0x68]
mov eax, esi
push ebx
push edi
call fcn.0042e6eb
mov eax, dword [esi + 0xc]
push ebx
push dword [ebp - 0xb0]
mov dword [ebp - 0x78], eax
push edi
push 7
mov eax, esi
call fcn.0042e6eb
push ebx
push ebx
push dword [ebp - 0x48]
mov eax, esi
push 3
call fcn.0042e6eb
mov edx, dword [ebp - 0x74]
add esp, 0x40
mov ecx, esi
call fcn.00428f59
mov eax, dword [esi + 0xc]
mov dword [ebp - 0x74], eax
push ebx
add eax, 2
push eax
push dword [ebp - 0x58]
mov eax, esi
push 0x70
call fcn.0042e6eb
push ebx
push ebx
push dword [ebp - 0x48]
mov eax, esi
push 3
call fcn.0042e6eb
mov eax, dword [ebp - 0x18]
lea edi, [ebp - 0xac]
call fcn.0043524d
mov edi, dword [ebp - 0x74]
push 8
inc edi
push edi
push dword [ebp - 0x7c]
push dword [ebp - 0x18]
call fcn.00447cac
push dword [ebp - 0x78]
mov eax, dword [ebp - 0x54]
push edi
push dword [ebp - 0x4c]
push dword [ebp - 0x70]
push dword [ebp - 0x44]
push ebx
push ebx
push dword [eax]
push eax
push dword [ebp - 0x18]
call fcn.0043956d
add esp, 0x58
push ebx
push ebx
push dword [ebp - 0x48]
mov eax, esi
push 3
call fcn.0042e6eb
mov edx, dword [ebp - 0x38]
mov ecx, esi
call fcn.00428f59
push dword [ebp - 0x18]
lea ebx, [ebp - 0xac]
call fcn.00445a53
push 0
push 0
push dword [ebp - 0x20]
mov eax, esi
push 3
call fcn.0042e6eb
add esp, 0x24
jmp 0x455847
lea eax, [ebp - 0xac]
push eax
mov eax, dword [ebp - 0x54]
mov dword [ebp - 0x30], edi
call fcn.0042b0cf
pop ecx
mov dword [ebp - 0x20], eax
cmp eax, edi
je 0x455736
mov ebx, eax
mov eax, dword [ebp - 0x18]
mov esi, dword [ebx + 0x44]
mov ecx, dword [eax]
call fcn.0042ac1b
mov esi, eax
mov eax, dword [ebp - 0x18]
mov ecx, dword [eax + 0x43]
mov dword [ebp - 0x58], ecx
inc ecx
mov dword [eax + 0x43], ecx
mov ecx, dword [ebx + 0x18]
mov dword [ebp - 0x70], esi
mov dword [ebp - 0x38], edi
mov dword [ebp - 0x78], ecx
call fcn.00440992
push dword [ebx + 4]
mov ebx, dword [ebx + 0x18]
mov eax, dword [ebp - 0x18]
push edi
push esi
call fcn.0042f4bb
mov eax, dword [ebp - 0x20]
mov eax, dword [eax + 0x14]
xor esi, esi
add esp, 0xc
cmp eax, esi
je 0x4556db
cmp edi, esi
je 0x4556b0
mov ecx, dword [eax + 4]
cmp ecx, dword [edi + 4]
jge 0x4556b2
mov edi, eax
mov eax, dword [eax + 0x1e]
cmp eax, esi
jne 0x4556a4
cmp edi, esi
je 0x4556db
mov eax, dword [edi + 4]
mov ecx, dword [ebp - 0x20]
cmp eax, dword [ecx + 0xc]
jge 0x4556db
mov ebx, dword [edi + 0x14]
push edi
push dword [ebp - 0x18]
call fcn.004441b6
pop ecx
pop ecx
mov dword [ebp - 0x38], eax
jmp 0x4556de
mov ebx, dword [ebp - 0x78]
push dword [ebp - 0x70]
mov edi, dword [ebp - 0x1c]
push ebx
push dword [ebp - 0x58]
mov eax, edi
push 0x26
call fcn.0042e6eb
add esp, 0x10
cmp dword [ebp - 0x38], esi
je 0x45570a
push 0xfffffffffffffff0
push dword [ebp - 0x38]
or eax, 0xffffffff
push edi
call fcn.0042e997
add esp, 0xc
mov eax, dword [ebp - 0x8e]
push esi
push dword [eax + 8]
mov eax, edi
push dword [ebp - 0x58]
push 0x1f
call fcn.0042e6eb
push esi
push esi
push dword [ebp - 0x58]
mov eax, edi
push 0x2a
call fcn.0042e6eb
add esp, 0x20
jmp 0x455807
mov eax, dword [ebp - 0x54]
mov dword [ebp - 0x20], edi
call fcn.0042b061
mov byte [ebp - 0x25], al
test al, al
je 0x455786
mov eax, dword [ebp - 0x54]
mov eax, dword [eax]
mov eax, dword [eax + 0xc]
mov eax, dword [eax]
mov esi, dword [ebp - 0x34]
mov ebx, dword [eax + 0x10]
push edi
push esi
call fcn.0042f03b
pop ecx
pop ecx
mov dword [ebp - 0x20], eax
mov dword [ebp - 0x30], eax
test eax, eax
je 0x455786
cmp byte [esi + 0x1e], 0
jne 0x455786
cmp byte [ebp - 0x25], 1
mov edx, dword [eax + 0xc]
setne cl
mov byte [edx + 0xc], cl
mov eax, dword [eax + 0xc]
mov eax, dword [eax]
mov byte [eax], 0x98
mov esi, dword [ebp - 0x18]
push esi
lea ebx, [ebp - 0xac]
call fcn.00445a53
movzx eax, byte [ebp - 0x25]
push eax
lea eax, [ebp - 0x20]
push eax
push dword [ebp - 0x64]
push dword [ebp - 0x5c]
push esi
call fcn.00452c21
mov edi, eax
xor ebx, ebx
add esp, 0x18
cmp edi, ebx
jne 0x4557c6
push dword [ebp - 0x34]
mov edi, dword [ebp - 0x30]
call fcn.00429c63
pop ecx
jmp 0x45589c
lea eax, [ebp - 0xac]
push eax
push esi
call fcn.00445b15
pop ecx
pop ecx
cmp dword [ebp - 0x20], ebx
jne 0x4557f1
cmp byte [ebp - 0x25], bl
je 0x4557f1
mov eax, dword [ebp - 0x1c]
push ebx
push dword [edi + 0x14]
push ebx
push 1
call fcn.0042e6eb
add esp, 0x10
mov eax, edi
call fcn.00430267
lea edi, [ebp - 0xac]
mov eax, esi
call fcn.0043524d
xor esi, esi
push 8
push dword [ebp - 0x68]
mov dword [ebp - 0x44], esi
push dword [ebp - 0x7c]
push dword [ebp - 0x18]
call fcn.00447cac
push dword [ebp - 0x68]
mov eax, dword [ebp - 0x54]
push dword [ebp - 0x68]
push dword [ebp - 0x4c]
push 0xffffffffffffffff
push esi
push esi
push esi
push dword [eax]
push eax
push dword [ebp - 0x18]
call fcn.0043956d
push dword [ebp - 0x34]
mov edi, dword [ebp - 0x30]
call fcn.00429c63
mov esi, dword [ebp - 0x1c]
add esp, 0x3c
mov edx, dword [ebp - 0x68]
mov ecx, esi
call fcn.00428f59
mov esi, dword [ebp - 0x54]
xor ebx, ebx
cmp dword [ebp - 0x44], ebx
je 0x455872
mov eax, dword [ebp - 0x6c]
push dword [eax]
mov eax, dword [ebp - 0x4c]
push dword [ebp - 0x1c]
push esi
push dword [ebp - 0x18]
call fcn.00434a19
add esp, 0x10
mov edx, dword [ebp - 0xbc]
mov ecx, dword [ebp - 0x1c]
call fcn.00428f59
mov eax, dword [ebp - 0x4c]
cmp byte [eax], 5
mov dword [ebp - 0x3c], ebx
jne 0x45589c
push dword [ebp - 0x6c]
push dword [ebp - 0x5c]
push dword [ebp - 0x18]
call fcn.00442d43
add esp, 0xc
push dword [ebp - 0x9e]
push dword [ebp - 0x34]
call fcn.004250ce
push dword [ebp - 0x8e]
push dword [ebp - 0x34]
call fcn.004250ce
mov eax, dword [ebp - 0x3c]
add esp, 0x10
mov ecx, dword [ebp - 4]
pop edi
pop esi
xor ecx, ebp
pop ebx
call fcn.004be9fd
leave
ret