Function at 0x624e40
Capabilities:
Manipulate boot configuration

Disassembly:
push ebp
mov ebp, esp
mov ecx, 0x20
push 0
push 0
dec ecx
jne 0x624e48
push ebx
push esi
push edi
mov dword [ebp - 4], eax
xor eax, eax
push ebp
push 0x625bb4
push dword fs:[eax]
mov dword fs:[eax], esp
mov edx, dword [0x7b80dc]
mov edx, dword [edx]
lea eax, [ebp - 8]
mov ecx, 0x625bcc
call fcn.00405840
mov eax, dword [ebp - 8]
call fcn.0040dca0
test al, al
je 0x6255d1
mov dl, 1
mov eax, dword [0x421f34]
call fcn.0040459c
mov dword [ebp - 0x28], eax
mov dl, 1
mov eax, dword [0x421f34]
call fcn.0040459c
mov dword [ebp - 0x2c], eax
mov ecx, dword [ebp - 8]
mov dl, 1
mov eax, dword [0x447b24]
call fcn.00447bd4
mov dword [ebp - 0x3c], eax
lea edx, [ebp - 0x4c]
mov eax, dword [0x7b7864]
call fcn.00407bd4
mov edx, dword [ebp - 0x4c]
mov ecx, dword [ebp - 0x28]
mov eax, dword [ebp - 0x3c]
mov ebx, dword [eax]
call dword [ebx + 0x40]
mov eax, dword [ebp - 0x28]
mov edx, dword [eax]
call dword [edx + 0x14]
dec eax
test eax, eax
jl 0x625203
inc eax
mov dword [ebp - 0x40], eax
xor esi, esi
lea eax, [ebp - 0x14]
call fcn.00405518
mov eax, dword [ebp - 0xc]
push eax
lea eax, [ebp - 0x50]
push eax
lea ecx, [ebp - 0x54]
mov edx, esi
mov eax, dword [ebp - 0x28]
mov ebx, dword [eax]
call dword [ebx + 0xc]
mov eax, dword [ebp - 0x54]
push eax
lea edx, [ebp - 0x58]
mov eax, dword [0x7b7864]
call fcn.00407bd4
mov edx, dword [ebp - 0x58]
mov eax, dword [ebp - 0x3c]
pop ecx
mov ebx, dword [eax]
call dword [ebx]
mov edx, dword [ebp - 0x50]
lea eax, [ebp - 0xc]
call fcn.004055b0
mov eax, dword [ebp - 0xc]
call fcn.004057f4
cmp eax, 0x16
jle 0x624f6b
lea eax, [ebp - 0x14]
push eax
xor ecx, ecx
mov edx, dword [ebp - 0xc]
mov eax, dword [ebp - 4]
call fcn.006220c4
lea eax, [ebp - 0x5c]
push eax
mov ecx, 1
mov edx, dword [ebp - 0xc]
mov eax, dword [ebp - 4]
call fcn.006220c4
mov edx, dword [ebp - 0x5c]
lea eax, [ebp - 0xc]
call fcn.004055b0
mov eax, dword [ebp - 0xc]
call fcn.004057f4
test eax, eax
jle 0x624f8f
mov eax, dword [ebp - 0xc]
cmp byte [eax], 0x30
jne 0x624f8f
lea eax, [ebp - 0xc]
mov ecx, dword [ebp - 0xc]
mov edx, 0x625bf0
call fcn.00405840
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x320]
mov eax, dword [eax + 0x22c]
call fcn.0045e568
mov ebx, eax
mov edx, dword [ebp - 0xc]
mov eax, ebx
call fcn.0045e008
lea ecx, [ebp - 0x60]
mov edx, esi
mov eax, dword [ebp - 0x28]
mov edi, dword [eax]
call dword [edi + 0xc]
cmp dword [ebp - 0x60], 0
je 0x6251c2
mov eax, dword [0x7b80dc]
push dword [eax]
push 0x625bfc
lea ecx, [ebp - 0x68]
mov edx, esi
mov eax, dword [ebp - 0x28]
mov edi, dword [eax]
call dword [edi + 0xc]
mov eax, dword [ebp - 0x68]
lea edx, [ebp - 0x64]
call fcn.0040e12c
push dword [ebp - 0x64]
push 0x625c10
lea eax, [ebp - 0x10]
mov edx, 4
call fcn.004058b4
lea edx, [ebp - 0x6c]
mov eax, dword [ebp - 0x10]
call fcn.0040e12c
mov edx, dword [ebp - 0x6c]
mov eax, dword [ebx + 8]
mov ecx, dword [eax]
call dword [ecx + 0x38]
mov edx, dword [ebp - 0x10]
mov eax, dword [ebx + 8]
mov ecx, dword [eax]
call dword [ecx + 0x38]
lea ecx, [ebp - 0x70]
mov edx, esi
mov eax, dword [ebp - 0x28]
mov edi, dword [eax]
call dword [edi + 0xc]
mov edx, dword [ebp - 0x70]
mov eax, dword [ebx + 8]
mov ecx, dword [eax]
call dword [ecx + 0x38]
mov eax, dword [ebp - 0x10]
call fcn.0040dca0
test al, al
je 0x6251a8
mov eax, dword [ebp - 0x10]
call fcn.00794a00
mov dword [ebp - 0x38], eax
mov dword [ebp - 0x34], edx
cmp dword [ebp - 0x34], 0
jne 0x625067
cmp dword [ebp - 0x38], 0x100000
jbe 0x6250e1
jmp 0x625069
jle 0x6250e1
lea eax, [ebp - 0x74]
push eax
mov dword [ebp - 0x8c], 4
mov byte [ebp - 0x88], 0
mov dword [ebp - 0x84], 2
mov byte [ebp - 0x80], 0
fild qword [ebp - 0x38]
fdiv dword [0x625c18]
fdiv dword [0x625c18]
fstp xword [ebp - 0x98]
wait
lea eax, [ebp - 0x98]
mov dword [ebp - 0x7c], eax
mov byte [ebp - 0x78], 3
lea edx, [ebp - 0x8c]
mov ecx, 2
mov eax, 0x625c24
call fcn.0040ef70
lea eax, [ebp - 0x74]
mov edx, 0x625c34
call fcn.004057fc
mov edx, dword [ebp - 0x74]
mov eax, dword [ebx + 8]
mov ecx, dword [eax]
call dword [ecx + 0x38]
jmp 0x62519b
cmp dword [ebp - 0x34], 0
jne 0x6250f2
cmp dword [ebp - 0x38], 0x400
jbe 0x62516c
jmp 0x6250f4
jle 0x62516c
lea eax, [ebp - 0x9c]
push eax
mov dword [ebp - 0x8c], 4
mov byte [ebp - 0x88], 0
mov dword [ebp - 0x84], 1
mov byte [ebp - 0x80], 0
fild qword [ebp - 0x38]
fdiv dword [0x625c18]
fstp xword [ebp - 0x98]
wait
lea eax, [ebp - 0x98]
mov dword [ebp - 0x7c], eax
mov byte [ebp - 0x78], 3
lea edx, [ebp - 0x8c]
mov ecx, 2
mov eax, 0x625c24
call fcn.0040ef70
lea eax, [ebp - 0x9c]
mov edx, 0x625c40
call fcn.004057fc
mov edx, dword [ebp - 0x9c]
mov eax, dword [ebx + 8]
mov ecx, dword [eax]
call dword [ecx + 0x38]
jmp 0x62519b
push dword [ebp - 0x34]
push dword [ebp - 0x38]
lea eax, [ebp - 0xa0]
call fcn.0040d7a8
lea eax, [ebp - 0xa0]
mov edx, 0x625c4c
call fcn.004057fc
mov edx, dword [ebp - 0xa0]
mov eax, dword [ebx + 8]
mov ecx, dword [eax]
call dword [ecx + 0x38]
xor ecx, ecx
xor edx, edx
mov eax, ebx
call fcn.0045e1c0
jmp 0x6251ee
xor edx, edx
mov eax, dword [ebx + 8]
mov ecx, dword [eax]
call dword [ecx + 0x38]
mov ecx, 2
xor edx, edx
mov eax, ebx
call fcn.0045e1c0
jmp 0x6251ee
xor edx, edx
mov eax, dword [ebx + 8]
mov ecx, dword [eax]
call dword [ecx + 0x38]
xor edx, edx
mov eax, dword [ebx + 8]
mov ecx, dword [eax]
call dword [ecx + 0x38]
xor edx, edx
mov eax, dword [ebx + 8]
mov ecx, dword [eax]
call dword [ecx + 0x38]
mov ecx, 2
xor edx, edx
mov eax, ebx
call fcn.0045e1c0
mov edx, dword [ebp - 0x14]
mov eax, dword [ebx + 8]
mov ecx, dword [eax]
call dword [ecx + 0x38]
inc esi
dec dword [ebp - 0x40]
jne 0x624eea
lea edx, [ebp - 0xa4]
mov eax, dword [0x7b8294]
call fcn.00407bd4
mov edx, dword [ebp - 0xa4]
mov ecx, dword [ebp - 0x2c]
mov eax, dword [ebp - 0x3c]
mov ebx, dword [eax]
call dword [ebx + 0x40]
mov eax, dword [ebp - 0x2c]
mov edx, dword [eax]
call dword [edx + 0x14]
dec eax
test eax, eax
jl 0x625599
inc eax
mov dword [ebp - 0x40], eax
xor esi, esi
lea eax, [ebp - 0x14]
call fcn.00405518
mov eax, dword [ebp - 0xc]
push eax
lea eax, [ebp - 0xa8]
push eax
lea ecx, [ebp - 0xac]
mov edx, esi
mov eax, dword [ebp - 0x2c]
mov ebx, dword [eax]
call dword [ebx + 0xc]
mov eax, dword [ebp - 0xac]
push eax
lea edx, [ebp - 0xb0]
mov eax, dword [0x7b8294]
call fcn.00407bd4
mov edx, dword [ebp - 0xb0]
mov eax, dword [ebp - 0x3c]
pop ecx
mov ebx, dword [eax]
call dword [ebx]
mov edx, dword [ebp - 0xa8]
lea eax, [ebp - 0xc]
call fcn.004055b0
mov eax, dword [ebp - 0xc]
call fcn.004057f4
cmp eax, 0x16
jle 0x6252d4
lea eax, [ebp - 0x14]
push eax
xor ecx, ecx
mov edx, dword [ebp - 0xc]
mov eax, dword [ebp - 4]
call fcn.006220c4
lea eax, [ebp - 0xb4]
push eax
mov ecx, 1
mov edx, dword [ebp - 0xc]
mov eax, dword [ebp - 4]
call fcn.006220c4
mov edx, dword [ebp - 0xb4]
lea eax, [ebp - 0xc]
call fcn.004055b0
mov eax, dword [ebp - 0xc]
call fcn.004057f4
test eax, eax
jle 0x6252f8
mov eax, dword [ebp - 0xc]
cmp byte [eax], 0x30
jne 0x6252f8
lea eax, [ebp - 0xc]
mov ecx, dword [ebp - 0xc]
mov edx, 0x625bf0
call fcn.00405840
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x320]
mov eax, dword [eax + 0x22c]
call fcn.0045e568
mov ebx, eax
mov edx, dword [ebp - 0xc]
mov eax, ebx
call fcn.0045e008
lea ecx, [ebp - 0xb8]
mov edx, esi
mov eax, dword [ebp - 0x2c]
mov edi, dword [eax]
call dword [edi + 0xc]
cmp dword [ebp - 0xb8], 0
je 0x625558
mov eax, dword [0x7b80dc]
push dword [eax]
push 0x625bfc
lea ecx, [ebp - 0xc0]
mov edx, esi
mov eax, dword [ebp - 0x2c]
mov edi, dword [eax]
call dword [edi + 0xc]
mov eax, dword [ebp - 0xc0]
lea edx, [ebp - 0xbc]
call fcn.0040e12c
push dword [ebp - 0xbc]
lea eax, [ebp - 0x10]
mov edx, 3
call fcn.004058b4
lea edx, [ebp - 0xc4]
mov eax, dword [ebp - 0x10]
call fcn.0040e12c
mov edx, dword [ebp - 0xc4]
mov eax, dword [ebx + 8]
mov ecx, dword [eax]
call dword [ecx + 0x38]
mov edx, dword [ebp - 0x10]
mov eax, dword [ebx + 8]
mov ecx, dword [eax]
call dword [ecx + 0x38]
lea ecx, [ebp - 0xc8]
mov edx, esi
mov eax, dword [ebp - 0x2c]
mov edi, dword [eax]
call dword [edi + 0xc]
mov edx, dword [ebp - 0xc8]
mov eax, dword [ebx + 8]
mov ecx, dword [eax]
call dword [ecx + 0x38]
mov eax, dword [ebp - 0x10]
call fcn.0040dca0
test al, al
je 0x62553e
mov eax, dword [ebp - 0x10]
call fcn.00794a00
mov dword [ebp - 0x38], eax
mov dword [ebp - 0x34], edx
cmp dword [ebp - 0x34], 0
jne 0x6253ed
cmp dword [ebp - 0x38], 0x100000
jbe 0x625474
jmp 0x6253f3
jle 0x625474
lea eax, [ebp - 0xcc]
push eax
mov dword [ebp - 0x8c], 4
mov byte [ebp - 0x88], 0
mov dword [ebp - 0x84], 2
mov byte [ebp - 0x80], 0
fild qword [ebp - 0x38]
fdiv dword [0x625c18]
fdiv dword [0x625c18]
fstp xword [ebp - 0x98]
wait
lea eax, [ebp - 0x98]
mov dword [ebp - 0x7c], eax
mov byte [ebp - 0x78], 3
lea edx, [ebp - 0x8c]
mov ecx, 2
mov eax, 0x625c24
call fcn.0040ef70
lea eax, [ebp - 0xcc]
mov edx, 0x625c34
call fcn.004057fc
mov edx, dword [ebp - 0xcc]
mov eax, dword [ebx + 8]
mov ecx, dword [eax]
call dword [ecx + 0x38]
jmp 0x62552e
cmp dword [ebp - 0x34], 0
jne 0x625485
cmp dword [ebp - 0x38], 0x400
jbe 0x6254ff
jmp 0x625487
jle 0x6254ff
lea eax, [ebp - 0xd0]
push eax
mov dword [ebp - 0x8c], 4
mov byte [ebp - 0x88], 0
mov dword [ebp - 0x84], 1
mov byte [ebp - 0x80], 0
fild qword [ebp - 0x38]
fdiv dword [0x625c18]
fstp xword [ebp - 0x98]
wait
lea eax, [ebp - 0x98]
mov dword [ebp - 0x7c], eax
mov byte [ebp - 0x78], 3
lea edx, [ebp - 0x8c]
mov ecx, 2
mov eax, 0x625c24
call fcn.0040ef70
lea eax, [ebp - 0xd0]
mov edx, 0x625c40
call fcn.004057fc
mov edx, dword [ebp - 0xd0]
mov eax, dword [ebx + 8]
mov ecx, dword [eax]
call dword [ecx + 0x38]
jmp 0x62552e
push dword [ebp - 0x34]
push dword [ebp - 0x38]
lea eax, [ebp - 0xd4]
call fcn.0040d7a8
lea eax, [ebp - 0xd4]
mov edx, 0x625c4c
call fcn.004057fc
mov edx, dword [ebp - 0xd4]
mov eax, dword [ebx + 8]
mov ecx, dword [eax]
call dword [ecx + 0x38]
mov ecx, 1
xor edx, edx
mov eax, ebx
call fcn.0045e1c0
jmp 0x625584
xor edx, edx
mov eax, dword [ebx + 8]
mov ecx, dword [eax]
call dword [ecx + 0x38]
mov ecx, 2
xor edx, edx
mov eax, ebx
call fcn.0045e1c0
jmp 0x625584
xor edx, edx
mov eax, dword [ebx + 8]
mov ecx, dword [eax]
call dword [ecx + 0x38]
xor edx, edx
mov eax, dword [ebx + 8]
mov ecx, dword [eax]
call dword [ecx + 0x38]
xor edx, edx
mov eax, dword [ebx + 8]
mov ecx, dword [eax]
call dword [ecx + 0x38]
mov ecx, 2
xor edx, edx
mov eax, ebx
call fcn.0045e1c0
mov edx, dword [ebp - 0x14]
mov eax, dword [ebx + 8]
mov ecx, dword [eax]
call dword [ecx + 0x38]
inc esi
dec dword [ebp - 0x40]
jne 0x62523b
mov eax, dword [ebp - 0x3c]
call fcn.004045cc
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x320]
mov eax, dword [eax + 0x23c]
mov edx, 2
call fcn.0045d894
xor edx, edx
call fcn.0045d6f0
mov eax, dword [ebp - 0x28]
call fcn.004045cc
mov eax, dword [ebp - 0x2c]
call fcn.004045cc
mov edx, dword [0x7b80dc]
mov edx, dword [edx]
lea eax, [ebp - 8]
mov ecx, 0x625c5c
call fcn.00405840
mov eax, dword [ebp - 8]
call fcn.0040dca0
test al, al
je 0x625b7c
mov dl, 1
mov eax, dword [0x421f34]
call fcn.0040459c
mov dword [ebp - 0x28], eax
mov ecx, dword [ebp - 8]
mov dl, 1
mov eax, dword [0x447b24]
call fcn.00447bd4
mov dword [ebp - 0x44], eax
mov ecx, dword [ebp - 0x28]
mov edx, 0x625c84
mov eax, dword [ebp - 0x44]
mov ebx, dword [eax]
call dword [ebx + 0x40]
mov eax, dword [ebp - 0x28]
mov edx, dword [eax]
call dword [edx + 0x14]
dec eax
test eax, eax
jl 0x625854
inc eax
mov dword [ebp - 0x40], eax
xor esi, esi
lea eax, [ebp - 0x14]
call fcn.00405518
lea ecx, [ebp - 0x24]
mov edx, esi
mov eax, dword [ebp - 0x28]
mov ebx, dword [eax]
call dword [ebx + 0xc]
mov eax, dword [ebp - 0xc]
push eax
lea eax, [ebp - 0xd8]
push eax
mov ecx, dword [ebp - 0x24]
mov edx, 0x625c84
mov eax, dword [ebp - 0x44]
mov ebx, dword [eax]
call dword [ebx]
mov edx, dword [ebp - 0xd8]
lea eax, [ebp - 0xc]
call fcn.004055b0
mov eax, dword [ebp - 0xc]
call fcn.004057f4
cmp eax, 0x16
jle 0x62571e
lea eax, [ebp - 0xc]
mov ecx, 1
mov edx, 1
call fcn.00405a94
lea eax, [ebp - 0x20]
push eax
mov edx, dword [ebp - 0xc]
mov eax, 0x625ca0
call fcn.00405b38
mov ecx, eax
dec ecx
mov edx, 1
mov eax, dword [ebp - 0xc]
call fcn.00405a54
mov eax, dword [ebp - 0x20]
call fcn.004057f4
mov ecx, eax
lea eax, [ebp - 0xc]
mov edx, 1
call fcn.00405a94
lea eax, [ebp - 0xc]
mov ecx, 1
mov edx, 1
call fcn.00405a94
lea eax, [ebp - 0x14]
push eax
xor ecx, ecx
mov edx, dword [ebp - 0xc]
mov eax, dword [ebp - 4]
call fcn.006220c4
lea eax, [ebp - 0xdc]
push eax
mov ecx, 1
mov edx, dword [ebp - 0xc]
mov eax, dword [ebp - 4]
call fcn.006220c4
mov edx, dword [ebp - 0xdc]
lea eax, [ebp - 0xc]
call fcn.004055b0
mov eax, dword [ebp - 0xc]
call fcn.004057f4
test eax, eax
jle 0x625742
mov eax, dword [ebp - 0xc]
cmp byte [eax], 0x30
jne 0x625742
lea eax, [ebp - 0xc]
mov ecx, dword [ebp - 0xc]
mov edx, 0x625bf0
call fcn.00405840
mov eax, dword [ebp - 0x24]
call fcn.004057f4
test eax, eax
jle 0x6257bc
lea eax, [ebp - 0x18]
push eax
mov ecx, 1
mov edx, dword [ebp - 0x24]
mov eax, dword [ebp - 4]
call fcn.006220c4
mov eax, dword [ebp - 0x18]
call fcn.004057f4
mov ecx, eax
lea eax, [ebp - 0x24]
mov edx, 1
call fcn.00405a94
mov edx, dword [ebp - 0x24]
mov eax, 0x625cac
call fcn.00405b38
mov edx, eax
lea eax, [ebp - 0x24]
mov ecx, 1
call fcn.00405a94
mov edx, dword [ebp - 0x24]
mov eax, 0x625ca0
call fcn.00405b38
mov edx, eax
lea eax, [ebp - 0x24]
mov ecx, 1
call fcn.00405a94
lea eax, [ebp - 0x1c]
mov edx, dword [ebp - 0x24]
call fcn.004055b0
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x320]
mov eax, dword [eax + 0x22c]
call fcn.0045e568
mov ebx, eax
mov edx, dword [ebp - 0xc]
mov eax, ebx
call fcn.0045e008
mov edx, dword [ebp - 0x1c]
mov eax, dword [ebx + 8]
mov ecx, dword [eax]
call dword [ecx + 0x38]
lea eax, [ebp - 0xe0]
mov ecx, dword [ebp - 0x18]
mov edx, 0x625c84
call fcn.00405840
mov edx, dword [ebp - 0xe0]
mov eax, dword [ebx + 8]
mov ecx, dword [eax]
call dword [ecx + 0x38]
mov edx, dword [ebp - 0x20]
mov eax, dword [ebx + 8]
mov ecx, dword [eax]
call dword [ecx + 0x38]
lea edx, [ebp - 0xe4]
mov eax, dword [0x7ba300]
call fcn.00407bd4
mov edx, dword [ebp - 0xe4]
mov eax, dword [ebx + 8]
mov ecx, dword [eax]
call dword [ecx + 0x38]
mov edx, dword [ebp - 0x14]
mov eax, dword [ebx + 8]
mov ecx, dword [eax]
call dword [ecx + 0x38]
mov ecx, 1
xor edx, edx
mov eax, ebx
call fcn.0045e1c0
inc esi
dec dword [ebp - 0x40]
jne 0x62563e
mov eax, dword [ebp - 0x44]
call fcn.004045cc
mov eax, dword [ebp - 0x28]
mov edx, dword [eax]
call dword [edx + 0x44]
mov ecx, dword [ebp - 8]
mov dl, 1
mov eax, dword [0x447b24]
call fcn.00447bd4
mov dword [ebp - 0x48], eax
mov ecx, dword [ebp - 0x28]
mov edx, 0x625cb8
mov eax, dword [ebp - 0x48]
mov ebx, dword [eax]
call dword [ebx + 0x40]
mov eax, dword [ebp - 0x28]
mov edx, dword [eax]
call dword [edx + 0x14]
dec eax
test eax, eax
jl 0x625ab3
inc eax
mov dword [ebp - 0x40], eax
xor esi, esi
lea eax, [ebp - 0x14]
call fcn.00405518
lea ecx, [ebp - 0x24]
mov edx, esi
mov eax, dword [ebp - 0x28]
mov ebx, dword [eax]
call dword [ebx + 0xc]
mov eax, dword [ebp - 0xc]
push eax
lea eax, [ebp - 0xe8]
push eax
mov ecx, dword [ebp - 0x24]
mov edx, 0x625cb8
mov eax, dword [ebp - 0x48]
mov ebx, dword [eax]
call dword [ebx]
mov edx, dword [ebp - 0xe8]
lea eax, [ebp - 0xc]
call fcn.004055b0
mov eax, dword [ebp - 0xc]
call fcn.004057f4
cmp eax, 0x16
jle 0x62597d
lea eax, [ebp - 0xc]
mov ecx, 1
mov edx, 1
call fcn.00405a94
lea eax, [ebp - 0x20]
push eax
mov edx, dword [ebp - 0xc]
mov eax, 0x625ca0
call fcn.00405b38
mov ecx, eax
dec ecx
mov edx, 1
mov eax, dword [ebp - 0xc]
call fcn.00405a54
mov eax, dword [ebp - 0x20]
call fcn.004057f4
mov ecx, eax
lea eax, [ebp - 0xc]
mov edx, 1
call fcn.00405a94
lea eax, [ebp - 0xc]
mov ecx, 1
mov edx, 1
call fcn.00405a94
lea eax, [ebp - 0x14]
push eax
xor ecx, ecx
mov edx, dword [ebp - 0xc]
mov eax, dword [ebp - 4]
call fcn.006220c4
lea eax, [ebp - 0xec]
push eax
mov ecx, 1
mov edx, dword [ebp - 0xc]
mov eax, dword [ebp - 4]
call fcn.006220c4
mov edx, dword [ebp - 0xec]
lea eax, [ebp - 0xc]
call fcn.004055b0
mov eax, dword [ebp - 0xc]
call fcn.004057f4
test eax, eax
jle 0x6259a1
mov eax, dword [ebp - 0xc]
cmp byte [eax], 0x30
jne 0x6259a1
lea eax, [ebp - 0xc]
mov ecx, dword [ebp - 0xc]
mov edx, 0x625bf0
call fcn.00405840
mov eax, dword [ebp - 0x24]
call fcn.004057f4
test eax, eax
jle 0x625a1b
lea eax, [ebp - 0x18]
push eax
mov ecx, 1
mov edx, dword [ebp - 0x24]
mov eax, dword [ebp - 4]
call fcn.006220c4
mov eax, dword [ebp - 0x18]
call fcn.004057f4
mov ecx, eax
lea eax, [ebp - 0x24]
mov edx, 1
call fcn.00405a94
mov edx, dword [ebp - 0x24]
mov eax, 0x625cac
call fcn.00405b38
mov edx, eax
lea eax, [ebp - 0x24]
mov ecx, 1
call fcn.00405a94
mov edx, dword [ebp - 0x24]
mov eax, 0x625ca0
call fcn.00405b38
mov edx, eax
lea eax, [ebp - 0x24]
mov ecx, 1
call fcn.00405a94
lea eax, [ebp - 0x1c]
mov edx, dword [ebp - 0x24]
call fcn.004055b0
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x320]
mov eax, dword [eax + 0x22c]
call fcn.0045e568
mov ebx, eax
mov edx, dword [ebp - 0xc]
mov eax, ebx
call fcn.0045e008
mov edx, dword [ebp - 0x1c]
mov eax, dword [ebx + 8]
mov ecx, dword [eax]
call dword [ecx + 0x38]
lea eax, [ebp - 0xf0]
mov ecx, dword [ebp - 0x18]
mov edx, 0x625cb8
call fcn.00405840
mov edx, dword [ebp - 0xf0]
mov eax, dword [ebx + 8]
mov ecx, dword [eax]
call dword [ecx + 0x38]
mov edx, dword [ebp - 0x20]
mov eax, dword [ebx + 8]
mov ecx, dword [eax]
call dword [ecx + 0x38]
lea edx, [ebp - 0xf4]
mov eax, dword [0x7ba300]
call fcn.00407bd4
mov edx, dword [ebp - 0xf4]
mov eax, dword [ebx + 8]
mov ecx, dword [eax]
call dword [ecx + 0x38]
mov edx, dword [ebp - 0x14]
mov eax, dword [ebx + 8]
mov ecx, dword [eax]
call dword [ecx + 0x38]
mov ecx, 1
xor edx, edx
mov eax, ebx
call fcn.0045e1c0
inc esi
dec dword [ebp - 0x40]
jne 0x62589d
mov eax, dword [ebp - 0x48]
call fcn.004045cc
mov eax, dword [ebp - 0x28]
call fcn.004045cc
mov edx, dword [0x7b80dc]
mov edx, dword [edx]
lea eax, [ebp - 0xf8]
mov ecx, 0x625cd4
call fcn.00405840
mov eax, dword [ebp - 0xf8]
call fcn.0040dca0
test al, al
je 0x625b7c
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x320]
mov eax, dword [eax + 0x22c]
call fcn.0045e568
mov ebx, eax
mov edx, dword [ebp - 0xc]
mov eax, ebx
call fcn.0045e008
mov edx, dword [ebp - 0x1c]
mov eax, dword [ebx + 8]
mov ecx, dword [eax]
call dword [ecx + 0x38]
lea eax, [ebp - 0xfc]
mov ecx, dword [ebp - 0x18]
mov edx, 0x625cb8
call fcn.00405840
mov edx, dword [ebp - 0xfc]
mov eax, dword [ebx + 8]
mov ecx, dword [eax]
call dword [ecx + 0x38]
mov edx, dword [ebp - 0x20]
mov eax, dword [ebx + 8]
mov ecx, dword [eax]
call dword [ecx + 0x38]
lea edx, [ebp - 0x100]
mov eax, dword [0x7ba300]
call fcn.00407bd4
mov edx, dword [ebp - 0x100]
mov eax, dword [ebx + 8]
mov ecx, dword [eax]
call dword [ecx + 0x38]
mov edx, dword [ebp - 0x14]
mov eax, dword [ebx + 8]
mov ecx, dword [eax]
call dword [ecx + 0x38]
mov ecx, 1
xor edx, edx
mov eax, ebx
call fcn.0045e1c0
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
push 0x625bbb
lea eax, [ebp - 0x100]
mov edx, 0x1a
call fcn.0040553c
lea eax, [ebp - 0x74]
mov edx, 0xb
call fcn.0040553c
lea eax, [ebp - 0x24]
mov edx, 8
call fcn.0040553c
ret