Function at 0x41dab0
Capabilities:
Resolve function by parsing pe exports

Disassembly:
push ebp
push edi
push esi
push ebx
sub esp, 0x13c
mov ebx, dword [esp + 0x150]
lea esi, [ebx + 0x474]
mov dword [esp + 0x58], esi
mov dword [esp + 0xc], 1
mov dword [esp + 4], 0
mov dword [esp + 8], 0
mov eax, dword [ebx + 0x10]
mov dword [esp], eax
call fcn.00419bb0
mov dword [esp + 8], 0xa
mov esi, eax
mov edi, edx
lea eax, [esp + 0x11e]
mov dword [esp + 4], eax
mov eax, dword [ebx + 0x10]
mov dword [esp], eax
call fcn.0041abd0
cmp eax, 0xa
jne 0x41db2f
mov ecx, dword [esp + 0x154]
movzx edx, byte [esp + 0x11e]
movsx eax, byte [ecx]
cmp edx, eax
je 0x41de70
mov dword [esp + 4], esi
mov dword [esp + 0xc], 0
mov dword [esp + 8], edi
mov eax, dword [ebx + 0x10]
mov dword [esp], eax
call fcn.00419bb0
mov esi, dword [esp + 0x58]
mov dword [esp + 8], 0x592340
mov dword [esp + 4], 0
mov dword [esp], esi
call fcn.0044b630
mov dword [esp + 8], 0x5923e0
mov dword [esp + 4], 0
mov dword [esp], esi
call fcn.0044b630
mov dword [esp + 8], 0x592240
mov dword [esp + 4], 0
mov dword [esp], esi
call fcn.0044b630
mov dword [esp + 0xc], 1
mov dword [esp + 8], 0
mov dword [esp + 4], str.TYER
mov eax, dword [ebx + 0x474]
mov dword [esp + 0x10d], 0
mov dword [esp + 0x111], 0
mov dword [esp + 0x115], 0
mov dword [esp + 0x119], 0
mov byte [esp + 0x11d], 0
mov dword [esp], eax
call fcn.00539d70
test eax, eax
je 0x41e760
mov esi, dword [eax + 4]
mov dword [esp], esi
call sub.msvcrt.dll_strlen
cmp eax, 4
jne 0x41e760
movzx edx, byte [esi]
lea eax, [edx - 0x30]
cmp al, 9
ja 0x41dc26
mov eax, esi
add eax, 1
movzx edx, byte [eax]
lea ecx, [edx - 0x30]
cmp cl, 9
jbe 0x41dc18
test dl, dl
jne 0x41e760
lea edi, [esp + 0x10d]
mov dword [esp + 4], esi
mov dword [esp + 8], 5
mov dword [esp], edi
call fcn.0053a4b0
mov esi, dword [esp + 0x58]
mov dword [esp + 0xc], 0
mov dword [esp + 8], 0
mov dword [esp + 4], str.TYER
mov dword [esp], esi
call fcn.00539ee0
mov dword [esp + 0xc], 0
mov dword [esp + 8], 0
mov dword [esp + 4], 0x591dcd
mov dword [esp], esi
call fcn.00539ee0
mov dword [esp + 0xc], 1
mov dword [esp + 8], 0
mov dword [esp + 4], str.TDAT
mov eax, dword [ebx + 0x474]
mov dword [esp], eax
call fcn.00539d70
test eax, eax
je 0x41e6f0
mov esi, dword [eax + 4]
mov dword [esp], esi
call sub.msvcrt.dll_strlen
cmp eax, 4
jne 0x41e6f0
movzx edx, byte [esi]
lea eax, [edx - 0x30]
cmp al, 9
ja 0x41dcee
mov eax, esi
nop
lea esi, [esi]
add eax, 1
movzx edx, byte [eax]
lea ecx, [edx - 0x30]
cmp cl, 9
jbe 0x41dce0
test dl, dl
jne 0x41e6f0
mov dword [esp + 0x10], esi
lea eax, [esp + 0x111]
add esi, 2
mov dword [esp + 0xc], esi
mov dword [esp + 8], str.__.2s__.2s
mov dword [esp + 4], 0xd
mov dword [esp], eax
call fcn.0053c530
mov esi, dword [esp + 0x58]
mov dword [esp + 0xc], 0
mov dword [esp + 8], 0
mov dword [esp + 4], str.TDAT
mov dword [esp], esi
call fcn.00539ee0
mov dword [esp + 0xc], 0
mov dword [esp + 8], 0
mov dword [esp + 4], 0x591dd6
mov dword [esp], esi
call fcn.00539ee0
mov dword [esp + 0xc], 1
mov dword [esp + 8], 0
mov dword [esp + 4], str.TIME
mov eax, dword [ebx + 0x474]
mov dword [esp], eax
call fcn.00539d70
test eax, eax
je 0x41e7d0
mov esi, dword [eax + 4]
mov dword [esp], esi
call sub.msvcrt.dll_strlen
cmp eax, 4
jne 0x41e7d0
movzx edx, byte [esi]
lea eax, [edx - 0x30]
cmp al, 9
ja 0x41ddc0
mov eax, esi
add eax, 1
movzx edx, byte [eax]
lea ecx, [edx - 0x30]
cmp cl, 9
jbe 0x41ddb2
test dl, dl
jne 0x41e7d0
lea eax, [esi + 2]
mov dword [esp + 0x10], eax
lea eax, [esp + 0x117]
mov dword [esp + 0xc], esi
mov dword [esp + 8], str.__.2s:_.2s
mov dword [esp + 4], 7
mov dword [esp], eax
call fcn.0053c530
mov esi, dword [esp + 0x58]
mov dword [esp + 0xc], 0
mov dword [esp + 8], 0
mov dword [esp + 4], str.TIME
mov dword [esp], esi
call fcn.00539ee0
mov dword [esp + 0xc], 0
mov dword [esp + 8], 0
mov dword [esp + 4], 0x591dea
mov dword [esp], esi
call fcn.00539ee0
cmp byte [esp + 0x10d], 0
je 0x41de60
mov esi, dword [esp + 0x58]
mov dword [esp + 0xc], 0
mov dword [esp + 8], edi
mov dword [esp + 4], 0x591df9
mov dword [esp], esi
call fcn.00539ee0
add esp, 0x13c
pop ebx
pop esi
pop edi
pop ebp
ret
movzx edx, byte [esp + 0x11f]
movsx eax, byte [ecx + 1]
cmp edx, eax
jne 0x41db2f
movzx edx, byte [esp + 0x120]
movsx eax, byte [ecx + 2]
cmp edx, eax
jne 0x41db2f
movzx eax, byte [esp + 0x121]
cmp al, 0xff
mov byte [esp + 0x5f], al
je 0x41db2f
cmp byte [esp + 0x122], 0xff
je 0x41db2f
movzx eax, byte [esp + 0x124]
test al, al
js 0x41db2f
movzx edx, byte [esp + 0x125]
test dl, dl
js 0x41db2f
movzx ebp, byte [esp + 0x126]
mov ecx, ebp
test cl, cl
js 0x41db2f
movzx ecx, byte [esp + 0x127]
test cl, cl
js 0x41db2f
mov esi, eax
and edx, 0x7f
movzx edi, byte [esp + 0x5f]
and esi, 0x7f
and ecx, 0x7f
shl edx, 0xe
and ebp, 0x7f
shl esi, 0x15
or esi, edx
or esi, ecx
shl ebp, 7
or esi, ebp
mov dword [esp + 0x34], esi
movzx esi, byte [esp + 0x123]
mov dword [esp + 0xc], 1
mov dword [esp + 4], 0
mov dword [esp + 8], 0
mov eax, dword [ebx + 0x10]
mov dword [esp + 0x6c], esi
mov dword [esp], eax
call fcn.00419bb0
mov esi, dword [esp + 0x34]
mov dword [esp + 0x128], 0
mov dword [esp + 0x12c], 0
mov dword [esp + 0xc], edi
mov dword [esp + 0x14], esi
mov esi, dword [esp + 0x6c]
mov dword [esp + 8], str.id3v2_ver:_d_flags:_02X_len:_d_n
mov dword [esp + 0x70], eax
mov eax, dword [esp + 0x34]
mov dword [esp + 0x74], edx
mov dword [esp + 0x10], esi
mov dword [esp + 4], 0x30
mov edx, eax
sar edx, 0x1f
add dword [esp + 0x70], eax
adc dword [esp + 0x74], edx
mov dword [esp], ebx
call fcn.00539bd0
cmp byte [esp + 0x5f], 2
je 0x41e025
jae 0x41e83b
mov eax, str.version
mov dword [esp + 0x10], eax
mov dword [esp + 0xc], edi
mov dword [esp + 8], str.ID3v2._d_tag_skipped__cannot_handle__s_n
mov dword [esp + 4], 0x20
mov dword [esp], ebx
call fcn.00539bd0
mov eax, dword [esp + 0x70]
mov edx, dword [esp + 0x74]
mov dword [esp + 0xc], 0
mov dword [esp + 4], eax
mov dword [esp + 8], edx
mov eax, dword [ebx + 0x10]
mov dword [esp], eax
call fcn.00419bb0
mov eax, dword [esp + 0x128]
mov dword [esp], eax
call fcn.005374e0
mov dword [esp], 0
call fcn.005374e0
jmp 0x41dacb
test byte [esp + 0x6c], 0x40
mov eax, str.compression
jne 0x41dfc2
mov esi, dword [esp + 0x6c]
mov dword [esp + 0x4c], 6
mov dword [esp + 0x48], 6
mov dword [esp + 0x44], 0
and esi, 0x80
mov dword [esp + 0x68], esi
mov esi, dword [esp + 0x48]
cmp dword [esp + 0x34], esi
jl 0x41e3f6
mov dword [esp + 0x60], 0
jmp 0x41e176
lea edx, [esp + 0x10d]
mov dword [esp + 8], 4
mov dword [esp + 4], edx
mov eax, dword [ebx + 0x10]
mov dword [esp], eax
call fcn.0041abd0
cmp byte [esp + 0x5f], 3
mov byte [esp + 0x111], 0
je 0x41e420
mov esi, dword [ebx + 0x10]
mov dword [esp], esi
call fcn.0041ab90
mov dword [esp], esi
mov ebp, eax
call fcn.0041ab90
mov edi, ebp
and edi, 0x7f
shl edi, 7
mov dword [esp], esi
and eax, 0x7f
add edi, eax
call fcn.0041ab90
shl edi, 7
mov dword [esp], esi
and eax, 0x7f
add edi, eax
call fcn.0041ab90
shl edi, 7
and eax, 0x7f
add eax, edi
mov dword [esp + 0x2c], eax
mov eax, dword [ebx + 0x10]
mov dword [esp], eax
call fcn.0041b1e0
mov ecx, eax
mov ebp, eax
and ecx, 2
mov dword [esp + 0x38], ecx
cmp dword [esp + 0x2c], 0x10000000
ja 0x41e3f6
mov esi, dword [esp + 0x34]
mov eax, dword [esp + 0x2c]
sub esi, dword [esp + 0x4c]
sub esi, eax
test esi, esi
mov dword [esp + 0x30], esi
mov dword [esp + 0x34], esi
js 0x41e3f6
mov dword [esp + 0xc], 1
mov dword [esp + 4], 0
mov dword [esp + 8], 0
mov eax, dword [ebx + 0x10]
mov dword [esp], eax
call fcn.00419bb0
mov esi, eax
mov eax, dword [esp + 0x2c]
mov edi, edx
test eax, eax
jne 0x41e1c6
cmp byte [esp + 0x10d], 0
jne 0x41e378
mov esi, dword [esp + 0x48]
cmp dword [esp + 0x30], esi
jl 0x41e3f6
mov eax, dword [esp + 0x44]
test eax, eax
jne 0x41e072
lea esi, [esp + 0x10d]
xor ebp, ebp
mov dword [esp + 8], 3
mov dword [esp + 4], esi
mov eax, dword [ebx + 0x10]
mov dword [esp], eax
call fcn.0041abd0
mov eax, dword [ebx + 0x10]
mov byte [esp + 0x110], 0
mov dword [esp], eax
call fcn.0041b250
mov dword [esp + 0x38], 0
mov dword [esp + 0x2c], eax
jmp 0x41e0ff
mov eax, dword [esp + 0x2c]
test ebp, 1
mov dword [esp + 0x40], eax
je 0x41e1f5
cmp eax, 3
jbe 0x41e3f6
mov eax, dword [ebx + 0x10]
mov dword [esp], eax
call fcn.0041b2f0
mov edx, dword [esp + 0x2c]
sub edx, 4
mov dword [esp + 0x40], edx
mov eax, ebp
and ebp, 4
and eax, 8
mov ecx, ebp
or ecx, eax
je 0x41e290
test eax, eax
mov edx, str.encrypted
je 0x41e21f
mov edx, str.encrypted_and_compressed
test ebp, ebp
mov eax, str.compressed
cmove edx, eax
lea eax, [esp + 0x10d]
mov dword [esp + 0x10], eax
mov dword [esp + 0xc], edx
mov dword [esp + 8], str.Skipping__s_ID3v2_frame__s._n
mov dword [esp + 4], 0x18
mov dword [esp], ebx
call fcn.00539bd0
mov ecx, dword [esp + 0x40]
mov dword [esp + 8], 0
mov dword [esp + 4], ecx
mov eax, dword [ebx + 0x10]
mov dword [esp], eax
call fcn.00419e60
mov eax, dword [esp + 0x2c]
xor edx, edx
mov dword [esp + 0xc], 0
add eax, esi
adc edx, edi
mov dword [esp + 4], eax
mov dword [esp + 8], edx
mov eax, dword [ebx + 0x10]
mov dword [esp], eax
call fcn.00419bb0
jmp 0x41e168
movzx edx, byte [esp + 0x10d]
cmp dl, 0x54
mov byte [esp + 0x50], dl
je 0x41e32b
mov eax, dword [esp + 0x158]
test eax, eax
je 0x41e3ae
mov eax, dword [esp + 0x44]
xor edx, edx
mov ebp, 0x592444
test eax, eax
jne 0x41e434
mov edx, dword [esp + 0x44]
mov ebp, edi
mov eax, 0x591cca
mov edi, esi
mov esi, ebx
mov ebx, edx
jmp 0x41e2f6
add ebx, 1
mov eax, ebx
shl eax, 4
mov eax, dword [eax + 0x592440]
test eax, eax
je 0x41e3a0
lea ecx, [esp + 0x10d]
mov dword [esp + 8], 3
mov dword [esp + 4], eax
mov dword [esp], ecx
call sub.msvcrt.dll_memcmp
test eax, eax
jne 0x41e2e0
mov edx, ebx
mov ebx, esi
mov esi, edi
mov edi, ebp
mov eax, edx
shl eax, 4
add eax, 0x592440
mov dword [esp + 0x60], eax
mov ecx, dword [esp + 0x38]
or ecx, dword [esp + 0x68]
mov edx, dword [ebx + 0x10]
jne 0x41e486
cmp byte [esp + 0x50], 0x54
je 0x41e5cc
mov eax, dword [esp + 0x158]
lea ecx, [esp + 0x10d]
mov dword [esp + 0xc], ecx
mov ecx, dword [esp + 0x40]
mov dword [esp + 4], edx
mov dword [esp], ebx
mov dword [esp + 0x10], eax
mov eax, dword [esp + 0x60]
mov dword [esp + 8], ecx
call dword [eax + 8]
jmp 0x41e261
lea edx, [esp + 0x10d]
mov dword [esp + 0xc], edx
mov dword [esp + 8], str.Invalid_empty_frame__s__skipping._n
mov dword [esp + 4], 0x30
mov dword [esp], ebx
call fcn.00539bd0
jmp 0x41e168
mov ebx, esi
mov esi, edi
mov dword [esp + 0x60], 0
mov edi, ebp
cmp byte [esp + 0x50], 0
jne 0x41e261
cmp byte [esp + 0x10e], 0
je 0x41e3db
mov dword [esp + 8], str.invalid_frame_id__assuming_padding_n
mov dword [esp + 4], 0x18
mov dword [esp], ebx
call fcn.00539bd0
mov ecx, dword [esp + 0x40]
mov dword [esp + 8], 0
mov dword [esp + 4], ecx
mov eax, dword [ebx + 0x10]
mov dword [esp], eax
call fcn.00419e60
cmp byte [esp + 0x5f], 4
jne 0x41dfe2
test byte [esp + 0x6c], 0x10
je 0x41dfe2
add dword [esp + 0x70], 0xa
adc dword [esp + 0x74], 0
jmp 0x41dfe2
mov eax, dword [ebx + 0x10]
mov dword [esp], eax
call fcn.0041b2f0
mov dword [esp + 0x2c], eax
jmp 0x41e0e9
mov dword [esp + 0x60], esi
mov esi, ebx
mov ebx, edx
mov dword [esp + 0x64], edi
jmp 0x41e453
add ebp, 0x10
add ebx, 1
mov edi, dword [ebp - 4]
test edi, edi
je 0x41e6a0
mov dword [esp + 8], 4
mov eax, dword [ebp]
mov dword [esp + 4], eax
lea eax, [esp + 0x10d]
mov dword [esp], eax
call sub.msvcrt.dll_memcmp
test eax, eax
jne 0x41e442
mov edx, ebx
mov edi, dword [esp + 0x64]
mov ebx, esi
mov esi, dword [esp + 0x60]
jmp 0x41e31d
mov ecx, dword [esp + 0x40]
lea eax, [esp + 0x12c]
lea edx, [esp + 0x128]
mov dword [esp + 4], eax
mov dword [esp], edx
mov dword [esp + 8], ecx
call fcn.00451b50
mov ecx, dword [esp + 0x128]
test ecx, ecx
je 0x41e6b7
mov dword [esp + 0xc], 1
mov dword [esp + 4], 0
mov dword [esp + 8], 0
mov eax, dword [ebx + 0x10]
mov dword [esp], eax
call fcn.00419bb0
mov ebp, dword [esp + 0x128]
mov dword [esp + 0x7c], edi
mov edi, dword [esp + 0x40]
mov dword [esp + 0x78], esi
mov dword [esp + 0x38], eax
mov eax, dword [esp + 0x40]
mov dword [esp + 0x3c], edx
xor edx, edx
add dword [esp + 0x38], eax
adc dword [esp + 0x3c], edx
mov edx, dword [esp + 0x38]
mov ecx, dword [esp + 0x3c]
mov eax, dword [ebx + 0x10]
add edx, 0xffffffff
adc ecx, 0xffffffff
mov dword [esp + 0x50], edx
mov dword [esp + 0x54], ecx
lea esi, [esi]
mov dword [esp + 0xc], 1
mov dword [esp + 4], 0
mov dword [esp + 8], 0
mov dword [esp], eax
call fcn.00419bb0
cmp dword [esp + 0x3c], edx
jg 0x41e5fa
jge 0x41e5f0
mov edx, dword [esp + 0x128]
mov ecx, ebp
mov esi, dword [esp + 0x78]
mov edi, dword [esp + 0x7c]
sub ecx, edx
mov dword [esp + 4], edx
lea edx, [esp + 0x88]
mov dword [esp + 8], ecx
mov dword [esp], edx
mov dword [esp + 0x28], edx
mov dword [esp + 0x1c], 0
mov dword [esp + 0x18], 0
mov dword [esp + 0x14], 0
mov dword [esp + 0x10], 0
mov dword [esp + 0xc], 0
call fcn.004197b0
movzx ecx, byte [esp + 0x10d]
sub ebp, dword [esp + 0x128]
mov edx, dword [esp + 0x28]
mov byte [esp + 0x50], cl
cmp byte [esp + 0x50], 0x54
mov dword [esp + 0x40], ebp
jne 0x41e347
mov ecx, dword [esp + 0x58]
lea eax, [esp + 0x10d]
mov dword [esp + 4], eax
mov eax, ebx
mov dword [esp], ecx
mov ecx, dword [esp + 0x40]
call fcn.0041d010
jmp 0x41e261
cmp dword [esp + 0x38], eax
jbe 0x41e550
mov edx, dword [esp + 0x128]
mov ecx, ebp
sub ecx, edx
cmp edi, ecx
jbe 0x41e690
mov eax, dword [ebx + 0x10]
mov esi, dword [eax + 0x34]
test esi, esi
jne 0x41e690
mov dword [esp], eax
lea esi, [ebp + 1]
call fcn.0041ab90
cmp al, 0xff
mov byte [ebp], al
je 0x41e633
mov eax, dword [ebx + 0x10]
mov ebp, esi
jmp 0x41e520
mov dword [esp + 0xc], 1
mov dword [esp + 4], 0
mov dword [esp + 8], 0
mov eax, dword [ebx + 0x10]
mov dword [esp], eax
call fcn.00419bb0
cmp edx, dword [esp + 0x54]
jl 0x41e664
jg 0x41e629
cmp eax, dword [esp + 0x50]
jae 0x41e629
mov eax, esi
sub eax, dword [esp + 0x128]
cmp edi, eax
mov eax, dword [ebx + 0x10]
jbe 0x41e62c
mov edx, dword [eax + 0x34]
test edx, edx
jne 0x41e62c
mov dword [esp], eax
call fcn.0041ab90
test al, al
je 0x41e6dc
mov byte [ebp + 1], al
lea esi, [ebp + 2]
jmp 0x41e629
mov esi, dword [esp + 0x78]
mov edi, dword [esp + 0x7c]
jmp 0x41e563
mov ebx, esi
mov edi, dword [esp + 0x64]
mov esi, dword [esp + 0x60]
mov dword [esp + 0x60], 0
jmp 0x41e3ae
mov ecx, dword [esp + 0x40]
mov dword [esp + 8], str.Failed_to_alloc__d_bytes_n
mov dword [esp + 4], 0x10
mov dword [esp], ebx
mov dword [esp + 0xc], ecx
call fcn.00539bd0
jmp 0x41e261
mov eax, dword [ebx + 0x10]
mov dword [esp], eax
call fcn.0041ab90
jmp 0x41e687
mov dword [esp + 0xc], 1
mov dword [esp + 8], 0
mov dword [esp + 4], 0x591dd6
mov eax, dword [ebx + 0x474]
mov dword [esp], eax
call fcn.00539d70
test eax, eax
je 0x41de36
mov esi, dword [eax + 4]
mov dword [esp], esi
call sub.msvcrt.dll_strlen
cmp eax, 4
jne 0x41de36
movzx edx, byte [esi]
lea eax, [edx - 0x30]
cmp al, 9
ja 0x41e74e
mov eax, esi
nop
add eax, 1
movzx edx, byte [eax]
lea ecx, [edx - 0x30]
cmp cl, 9
jbe 0x41e740
test dl, dl
je 0x41dcf6
jmp 0x41de36
mov dword [esp + 0xc], 1
mov dword [esp + 8], 0
mov dword [esp + 4], 0x591dcd
mov eax, dword [ebx + 0x474]
mov dword [esp], eax
call fcn.00539d70
test eax, eax
je 0x41de60
mov esi, dword [eax + 4]
mov dword [esp], esi
call sub.msvcrt.dll_strlen
cmp eax, 4
jne 0x41de60
movzx edx, byte [esi]
lea eax, [edx - 0x30]
cmp al, 9
ja 0x41e7be
mov eax, esi
nop
add eax, 1
movzx edx, byte [eax]
lea ecx, [edx - 0x30]
cmp cl, 9
jbe 0x41e7b0
test dl, dl
je 0x41dc2e
jmp 0x41de60
mov dword [esp + 0xc], 1
mov dword [esp + 8], 0
mov dword [esp + 4], 0x591dea
mov eax, dword [ebx + 0x474]
mov dword [esp], eax
call fcn.00539d70
test eax, eax
je 0x41de36
mov esi, dword [eax + 4]
mov dword [esp], esi
call sub.msvcrt.dll_strlen
cmp eax, 4
jne 0x41de36
movzx edx, byte [esi]
lea eax, [edx - 0x30]
cmp al, 9
ja 0x41e82e
mov eax, esi
nop
add eax, 1
movzx edx, byte [eax]
lea ecx, [edx - 0x30]
cmp cl, 9
jbe 0x41e820
test dl, dl
je 0x41ddc8
jmp 0x41de36
cmp byte [esp + 0x5f], 4
ja 0x41dfbd
mov esi, dword [esp + 0x6c]
and esi, 0x80
test byte [esp + 0x6c], 0x40
mov dword [esp + 0x68], esi
je 0x41e8d6
mov esi, dword [ebx + 0x10]
mov dword [esp], esi
call fcn.0041ab90
mov dword [esp], esi
mov ebp, eax
call fcn.0041ab90
mov edx, ebp
and edx, 0x7f
shl edx, 7
mov dword [esp], esi
and eax, 0x7f
lea ebp, [edx + eax]
call fcn.0041ab90
shl ebp, 7
mov dword [esp], esi
and eax, 0x7f
add ebp, eax
call fcn.0041ab90
mov esi, ebp
shl esi, 7
and eax, 0x7f
add esi, eax
cmp byte [esp + 0x5f], 4
lea eax, [esi - 4]
cmove esi, eax
test esi, esi
js 0x41e8f3
mov eax, esi
sar eax, 0x1f
mov dword [esp + 4], esi
mov dword [esp + 8], eax
mov eax, dword [ebx + 0x10]
mov dword [esp], eax
call fcn.00419e60
mov eax, dword [esp + 0x34]
sub eax, esi
sub eax, 4
mov dword [esp + 0x34], eax
js 0x41e8fd
mov dword [esp + 0x4c], 0xa
mov dword [esp + 0x48], 0xa
mov dword [esp + 0x44], 1
jmp 0x41e057
mov eax, str.invalid_extended_header_length
jmp 0x41dfc2
mov eax, str.extended_header_too_long.
jmp 0x41dfc2