Function at 0x4055d0
Capabilities:
Terminate process

Disassembly:
mov eax, dword [0x42ad80]
mov ecx, dword [0x42ad84]
sub esp, 0x5c
or eax, ecx
je 0x4062f3
cmp dword [0x42ad58], 0xffffffff
je 0x4062f3
mov eax, dword [0x42ad98]
mov ecx, dword [0x42ad94]
cdq
push edx
mov edx, dword [0x42ad90]
push eax
push ecx
push edx
call fcn.0041b140
or eax, edx
je 0x40561e
mov eax, dword [esp + 0x60]
test eax, eax
je 0x4062f3
push esi
mov esi, dword [0x42ad20]
test esi, esi
je 0x4062f2
push ebx
push ebp
mov ebp, dword [sym.imp.MSVCR71.dll_fprintf]
push edi
jmp 0x405640
fild dword [esi + 0x10]
fsub qword [0x423e50]
fmul qword [0x423e48]
call fcn.0041afe0
mov ecx, dword [0x42ad84]
mov ebx, edx
cmp ebx, ecx
mov dword [esp + 0x40], eax
jb 0x40567a
ja 0x40566e
cmp eax, dword [0x42ad80]
jbe 0x40567a
mov eax, dword [esp + 0x70]
test eax, eax
je 0x4062ef
cmp dword [0x42b24c], 1
jle 0x4056a6
mov eax, dword [esi + 4]
mov ecx, dword [esi]
mov edx, dword [esi + 0xc]
push eax
mov eax, dword [esi + 8]
push ecx
mov ecx, dword [sym.imp.MSVCR71.dll__iob]
push edx
push eax
add ecx, 0x40
push str.INFO:_After_read_bmp__:_xd_d_yd_d_x0_d_y0_d_n
push ecx
call ebp
add esp, 0x18
call fcn.004053b0
test eax, eax
mov dword [0x42ad20], eax
jne 0x4056d1
mov edx, dword [sym.imp.MSVCR71.dll__iob]
add edx, 0x40
push str.INFO:_Found_EOF_in_.sub_file._n
push edx
call ebp
mov eax, dword [0x42ad20]
add esp, 8
test eax, eax
je 0x40570a
mov edx, dword [esi + 0x14]
mov ecx, dword [esi + 0x10]
lea ecx, [ecx + edx + 0x5a]
cmp ecx, dword [eax + 0x10]
jle 0x40570a
cmp dword [0x42b24c], 4
jle 0x405702
mov edx, dword [sym.imp.MSVCR71.dll__iob]
add edx, 0x40
push str.WARN:_Overlapping_sub_n
push edx
call ebp
mov eax, dword [0x42ad20]
add esp, 8
or edi, 0xffffffff
mov dword [esi + 0x14], edi
jmp 0x40570d
or edi, 0xffffffff
cmp dword [0x42b24c], 4
jle 0x4057b6
test eax, eax
je 0x405773
mov ecx, dword [eax + 0x10]
mov eax, 0x5d34edef
imul ecx
mov ecx, dword [esi + 0x14]
sar edx, 0xf
mov eax, edx
shr eax, 0x1f
add eax, edx
push eax
mov eax, 0x5d34edef
imul ecx
sar edx, 0xf
mov ecx, edx
shr ecx, 0x1f
add ecx, edx
push ecx
mov ecx, dword [esi + 0x10]
mov eax, 0x5d34edef
imul ecx
mov ecx, dword [sym.imp.MSVCR71.dll__iob]
sar edx, 0xf
mov eax, edx
shr eax, 0x1f
add eax, edx
push eax
add ecx, 0x40
push str.spts:__d__sd:__d__nspts:__d_n
push ecx
call ebp
add esp, 0x14
jmp 0x4057b1
mov ecx, dword [esi + 0x14]
mov eax, 0x5d34edef
imul ecx
mov ecx, dword [esi + 0x10]
sar edx, 0xf
mov eax, edx
shr eax, 0x1f
add eax, edx
push eax
mov eax, 0x5d34edef
imul ecx
sar edx, 0xf
mov ecx, edx
shr ecx, 0x1f
add ecx, edx
mov edx, dword [sym.imp.MSVCR71.dll__iob]
push ecx
add edx, 0x40
push str.spts:__d__sd:__d__nspts:_NULL_n
push edx
call ebp
add esp, 0x10
mov eax, dword [0x42ad20]
cmp dword [esi + 0x14], edi
jne 0x4057d8
test eax, eax
je 0x4057d8
mov ecx, dword [esi + 0x10]
mov eax, dword [eax + 0x10]
lea edx, [ecx + 0x5a]
cmp eax, edx
jle 0x4062f7
sub eax, ecx
sub eax, 0x5a
mov dword [esi + 0x14], eax
mov eax, dword [0x42ad70]
sub eax, 0
je 0x4059b8
dec eax
je 0x4059b0
dec eax
je 0x4059a8
xor edi, edi
mov dword [esp + 0x18], edi
cmp edi, dword [0x42b250]
jle 0x405826
mov eax, dword [0x42ada4]
test eax, eax
mov dword [0x42b250], edi
jne 0x405826
mov edx, dword [sym.imp.MSVCR71.dll__iob]
push edi
add edx, 0x40
push str.INFO:_Max_sub_size_d_n
push edx
call ebp
add esp, 0xc
mov eax, dword [esp + 0x40]
mov ecx, dword [0x42ad78]
mov dword [0x42ad80], eax
mov eax, dword [0x42ad70]
inc ecx
test eax, eax
mov byte [esp + 0x12], 0
mov dword [0x42ad78], ecx
mov dword [0x42ad84], ebx
jne 0x405e61
mov ebx, dword [0x42ad98]
add ebx, 0xffffffec
push 0x1ba
mov dword [esp + 0x2c], ebx
call dword [sym.imp.WS2_32.dll_htonl]
mov ecx, dword [0x42ad50]
mov dword [esp + 0x38], eax
push ecx
mov eax, 4
lea ecx, [esp + 0x3c]
call fcn.00405330
mov edx, dword [0x42ad48]
mov edi, dword [0x42ad84]
mov ebp, dword [0x42ad80]
push 0
push edx
push edi
push ebp
call fcn.00404f20
mov eax, dword [0x42ad6c]
add esp, 0x14
cmp edi, eax
ja 0x4058c9
mov ecx, dword [0x42ad68]
jb 0x4058b9
cmp ebp, ecx
jae 0x4058c9
mov ebp, ecx
mov edi, eax
mov dword [0x42ad80], ebp
mov dword [0x42ad84], edi
mov eax, dword [0x42ad50]
add ebp, 0xab6e
adc edi, 0
push eax
mov eax, 0xa
mov ecx, 0x42ad28
mov dword [0x42ad68], ebp
mov dword [0x42ad6c], edi
call fcn.00405330
mov edx, dword [0x42ad50]
mov ecx, ebx
sar ecx, 8
mov byte [0x42ad2c], cl
push edx
mov eax, 6
mov ecx, 0x42ad28
mov byte [0x42ad28], 0
mov byte [0x42ad29], 0
mov byte [0x42ad2a], 1
mov byte [0x42ad2b], 0xbe
mov byte [0x42ad2d], bl
call fcn.00405330
mov edx, dword [0x42ad24]
mov ecx, ebx
mov ebp, ecx
shr ecx, 2
mov edi, edx
or eax, 0xffffffff
rep stosd dword es:[edi], eax
mov ecx, ebp
and ecx, 3
mov dword [0x42ad4c], edx
add esp, 8
mov edx, str.dvdauthor_data
rep stosb byte es:[edi], al
call fcn.00405260
mov edi, dword [0x42ad4c]
mov byte [edi], 1
mov byte [edi + 1], 1
mov al, byte [0x42ad54]
inc edi
mov byte [edi + 1], al
mov eax, dword [esi + 0x10]
inc edi
inc edi
mov ecx, eax
shr ecx, 0x18
mov byte [edi], cl
mov edx, eax
mov ecx, eax
shr edx, 0x10
shr ecx, 8
mov byte [edi + 1], dl
mov byte [edi + 2], cl
mov byte [edi + 3], al
mov eax, dword [esi + 0x14]
add edi, 4
cmp eax, 0xffffffff
jne 0x4059fe
or ecx, eax
jmp 0x405a03
push esi
call fcn.00401a30
jmp 0x4059be
push esi
call fcn.00401d40
jmp 0x4059be
push esi
call fcn.004024a0
mov edi, eax
add esp, 4
cmp edi, 0xffffffff
mov dword [esp + 0x18], edi
jne 0x4057fa
cmp dword [0x42b24c], edi
jle 0x4059f3
mov eax, dword [0x42ad7c]
mov ecx, dword [sym.imp.MSVCR71.dll__iob]
dec eax
push eax
add ecx, 0x40
push str.WARN:_Image_too_large__encoded_size_64k___skipping_line__d_n
push ecx
call ebp
add esp, 0xc
inc dword [0x42b258]
jmp 0x4062e1
mov ecx, dword [esi + 0x10]
add ecx, eax
mov edx, ecx
shr edx, 0x18
mov byte [edi], dl
mov byte [edi + 3], cl
mov eax, ecx
shr eax, 0x10
mov byte [edi + 1], al
mov edx, ecx
shr edx, 8
mov byte [edi + 2], dl
add edi, 4
mov byte [edi], 1
mov al, byte [esi + 0x20]
inc edi
mov byte [edi], al
mov eax, dword [esi + 0x20]
inc edi
xor ebp, ebp
test eax, eax
mov dword [0x42ad4c], edi
jle 0x405b10
lea ecx, [esi + 0xc81]
jmp 0x405a50
movzx edx, byte [ecx - 1]
movzx eax, byte [ecx + 1]
imul edx, edx, 0x101
imul eax, eax, 0x62
add edx, eax
movzx eax, byte [ecx]
imul eax, eax, 0x1f8
lea edx, [edx + eax + 0x4074]
mov eax, 0x10624dd3
imul edx
sar edx, 6
mov eax, edx
shr eax, 0x1f
add eax, edx
mov byte [edi], al
movzx edx, byte [ecx - 1]
movzx eax, byte [ecx + 1]
imul edx, edx, 0x1b7
imul eax, eax, 0x47
sub edx, eax
movzx eax, byte [ecx]
imul eax, eax, 0x170
sub edx, eax
add edx, 0x1f5f4
mov eax, 0x10624dd3
imul edx
sar edx, 6
mov eax, edx
shr eax, 0x1f
add eax, edx
mov byte [edi + 1], al
movzx edx, byte [ecx + 1]
movzx eax, byte [ecx - 1]
imul edx, edx, 0x1b7
inc edi
imul eax, eax, 0x94
sub edx, eax
movzx eax, byte [ecx]
imul eax, eax, 0x123
sub edx, eax
add edx, 0x1f5f4
mov eax, 0x10624dd3
imul edx
sar edx, 6
mov eax, edx
shr eax, 0x1f
add eax, edx
inc edi
mov byte [edi], al
mov eax, dword [esi + 0x20]
inc edi
inc ebp
add ecx, 4
cmp ebp, eax
jl 0x405a50
mov dword [0x42ad4c], edi
mov eax, dword [esi + 0xcc4]
test eax, eax
je 0x405cb8
mov byte [edi], 2
mov cl, byte [esi + 0xcc4]
inc edi
mov byte [edi], cl
mov eax, dword [esi + 0xcc4]
inc edi
test eax, eax
mov dword [0x42ad4c], edi
mov dword [esp + 0x34], 0
jle 0x405cb8
mov ax, word [esp + 0x4c]
mov bx, word [esp + 0x48]
lea edx, [esi + 0xcd4]
mov dword [esp + 0x20], edx
mov ebp, 4
mov ecx, dword [esp + 0x20]
mov dword [esp + 0x24], ecx
mov dword [esp + 0x30], ebp
lea esp, [esp]
mov edx, dword [esp + 0x24]
mov ecx, dword [edx]
cmp ecx, 0xffffffff
mov dword [esp + 0x2c], ecx
jne 0x405b9d
shl word [esp + 0x4a], 4
shl bx, 4
shl ax, 4
shl word [esp + 0x4e], 4
mov word [esp + 0x48], bx
jmp 0x405c29
mov ebp, dword [esp + 0x2c]
sar ebp, 8
and ebp, 0xff
lea eax, [esi + ebp*4 + 0x44c]
push eax
push esi
call fcn.00405140
mov dl, byte [esi + ebp*4 + 0x44f]
mov ecx, dword [esp + 0x50]
mov ebp, dword [esp + 0x34]
mov ebx, eax
shr dl, 4
movzx ax, dl
shl ecx, 4
or ebx, ecx
mov ecx, dword [esp + 0x52]
and ebp, 0xff
lea edx, [esi + ebp*4 + 0x860]
shl ecx, 4
push edx
or eax, ecx
push esi
mov word [esp + 0x58], bx
mov word [esp + 0x5a], ax
call fcn.00405140
mov ecx, dword [esp + 0x5c]
mov dl, byte [esi + ebp*4 + 0x863]
shl ecx, 4
shr dl, 4
or eax, ecx
movzx cx, dl
mov edx, dword [esp + 0x5e]
shl edx, 4
add esp, 0x10
mov ebp, 4
or ecx, edx
mov word [esp + 0x4e], cx
mov edx, dword [esp + 0x24]
mov ecx, dword [esp + 0x30]
sub edx, ebp
dec ecx
mov word [esp + 0x4c], ax
mov dword [esp + 0x24], edx
mov dword [esp + 0x30], ecx
jne 0x405b70
mov cl, byte [esp + 0x49]
mov dl, byte [esp + 0x48]
mov byte [edi], cl
mov cl, byte [esp + 0x4b]
mov byte [edi + 1], dl
mov dl, byte [esp + 0x4a]
mov byte [edi + 2], cl
add edi, 2
mov byte [edi + 1], dl
add edi, 2
mov cx, ax
shr cx, 8
mov byte [edi], cl
mov cx, word [esp + 0x4e]
mov dl, al
mov byte [edi + 1], dl
mov dl, byte [esp + 0x4e]
add edi, 2
mov byte [edi + 1], dl
mov edx, dword [esp + 0x20]
shr cx, 8
mov byte [edi], cl
mov ecx, dword [esp + 0x34]
add edx, 0x10
add edi, 2
inc ecx
mov dword [esp + 0x20], edx
cmp ecx, dword [esi + 0xcc4]
mov dword [esp + 0x34], ecx
jl 0x405b60
mov ebx, dword [esp + 0x28]
mov dword [0x42ad4c], edi
mov eax, dword [esi + 0x1c]
test eax, eax
je 0x405e47
mov byte [edi], 3
mov al, byte [esi + 0x1c]
inc edi
mov byte [edi], al
mov eax, dword [esi + 0x1c]
inc edi
xor ebx, ebx
test eax, eax
mov dword [0x42ad4c], edi
jle 0x405e43
mov eax, dword [esi + 0xcf8]
mov ebp, ebx
imul ebp, ebp, 0x2c
mov ecx, dword [ebp + eax]
add ebp, eax
mov al, byte [ecx]
test al, al
je 0x405d02
mov byte [edi], al
mov al, byte [ecx + 1]
inc edi
inc ecx
test al, al
jne 0x405cf7
mov byte [edi], 0
inc edi
mov byte [edi], 0
mov byte [edi + 1], 0
mov cl, byte [ebp + 4]
add edi, 2
mov byte [edi], cl
mov eax, dword [ebp + 4]
inc edi
test eax, eax
mov dword [0x42ad4c], edi
jne 0x405e37
mov dl, byte [ebp + 0x28]
mov byte [edi], dl
mov ax, word [ebp + 8]
mov byte [edi + 1], ah
mov byte [edi + 2], al
mov ax, word [ebp + 0xc]
inc edi
mov byte [edi + 2], ah
mov byte [edi + 3], al
mov ax, word [ebp + 0x10]
add edi, 2
add edi, 2
mov byte [edi], ah
mov byte [edi + 1], al
mov ax, word [ebp + 0x14]
add edi, 2
mov byte [edi], ah
mov byte [edi + 1], al
add edi, 2
test ebx, ebx
mov dword [0x42ad4c], edi
mov eax, ebx
jne 0x405d6e
mov eax, dword [esi + 0x1c]
mov edi, dword [sym.imp.MSVCR71.dll_sprintf]
push eax
lea eax, [esp + 0x58]
push 0x423554
push eax
call edi
mov eax, dword [esi + 0x1c]
lea ecx, [ebx + 1]
add esp, 0xc
cmp ecx, eax
lea eax, [ebx + 2]
jne 0x405d96
mov eax, 1
push eax
lea edx, [esp + 0x64]
push 0x423554
push edx
call edi
mov ecx, dword [ebp + 0x18]
add esp, 0xc
test ecx, ecx
jne 0x405db1
lea ecx, [esp + 0x54]
mov al, byte [ecx]
test al, al
mov edi, dword [0x42ad4c]
je 0x405dcb
lea ecx, [ecx]
mov byte [edi], al
mov al, byte [ecx + 1]
inc edi
inc ecx
test al, al
jne 0x405dc0
mov byte [edi], 0
mov ecx, dword [ebp + 0x1c]
inc edi
test ecx, ecx
jne 0x405dda
lea ecx, [esp + 0x60]
mov al, byte [ecx]
test al, al
je 0x405deb
mov byte [edi], al
mov al, byte [ecx + 1]
inc edi
inc ecx
test al, al
jne 0x405de0
mov byte [edi], 0
mov ecx, dword [ebp + 0x20]
inc edi
test ecx, ecx
jne 0x405dfa
lea ecx, [esp + 0x54]
mov al, byte [ecx]
test al, al
je 0x405e0b
mov byte [edi], al
mov al, byte [ecx + 1]
inc edi
inc ecx
test al, al
jne 0x405e00
mov byte [edi], 0
mov ebp, dword [ebp + 0x24]
inc edi
test ebp, ebp
mov ecx, ebp
jne 0x405e1c
lea ecx, [esp + 0x60]
mov al, byte [ecx]
test al, al
je 0x405e2d
mov byte [edi], al
mov al, byte [ecx + 1]
inc edi
inc ecx
test al, al
jne 0x405e22
mov byte [edi], 0
inc edi
mov dword [0x42ad4c], edi
mov eax, dword [esi + 0x1c]
inc ebx
cmp ebx, eax
jl 0x405ce0
mov ebx, dword [esp + 0x28]
mov eax, dword [0x42ad50]
mov ecx, dword [0x42ad24]
push eax
mov eax, ebx
call fcn.00405330
mov edi, dword [esp + 0x1c]
add esp, 4
xor ecx, ecx
test edi, edi
mov dword [esp + 0x24], ecx
je 0x406291
mov eax, 0x42ad28
dec eax
mov dword [esp + 0x34], eax
mov eax, dword [0x42ad98]
jmp 0x405e84
mov ecx, dword [esp + 0x24]
test ecx, ecx
je 0x405e8f
mov edx, 4
jmp 0x405e9f
mov edx, dword [0x42ad5c]
cmp edx, 0xc
je 0x405ea5
mov edx, 9
mov dword [0x42ad5c], edx
mov ebp, dword [0x42ad60]
mov edi, dword [esp + 0x18]
sub eax, edx
sub eax, ebp
sub eax, 0x14
mov ebx, eax
sub ebx, edi
add ebx, ecx
mov dword [esp + 0x20], eax
js 0x405ecd
sub eax, ebx
cmp ebx, 7
mov dword [esp + 0x20], eax
jle 0x405ecf
xor ebx, ebx
push 0x1ba
call dword [sym.imp.WS2_32.dll_htonl]
mov ecx, dword [0x42ad50]
mov dword [esp + 0x14], eax
push ecx
mov eax, 4
lea ecx, [esp + 0x18]
call fcn.00405330
mov edx, dword [0x42ad48]
mov edi, dword [0x42ad84]
mov ebp, dword [0x42ad80]
push 0
push edx
push edi
push ebp
call fcn.00404f20
mov eax, dword [0x42ad6c]
add esp, 0x14
cmp edi, eax
ja 0x405f37
mov ecx, dword [0x42ad68]
jb 0x405f27
cmp ebp, ecx
jae 0x405f37
mov ebp, ecx
mov edi, eax
mov dword [0x42ad80], ebp
mov dword [0x42ad84], edi
mov eax, dword [0x42ad50]
add ebp, 0xab6e
adc edi, 0
push eax
mov eax, 0xa
mov ecx, 0x42ad28
mov dword [0x42ad68], ebp
mov dword [0x42ad6c], edi
call fcn.00405330
add esp, 4
push 0x1bd
call dword [sym.imp.WS2_32.dll_htonl]
mov ecx, dword [0x42ad50]
mov dword [esp + 0x14], eax
push ecx
mov eax, 4
lea ecx, [esp + 0x18]
call fcn.00405330
mov edx, dword [esp + 0x24]
mov eax, dword [0x42ad60]
mov ebp, dword [0x42ad5c]
add edx, ebx
add edx, eax
add esp, 4
add edx, ebp
push edx
call dword [sym.imp.WS2_32.dll_ntohs]
lea ecx, [esp + 0x1c]
mov dword [esp + 0x1c], eax
mov eax, dword [0x42ad50]
push eax
mov eax, 2
call fcn.00405330
mov ebp, dword [0x42ad5c]
add esp, 4
cmp ebp, 9
jne 0x406019
mov eax, dword [esi + 0x10]
mov edx, eax
shr edx, 0x1d
and dl, 6
or dl, 0x21
mov byte [0x42ad2b], dl
mov edx, eax
shr edx, 0x16
mov byte [0x42ad2c], dl
mov edx, eax
shr edx, 0xe
or dl, 1
mov byte [0x42ad2d], dl
mov edx, eax
shr edx, 7
shl al, 1
or al, 1
mov byte [0x42ad29], 0x80
mov cl, 5
mov byte [0x42ad2e], dl
mov byte [0x42ad2f], al
jmp 0x406088
cmp ebp, 0xc
jne 0x40607f
mov eax, dword [esi + 0x10]
mov edx, eax
shr edx, 0x1d
and dl, 6
or dl, 0x21
mov byte [0x42ad2b], dl
mov edx, eax
shr edx, 0x16
mov byte [0x42ad2c], dl
mov edx, eax
shr edx, 0xe
or dl, 1
mov byte [0x42ad2d], dl
mov edx, eax
shr edx, 7
shl al, 1
or al, 1
mov byte [0x42ad29], 0x81
mov cl, 8
mov byte [0x42ad2e], dl
mov byte [0x42ad2f], al
mov byte [0x42ad30], 0x1e
mov byte [0x42ad31], 0x60
mov byte [0x42ad32], 0x3a
jmp 0x406088
mov byte [0x42ad29], 0
xor cl, cl
mov edx, dword [esp + 0x34]
add cl, bl
mov byte [0x42ad2a], cl
mov ecx, ebx
lea edi, [edx + ebp]
mov edx, ecx
shr ecx, 2
or eax, 0xffffffff
mov byte [0x42ad28], 0x81
rep stosd dword es:[edi], eax
mov ecx, edx
and ecx, 3
rep stosb byte es:[edi], al
mov eax, dword [0x42ad60]
test eax, eax
mov ecx, 0x70
jne 0x4060c6
movzx ecx, byte [0x42ad54]
lea eax, [ebx + ebp]
mov byte [eax + 0x42ad27], cl
mov ecx, dword [0x42ad50]
push ecx
mov ecx, 0x42ad28
call fcn.00405330
mov eax, dword [0x42ad60]
add esp, 4
test eax, eax
je 0x406171
mov eax, dword [0x42ad50]
mov edx, dword [0x42ad78]
sar edx, 8
push eax
mov eax, 1
mov ecx, 0x42ad54
mov byte [esp + 0x17], dl
call fcn.00405330
mov edi, dword [esp + 0x24]
mov ebp, dword [esp + 0x28]
mov eax, dword [esp + 0x1c]
lea ecx, [edi + ebp]
add esp, 4
cmp ecx, eax
jne 0x40612d
or byte [esp + 0x12], 0x80
mov edx, dword [0x42ad50]
push edx
mov eax, 1
lea ecx, [esp + 0x16]
call fcn.00405330
mov eax, dword [0x42ad50]
push eax
mov eax, 1
lea ecx, [esp + 0x1b]
call fcn.00405330
mov ecx, dword [0x42ad50]
push ecx
mov eax, 1
mov ecx, 0x42ad78
call fcn.00405330
add esp, 0xc
jmp 0x406179
mov ebp, dword [esp + 0x24]
mov edi, dword [esp + 0x20]
mov al, byte [esp + 0x12]
mov edx, dword [0x42b254]
inc al
mov byte [esp + 0x12], al
mov eax, dword [0x42ad50]
push eax
lea ecx, [edx + ebp]
mov eax, edi
call fcn.00405330
mov ecx, dword [0x42ad60]
mov edx, dword [0x42ad5c]
mov eax, dword [0x42ad98]
add edx, ecx
add ebp, edi
add edx, ebx
lea edi, [edi + edx + 0x14]
add esp, 4
cmp edi, eax
mov dword [esp + 0x24], ebp
je 0x406287
push 0x1be
call dword [sym.imp.WS2_32.dll_htonl]
mov dword [esp + 0x14], eax
mov eax, dword [0x42ad50]
push eax
mov eax, 4
lea ecx, [esp + 0x18]
call fcn.00405330
mov eax, dword [0x42ad98]
mov ecx, dword [0x42b24c]
sub eax, edi
sub eax, 6
add esp, 4
cmp ecx, 4
mov dword [esp + 0x1c], eax
jle 0x406222
mov edx, dword [sym.imp.MSVCR71.dll__iob]
movzx ecx, ax
push ecx
add edx, 0x40
push 0x423d20
push edx
call dword [sym.imp.MSVCR71.dll_fprintf]
mov eax, dword [esp + 0x28]
add esp, 0xc
push eax
call dword [sym.imp.WS2_32.dll_htons]
lea ecx, [esp + 0x3c]
mov dword [esp + 0x3c], eax
mov eax, dword [0x42ad50]
push eax
mov eax, 2
call fcn.00405330
xor edi, edi
add esp, 4
cmp word [esp + 0x1c], di
mov dword [esp + 0x14], 0xff
jbe 0x406282
jmp 0x406260
mov ecx, dword [0x42ad50]
push ecx
mov eax, 1
lea ecx, [esp + 0x18]
call fcn.00405330
movzx edx, word [esp + 0x20]
add esp, 4
inc edi
cmp edi, edx
jb 0x406260
mov eax, dword [0x42ad98]
cmp ebp, dword [esp + 0x18]
jne 0x405e80
mov eax, dword [0x42b24c]
test eax, eax
jle 0x4062d6
mov ecx, dword [esi + 0x14]
fild dword [esi + 0x10]
mov eax, 0x5d34edef
imul ecx
fmul qword [0x423d18]
mov ecx, dword [sym.imp.MSVCR71.dll__iob]
sar edx, 0xf
mov eax, edx
shr eax, 0x1f
add eax, edx
push eax
sub esp, 8
add ecx, 0x40
fstp qword [esp]
push str.INFO:_Subtitle_inserted_at:__f_sd_d_n
push ecx
call dword [sym.imp.MSVCR71.dll_fprintf]
add esp, 0x14
call fcn.004051a0
mov ebp, dword [sym.imp.MSVCR71.dll_fprintf]
mov esi, dword [0x42ad20]
test esi, esi
jne 0x405640
pop edi
pop ebp
pop ebx
pop esi
add esp, 0x5c
ret
cmp dword [0x42b24c], edi
jle 0x40631a
mov edx, dword [0x42ad7c]
mov eax, dword [sym.imp.MSVCR71.dll__iob]
dec edx
push edx
add eax, 0x40
push str.ERR:_Sub_with_too_short_or_negative_duration_on_line__d__skipping_n
push eax
call ebp
add esp, 0xc
push 1
call dword [sym.imp.MSVCR71.dll_exit]
int3