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

Disassembly:
push ebp
sub esp, 0xf0
lea ebp, [esp - 4]
mov eax, dword [0x10068510]
xor eax, ebp
mov dword [ebp + 0xf0], eax
push 0xc4
mov eax, 0x1005452d
call fcn.10037ea9
mov esi, ecx
mov dword [ebp - 0x38], esi
mov eax, dword [ebp + 0xfc]
xor ebx, ebx
mov dword [ebp - 0x1c], ebx
mov dword [ebp - 4], ebx
cmp dword [esi + 0x26c], ebx
jne 0x1002fdeb
cmp dword [esi + 0x268], ebx
jne 0x1002fdeb
push eax
call fcn.1002e275
mov dword [ebp - 0x3c], eax
mov eax, dword [esi + 0x44]
mov dword [ebp - 0x28], eax
lea edi, [esi + 0xa4]
cmp dword [edi], ebx
je 0x1002fd96
mov eax, dword [edi]
jmp 0x1002fd99
lea eax, [edi + 4]
xor ecx, ecx
push ecx
push ecx
push 0xffffffffffffffff
push eax
push ecx
push dword [ebp - 0x28]
call dword [sym.imp.KERNEL32.dll_MultiByteToWideChar]
mov ebx, eax
test ebx, ebx
je 0x1002fdeb
push ebx
push 0
call dword [sym.imp.OLEAUT32.dll_SysReAllocStringLen]
mov dword [ebp - 0x5c], eax
test eax, eax
je 0x1002fdeb
cmp dword [edi], 0
je 0x1002fdc9
mov eax, dword [edi]
jmp 0x1002fdcc
lea eax, [edi + 4]
push ebx
push dword [ebp - 0x5c]
push 0xffffffffffffffff
push eax
push 0
push dword [ebp - 0x28]
call dword [sym.imp.KERNEL32.dll_MultiByteToWideChar]
test eax, eax
jne 0x1002fe12
push dword [ebp - 0x5c]
call dword [sym.imp.OLEAUT32.dll_SysStringLen]
xor eax, eax
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp + 0xf0]
xor ecx, ebp
call fcn.10037e67
add ebp, 0xf4
leave
ret 8
lea ecx, [ebp + 0x10]
call fcn.1000499f
mov byte [ebp - 4], 1
lea ecx, [ebp + 0x1c]
call fcn.1000499f
mov byte [ebp - 4], 2
xor ebx, ebx
cmp dword [esi + 0x1d4], ebx
je 0x1002fe58
lea eax, [esi + 0x1cc]
cmp dword [eax], ebx
je 0x1002fe42
mov eax, dword [eax]
jmp 0x1002fe45
add eax, 4
lea ecx, [ebp + 0x1c]
push ecx
lea ecx, [ebp + 0x10]
push ecx
push eax
call fcn.10002f3c
add esp, 0xc
jmp 0x1002fe76
cmp dword [edi], ebx
je 0x1002fe60
mov eax, dword [edi]
jmp 0x1002fe63
lea eax, [edi + 4]
lea ecx, [ebp + 0x1c]
push ecx
lea ecx, [ebp + 0x10]
push ecx
push eax
mov ecx, 0x1006a478
call fcn.1002a256
mov dword [ebp - 0x40], ebx
cmp dword [esi + 0xdc], ebx
je 0x1002fee4
cmp dword [esi + 0xd4], ebx
je 0x1002fe91
mov eax, dword [esi + 0xd4]
jmp 0x1002fe97
lea eax, [esi + 0xd8]
xor ecx, ecx
push ecx
push ecx
push 0xffffffffffffffff
push eax
push ecx
push ecx
call dword [sym.imp.KERNEL32.dll_MultiByteToWideChar]
mov ebx, eax
test ebx, ebx
je 0x1002fee4
push ebx
push 0
call dword [sym.imp.OLEAUT32.dll_SysReAllocStringLen]
mov dword [ebp - 0x40], eax
test eax, eax
je 0x1002fee4
cmp dword [esi + 0xd4], 0
je 0x1002fecd
mov eax, dword [esi + 0xd4]
jmp 0x1002fed3
lea eax, [esi + 0xd8]
push ebx
push dword [ebp - 0x40]
push 0xffffffffffffffff
push eax
push 0
push 0
call dword [sym.imp.KERNEL32.dll_MultiByteToWideChar]
xor ebx, ebx
lea ecx, [ebp + 0x38]
call fcn.1000499f
mov byte [ebp - 4], 3
mov dword [ebp - 0x14], ebx
mov byte [ebp - 4], 4
cmp dword [esi + 0xe8], ebx
je 0x1002ff33
lea eax, [esi + 0xe0]
cmp dword [eax], ebx
je 0x1002ff0f
mov eax, dword [eax]
jmp 0x1002ff12
add eax, 4
push 0x2e
push eax
call fcn.10039430
pop ecx
pop ecx
cmp eax, ebx
je 0x100303b4
inc eax
push eax
lea ecx, [ebp - 0x14]
call fcn.1000528d
jmp 0x100303b4
lea ecx, [ebp + 0x2c]
call fcn.1000499f
mov byte [ebp - 4], 5
lea ecx, [ebp + 0x44]
call fcn.1000499f
mov byte [ebp - 4], 6
cmp dword [edi], ebx
je 0x1002ff53
mov eax, dword [edi]
jmp 0x1002ff56
lea eax, [edi + 4]
push 0x3f
push eax
call fcn.100378f0
pop ecx
pop ecx
test eax, eax
je 0x1002ff7c
push 0x3f
mov ecx, edi
call fcn.10027366
push eax
push ebx
lea eax, [ebp + 0x2c]
push eax
mov ecx, edi
call fcn.1002874a
jmp 0x1002ff90
cmp dword [edi], ebx
je 0x1002ff84
mov eax, dword [edi]
jmp 0x1002ff87
lea eax, [edi + 4]
push eax
lea ecx, [ebp + 0x2c]
call fcn.10002ef0
mov eax, dword [ebp + 0x2c]
cmp eax, ebx
jne 0x1002ff9a
lea eax, [ebp + 0x30]
push 0x2e
push eax
call fcn.10039430
pop ecx
pop ecx
mov ebx, eax
test ebx, ebx
je 0x1002ffc2
push 0x2f
push ebx
call fcn.100378f0
pop ecx
pop ecx
test eax, eax
jne 0x1002ffc2
inc ebx
push ebx
lea ecx, [ebp + 0x44]
call fcn.10002ef0
mov eax, dword [ebp + 0x44]
xor ebx, ebx
cmp eax, ebx
jne 0x1002ffce
lea eax, [ebp + 0x48]
push 0x1005892c
push eax
call fcn.10038300
pop ecx
pop ecx
test eax, eax
jne 0x1002ffff
cmp dword [esi + 0x1dc], ebx
jg 0x1002ffff
jl 0x1002fff5
cmp dword [esi + 0x1d8], 0x186a1
jae 0x1002ffff
mov dword [esi + 0x11c], 1
mov eax, dword [ebp + 0x44]
cmp eax, ebx
jne 0x10030009
lea eax, [ebp + 0x48]
push 0x10058918
push eax
call fcn.10038300
pop ecx
pop ecx
test eax, eax
je 0x10030035
mov eax, dword [ebp + 0x44]
cmp eax, ebx
jne 0x10030024
lea eax, [ebp + 0x48]
push 0x100588d8
push eax
call fcn.10038300
pop ecx
pop ecx
test eax, eax
jne 0x10030055
cmp dword [esi + 0x1dc], ebx
jg 0x10030055
jl 0x1003004b
cmp dword [esi + 0x1d8], 0x1e8480
jae 0x10030055
mov dword [esi + 0x124], 1
cmp dword [esi + 0xb8], ebx
je 0x1003007a
lea eax, [esi + 0xb0]
cmp dword [eax], ebx
je 0x1003006b
mov eax, dword [eax]
jmp 0x1003006e
add eax, 4
lea ecx, [ebp + 0x38]
push ecx
push eax
mov ecx, esi
call fcn.100290d1
mov ecx, dword [ebp + 0x44]
cmp ecx, ebx
jne 0x10030084
lea ecx, [ebp + 0x48]
mov eax, dword [ebp + 0x38]
cmp eax, ebx
jne 0x1003008e
lea eax, [ebp + 0x3c]
push ecx
push eax
call fcn.10038300
pop ecx
pop ecx
test eax, eax
jne 0x100300a5
mov eax, dword [ebp + 0x38]
cmp eax, ebx
jmp 0x1003038c
mov byte [ebp - 0x15], 0
cmp dword [ebp + 0x40], ebx
je 0x1003011c
mov eax, dword [ebp + 0x38]
cmp eax, ebx
jne 0x100300b8
lea eax, [ebp + 0x3c]
push 0x10059370
push eax
call fcn.10038300
pop ecx
pop ecx
test eax, eax
jne 0x100300e0
mov eax, dword [ebp + 0x38]
cmp eax, ebx
jne 0x100300d3
lea eax, [ebp + 0x3c]
push eax
lea ecx, [ebp - 0x14]
call fcn.1000528d
mov byte [ebp - 0x15], 1
mov eax, dword [ebp + 0x38]
cmp eax, ebx
jne 0x100300ea
lea eax, [ebp + 0x3c]
push 0x10058970
push eax
call fcn.10038300
pop ecx
pop ecx
test eax, eax
jne 0x10030112
mov eax, dword [ebp + 0x38]
cmp eax, ebx
jne 0x10030105
lea eax, [ebp + 0x3c]
push eax
lea ecx, [ebp - 0x14]
call fcn.1000528d
mov byte [ebp - 0x15], 1
cmp byte [ebp - 0x15], 0
jne 0x1003039a
cmp dword [edi], ebx
je 0x10030124
mov eax, dword [edi]
jmp 0x10030127
lea eax, [edi + 4]
push 0x2e
push eax
call fcn.10039430
pop ecx
pop ecx
mov dword [ebp - 0x34], eax
cmp dword [edi], ebx
je 0x1003013c
mov eax, dword [edi]
jmp 0x1003013f
lea eax, [edi + 4]
push 0x3f
push eax
call fcn.10039430
pop ecx
pop ecx
mov dword [ebp - 0x28], eax
xor ebx, ebx
cmp dword [edi], ebx
je 0x10030156
mov edi, dword [edi]
jmp 0x10030159
add edi, 4
push 0x1005661c
push edi
call fcn.100379f0
pop ecx
pop ecx
test eax, eax
je 0x10030179
push 0x2f
add eax, 3
push eax
call fcn.10039430
pop ecx
pop ecx
mov ebx, eax
xor edi, edi
cmp dword [ebp - 0x28], edi
jne 0x10030185
cmp dword [ebp - 0x34], ebx
jae 0x100301a9
cmp dword [ebp + 0x40], edi
je 0x1003019d
mov eax, dword [ebp + 0x38]
cmp eax, edi
jne 0x100302f7
lea eax, [ebp + 0x3c]
jmp 0x100302f7
cmp dword [ebp - 0x28], edi
jne 0x1003039a
cmp dword [ebp - 0x34], ebx
jbe 0x10030309
cmp ebx, edi
je 0x10030309
cmp dword [ebp + 0x4c], edi
je 0x10030309
mov eax, dword [ebp + 0x44]
cmp eax, edi
jne 0x100301ca
lea eax, [ebp + 0x48]
push 0x1005936c
push eax
call fcn.10038300
pop ecx
pop ecx
test eax, eax
je 0x10030309
mov eax, dword [ebp + 0x44]
cmp eax, edi
jne 0x100301e9
lea eax, [ebp + 0x48]
push 0x10059368
push eax
call fcn.10038300
pop ecx
pop ecx
test eax, eax
je 0x10030309
mov eax, dword [ebp + 0x44]
cmp eax, edi
jne 0x10030208
lea eax, [ebp + 0x48]
push 0x10059364
push eax
call fcn.10038300
pop ecx
pop ecx
test eax, eax
je 0x10030309
mov eax, dword [ebp + 0x44]
cmp eax, edi
jne 0x10030227
lea eax, [ebp + 0x48]
push str.ashx
push eax
call fcn.10038300
pop ecx
pop ecx
test eax, eax
je 0x10030309
mov eax, dword [ebp + 0x44]
cmp eax, edi
jne 0x10030246
lea eax, [ebp + 0x48]
push 0x10059358
push eax
call fcn.10038300
pop ecx
pop ecx
test eax, eax
je 0x10030309
mov eax, dword [ebp + 0x44]
cmp eax, edi
jne 0x10030265
lea eax, [ebp + 0x48]
push 0x10059354
push eax
call fcn.10038300
pop ecx
pop ecx
test eax, eax
je 0x10030309
mov eax, dword [ebp + 0x44]
cmp eax, edi
jne 0x10030284
lea eax, [ebp + 0x48]
push 0x10059350
push eax
call fcn.10038300
pop ecx
pop ecx
test eax, eax
je 0x10030309
mov byte [ebp - 0x15], 1
cmp dword [ebp + 0x40], edi
je 0x100302ed
mov eax, dword [ebp + 0x38]
cmp eax, edi
jne 0x100302a8
lea eax, [ebp + 0x3c]
push str.html
push eax
call fcn.10038300
pop ecx
pop ecx
test eax, eax
je 0x100302d4
mov eax, dword [ebp + 0x38]
cmp eax, edi
jne 0x100302c3
lea eax, [ebp + 0x3c]
push 0x1005934c
push eax
call fcn.10038300
pop ecx
pop ecx
test eax, eax
jne 0x100302ed
mov eax, dword [ebp + 0x38]
cmp eax, edi
jne 0x100302de
lea eax, [ebp + 0x3c]
push eax
lea ecx, [ebp - 0x14]
call fcn.1000528d
mov byte [ebp - 0x15], 0
jmp 0x10030300
mov eax, dword [ebp + 0x44]
cmp eax, edi
jne 0x100302f7
lea eax, [ebp + 0x48]
push eax
lea ecx, [ebp - 0x14]
call fcn.1000528d
mov byte [ebp - 0x15], 1
jmp 0x1003039a
cmp dword [ebp + 0x40], edi
je 0x1003039a
cmp dword [esi + 0xb0], edi
je 0x10030322
mov eax, dword [esi + 0xb0]
jmp 0x10030328
lea eax, [esi + 0xb4]
push str.application_octet_stream
push eax
call fcn.10038300
pop ecx
pop ecx
test eax, eax
je 0x1003039a
cmp dword [esi + 0xb0], edi
je 0x10030349
mov eax, dword [esi + 0xb0]
jmp 0x1003034f
lea eax, [esi + 0xb4]
push str.binary_octet_stream
push eax
call fcn.10038300
pop ecx
pop ecx
test eax, eax
je 0x1003039a
cmp dword [esi + 0xb0], edi
je 0x10030370
mov eax, dword [esi + 0xb0]
jmp 0x10030376
lea eax, [esi + 0xb4]
push str.text_plain
push eax
call fcn.10038300
pop ecx
pop ecx
test eax, eax
je 0x1003039a
mov eax, dword [ebp + 0x38]
cmp eax, edi
jne 0x10030391
lea eax, [ebp + 0x3c]
push eax
lea ecx, [ebp - 0x14]
call fcn.1000528d
mov byte [ebp - 4], 5
lea ecx, [ebp + 0x44]
call fcn.10002c1a
mov byte [ebp - 4], 4
lea ecx, [ebp + 0x2c]
call fcn.10002c1a
xor ebx, ebx
mov dword [ebp - 0x94], ebx
mov byte [ebp - 4], 7
cmp dword [esi + 0xc4], ebx
je 0x100303e3
lea eax, [esi + 0xbc]
cmp dword [eax], ebx
je 0x100303d4
mov eax, dword [eax]
jmp 0x100303d7
add eax, 4
push eax
lea ecx, [ebp - 0x94]
call fcn.1000528d
mov dword [ebp - 0x98], ebx
mov byte [ebp - 4], 8
cmp dword [ebp + 0x18], ebx
je 0x10030408
mov eax, dword [ebp + 0x10]
cmp eax, ebx
jne 0x100303fc
lea eax, [ebp + 0x14]
push eax
lea ecx, [ebp - 0x98]
call fcn.1000528d
mov dword [ebp - 0x88], ebx
mov byte [ebp - 4], 9
cmp dword [ebp + 0x24], ebx
je 0x1003042d
mov eax, dword [ebp + 0x1c]
cmp eax, ebx
jne 0x10030421
lea eax, [ebp + 0x20]
push eax
lea ecx, [ebp - 0x88]
call fcn.1000528d
mov dword [ebp - 0x90], ebx
mov byte [ebp - 4], 0xa
cmp dword [esi + 0xe8], ebx
je 0x1003045c
lea eax, [esi + 0xe0]
cmp dword [eax], ebx
je 0x1003044d
mov eax, dword [eax]
jmp 0x10030450
add eax, 4
push eax
lea ecx, [ebp - 0x90]
call fcn.1000528d
mov dword [ebp - 0xa4], ebx
mov byte [ebp - 4], 0xb
cmp dword [esi + 0x260], ebx
je 0x1003048b
lea eax, [esi + 0x258]
cmp dword [eax], ebx
je 0x1003047c
mov eax, dword [eax]
jmp 0x1003047f
add eax, 4
push eax
lea ecx, [ebp - 0xa4]
call fcn.1000528d
mov dword [ebp - 0x70], ebx
mov byte [ebp - 4], 0xc
cmp dword [esi + 0xb8], ebx
je 0x100304b4
lea eax, [esi + 0xb0]
cmp dword [eax], ebx
je 0x100304a8
mov eax, dword [eax]
jmp 0x100304ab
add eax, 4
push eax
lea ecx, [ebp - 0x70]
call fcn.1000528d
mov dword [ebp - 0x78], ebx
mov eax, dword [esi + 0x30]
cmp eax, ebx
je 0x100304f4
cmp dword [esi + 0x34], ebx
je 0x100304f4
push ebx
push ebx
push 0xffffffffffffffff
push eax
push ebx
push ebx
call dword [sym.imp.KERNEL32.dll_MultiByteToWideChar]
mov edi, eax
cmp edi, ebx
je 0x100304f4
push edi
push ebx
call dword [sym.imp.OLEAUT32.dll_SysReAllocStringLen]
mov dword [ebp - 0x78], eax
cmp eax, ebx
je 0x100304f4
push edi
push eax
push 0xffffffffffffffff
push dword [esi + 0x30]
push ebx
push ebx
call dword [sym.imp.KERNEL32.dll_MultiByteToWideChar]
mov byte [ebp - 4], 0xd
push dword [ebp - 0x14]
call dword [sym.imp.OLEAUT32.dll_VariantInit]
test eax, eax
je 0x10030582
cmp dword [ebp - 0x40], ebx
je 0x10030582
push 0x10056528
push dword [ebp - 0x14]
call fcn.10038ffd
pop ecx
pop ecx
test eax, eax
jne 0x10030582
cmp dword [esi + 0x1b4], ebx
je 0x10030582
push 4
call fcn.10038d8f
pop ecx
cmp eax, ebx
je 0x10030538
mov dword [eax], ebx
mov dword [ebp - 0x20], eax
jmp 0x1003053b
mov dword [ebp - 0x20], ebx
push 4
call fcn.10038d8f
pop ecx
cmp eax, ebx
je 0x1003054d
mov dword [eax], ebx
mov edi, eax
jmp 0x1003054f
xor edi, edi
cmp dword [ebp - 0x20], ebx
je 0x10030582
cmp edi, ebx
je 0x10030582
push dword [ebp - 0x5c]
mov ecx, dword [ebp - 0x20]
call fcn.10001f52
push dword [ebp - 0x40]
mov ecx, edi
call fcn.10001f52
push edi
push dword [ebp - 0x20]
push 0x46a
push dword [esi + 0x1b4]
call dword [sym.imp.USER32.dll_PostMessageA]
mov dword [ebp - 4], 0xc
jmp 0x1003059b
mov byte [ebp - 0x21], 0
xor ebx, ebx
cmp dword [ebp - 0x40], ebx
je 0x100305de
push 0x2e
push dword [ebp - 0x40]
call fcn.100394a0
pop ecx
pop ecx
cmp eax, ebx
je 0x100305c7
push str..swf
push eax
call fcn.10038ffd
pop ecx
pop ecx
test eax, eax
je 0x100305da
push str..swf_
push dword [ebp - 0x40]
call fcn.10038894
pop ecx
pop ecx
test eax, eax
je 0x100305de
mov byte [ebp - 0x21], 1
push dword [ebp - 0x14]
call dword [sym.imp.OLEAUT32.dll_VariantInit]
test eax, eax
je 0x10030688
push 0x10055da8
push dword [ebp - 0x14]
call fcn.10038ffd
pop ecx
pop ecx
test eax, eax
jne 0x10030688
cmp byte [ebp - 0x21], al
jne 0x10030688
cmp dword [esi + 0xf4], ebx
jg 0x10030688
cmp dword [esi + 0xe8], ebx
je 0x10030648
cmp byte [esi + 0x264], al
jne 0x10030648
cmp dword [esi + 0xb8], ebx
je 0x10030648
lea eax, [esi + 0xb0]
cmp dword [eax], ebx
je 0x10030639
mov eax, dword [eax]
jmp 0x1003063c
add eax, 4
lea ecx, [ebp + 0x38]
push ecx
push eax
mov ecx, esi
call fcn.100290d1
cmp dword [ebp + 0x40], ebx
jle 0x1003066a
mov eax, dword [ebp + 0x38]
cmp eax, ebx
jne 0x10030657
lea eax, [ebp + 0x3c]
push 0x10055da4
push eax
call fcn.10038300
pop ecx
pop ecx
test eax, eax
je 0x10030688
jmp 0x1003067b
cmp dword [esi + 0xb8], ebx
je 0x10030688
cmp byte [esi + 0x264], 0
jne 0x10030688
push 0x10058f4c
lea ecx, [ebp - 0x14]
call fcn.10001f52
cmp dword [esi + 0x1b4], ebx
je 0x100307a3
push 0x30
call fcn.10038d8f
pop ecx
cmp eax, ebx
je 0x100306ab
mov ecx, eax
call fcn.10015a90
mov edi, eax
jmp 0x100306ad
xor edi, edi
cmp edi, ebx
je 0x100307a3
push dword [ebp - 0x5c]
mov ecx, edi
call fcn.10001f52
cmp dword [ebp - 0x40], ebx
je 0x100306cf
push dword [ebp - 0x40]
lea ecx, [edi + 4]
call fcn.10001f52
cmp dword [esi + 0xc4], ebx
je 0x100306e6
lea eax, [ebp - 0x94]
push eax
lea ecx, [edi + 8]
call fcn.100023b7
cmp dword [ebp - 0x78], ebx
je 0x100306f6
push dword [ebp - 0x78]
lea ecx, [edi + 0xc]
call fcn.10001f52
cmp dword [ebp + 0x18], ebx
je 0x1003070a
lea eax, [ebp - 0x98]
push eax
lea ecx, [edi + 0x10]
call fcn.100023b7
cmp dword [ebp + 0x24], ebx
je 0x1003071e
lea eax, [ebp - 0x88]
push eax
lea ecx, [edi + 0x14]
call fcn.100023b7
cmp dword [esi + 0xe8], ebx
je 0x10030735
lea eax, [ebp - 0x90]
push eax
lea ecx, [edi + 0x18]
call fcn.100023b7
cmp dword [esi + 0x260], ebx
je 0x1003074c
lea eax, [ebp - 0xa4]
push eax
lea ecx, [edi + 0x1c]
call fcn.100023b7
push dword [ebp - 0x70]
call dword [sym.imp.OLEAUT32.dll_VariantInit]
test eax, eax
je 0x10030765
lea eax, [ebp - 0x70]
push eax
lea ecx, [edi + 0x20]
call fcn.100023b7
push dword [ebp - 0x14]
call dword [sym.imp.OLEAUT32.dll_VariantInit]
test eax, eax
je 0x1003077e
lea eax, [ebp - 0x14]
push eax
lea ecx, [edi + 0x24]
call fcn.100023b7
mov eax, dword [esi + 0x1d8]
mov dword [edi + 0x28], eax
mov eax, dword [esi + 0x1dc]
mov dword [edi + 0x2c], eax
push edi
push ebx
push 0x469
push dword [esi + 0x1b4]
call dword [sym.imp.USER32.dll_PostMessageA]
cmp dword [esi + 0xb8], ebx
je 0x100308cf
cmp dword [esi + 0xa4], ebx
je 0x100307bf
mov eax, dword [esi + 0xa4]
jmp 0x100307c5
lea eax, [esi + 0xa8]
push str.youtube.com_videoplayback_
push eax
call fcn.100379f0
pop ecx
pop ecx
test eax, eax
jne 0x10030801
cmp dword [esi + 0xa4], ebx
je 0x100307e6
mov eax, dword [esi + 0xa4]
jmp 0x100307ec
lea eax, [esi + 0xa8]
push str.googlevideo.com_videoplayback_
push eax
call fcn.100379f0
pop ecx
pop ecx
test eax, eax
je 0x100308cf
cmp dword [esi + 0xb0], ebx
je 0x10030811
mov eax, dword [esi + 0xb0]
jmp 0x10030817
lea eax, [esi + 0xb4]
push 0x18
push str.application_octet_stream
push eax
call fcn.10038427
add esp, 0xc
test eax, eax
je 0x10030855
cmp dword [esi + 0xb0], ebx
je 0x1003083b
mov eax, dword [esi + 0xb0]
jmp 0x10030841
lea eax, [esi + 0xb4]
push 0xa
push str.text_plain
push eax
call fcn.10038427
add esp, 0xc
test eax, eax
jne 0x100308cf
cmp dword [esi + 0xa4], ebx
je 0x10030865
mov eax, dword [esi + 0xa4]
jmp 0x1003086b
lea eax, [esi + 0xa8]
push 0x100592fc
push eax
call fcn.100379f0
pop ecx
pop ecx
cmp eax, ebx
jne 0x100308a3
cmp dword [esi + 0xa4], ebx
je 0x1003088c
mov eax, dword [esi + 0xa4]
jmp 0x10030892
lea eax, [esi + 0xa8]
push str._itag
push eax
call fcn.100379f0
pop ecx
pop ecx
cmp eax, ebx
je 0x100308cf
add eax, 6
lea ecx, [ebp - 0x2c]
push ecx
push 0x10056524
push eax
call fcn.1003af3a
add esp, 0xc
xor edi, edi
inc edi
cmp eax, edi
jne 0x100308d2
lea eax, [ebp - 0x14]
push eax
push dword [ebp - 0x2c]
call fcn.100057e2
pop ecx
pop ecx
jmp 0x100308d2
xor edi, edi
inc edi
push dword [ebp - 0x14]
call dword [sym.imp.OLEAUT32.dll_VariantInit]
test eax, eax
je 0x10030cc8
push 0x10055da8
push dword [ebp - 0x14]
call fcn.10038ffd
pop ecx
pop ecx
test eax, eax
jne 0x10030cc8
mov dword [esi + 0xf8], edi
cmp dword [ebp - 0x3c], edi
jne 0x1003094c
mov dword [ebp - 0x28], ebx
lea eax, [esi + 0xa4]
cmp dword [eax], ebx
je 0x10030916
mov eax, dword [eax]
jmp 0x10030919
add eax, 4
lea ecx, [ebp - 0x28]
push ecx
lea ecx, [ebp - 0x2c]
push ecx
push 0x10055c6c
push eax
call fcn.100204f5
add esp, 0x10
test eax, eax
jne 0x10030945
cmp dword [ebp - 0x2c], ebx
je 0x1003094c
cmp byte [ebp - 0x21], al
jne 0x10030945
cmp dword [esi + 0xf4], ebx
jle 0x1003094c
mov dword [ebp - 0x3c], 2
cmp dword [0x10069b44], ebx
je 0x10030cc8
cmp dword [ebp - 0x3c], edi
je 0x10030cc8
mov byte [ebp - 4], 0xf
mov dword [ebp - 0x64], ebx
mov byte [ebp - 4], 0x10
lea ecx, [ebp + 0x2c]
call fcn.1000499f
mov byte [ebp - 4], 0x11
push str.__frag_
push dword [ebp - 0x5c]
call fcn.10038894
pop ecx
pop ecx
test eax, eax
je 0x10030a27
push ebx
lea eax, [ebp - 0x20]
push eax
push 0x473
push dword [esi + 0x1b4]
call dword [sym.imp.USER32.dll_SendMessageA]
test eax, eax
je 0x10030a27
mov eax, dword [ebp - 0x20]
cmp dword [eax + 4], ebx
je 0x100309b6
mov ecx, dword [eax + 4]
jmp 0x100309b9
lea ecx, [eax + 8]
lea eax, [esi + 0xa4]
cmp dword [eax], ebx
je 0x100309c7
mov eax, dword [eax]
jmp 0x100309ca
add eax, 4
push ecx
push eax
call fcn.100379f0
pop ecx
pop ecx
test eax, eax
je 0x10030a27
mov eax, dword [ebp - 0x20]
mov dword [eax + 0x1c], ebx
mov eax, dword [ebp - 0x20]
push dword [eax]
lea ecx, [ebp - 0x64]
call fcn.10001f52
mov eax, dword [ebp - 0x20]
cmp dword [eax + 0x10], ebx
je 0x100309f7
mov eax, dword [eax + 0x10]
jmp 0x100309fa
add eax, 0x14
push eax
lea ecx, [ebp + 0x2c]
call fcn.10002ef0
push dword [ebp - 0x64]
lea ecx, [esi + 0x48]
call fcn.10001f52
push 0x10058f4c
lea ecx, [ebp - 0x70]
call fcn.10001f52
mov dword [esi + 0x1d8], ebx
mov dword [esi + 0x1dc], ebx
mov dword [0x1006a460], edi
cmp dword [ebp + 0x100], ebx
je 0x10030a3b
mov dword [esi + 0x268], edi
push dword [ebp - 0x70]
call dword [sym.imp.OLEAUT32.dll_VariantInit]
test eax, eax
je 0x10030a50
lea eax, [ebp - 0x70]
mov dword [ebp - 0x28], eax
jmp 0x10030a60
mov dword [ebp - 0x6c], ebx
lea eax, [ebp - 0x6c]
mov dword [ebp - 0x28], eax
mov byte [ebp - 4], 0x12
mov dword [ebp - 0x1c], edi
mov eax, dword [esi + 0x260]
cmp eax, ebx
je 0x10030a75
lea eax, [ebp - 0xa4]
mov dword [ebp - 0x34], eax
jmp 0x10030a8f
mov dword [ebp - 0xa8], ebx
lea eax, [ebp - 0xa8]
mov dword [ebp - 0x34], eax
mov dword [ebp - 4], 0x13
or dword [ebp - 0x1c], 2
mov eax, dword [esi + 0xe8]
cmp eax, ebx
je 0x10030aa1
lea edi, [ebp - 0x90]
jmp 0x10030ab8
mov dword [ebp - 0xb8], ebx
lea edi, [ebp - 0xb8]
mov dword [ebp - 4], 0x14
or dword [ebp - 0x1c], 4
cmp dword [ebp + 0x24], ebx
je 0x10030ac8
lea eax, [ebp - 0x88]
mov dword [ebp - 0x44], eax
jmp 0x10030ae2
mov dword [ebp - 0xc4], ebx
lea eax, [ebp - 0xc4]
mov dword [ebp - 0x44], eax
mov dword [ebp - 4], 0x15
or dword [ebp - 0x1c], 8
cmp dword [ebp + 0x18], ebx
je 0x10030af2
lea eax, [ebp - 0x98]
mov dword [ebp - 0x50], eax
jmp 0x10030b0c
mov dword [ebp - 0xc0], ebx
lea eax, [ebp - 0xc0]
mov dword [ebp - 0x50], eax
mov dword [ebp - 4], 0x16
or dword [ebp - 0x1c], 0x10
mov eax, dword [esi + 0xc4]
cmp eax, ebx
je 0x10030b21
lea eax, [ebp - 0x94]
mov dword [ebp - 0x60], eax
jmp 0x10030b3b
mov dword [ebp - 0xbc], ebx
lea eax, [ebp - 0xbc]
mov dword [ebp - 0x60], eax
mov dword [ebp - 4], 0x17
or dword [ebp - 0x1c], 0x20
mov ebx, dword [ebp - 0x64]
push ebx
call dword [sym.imp.OLEAUT32.dll_VariantInit]
test eax, eax
je 0x10030b4e
mov dword [ebp - 0x20], ebx
jmp 0x10030b54
mov eax, dword [ebp - 0x5c]
mov dword [ebp - 0x20], eax
mov ebx, dword [ebp + 0x2c]
test ebx, ebx
jne 0x10030b5e
lea ebx, [ebp + 0x30]
mov eax, dword [ebp - 0x28]
mov eax, dword [eax]
mov dword [ebp - 0x2c], eax
mov eax, dword [ebp - 0x34]
mov eax, dword [eax]
mov dword [ebp - 0x74], eax
mov edi, dword [edi]
mov eax, dword [ebp - 0x44]
mov edx, dword [eax]
mov eax, dword [ebp - 0x50]
mov ecx, dword [eax]
mov eax, dword [ebp - 0x60]
mov eax, dword [eax]
push ebx
push dword [esi + 0x38]
push dword [esi + 0x40]
push dword [esi + 0x3c]
push dword [esi + 0x48]
push dword [esi + 0x2c]
push dword [esi + 0x1dc]
push dword [esi + 0x1d8]
push dword [esi + 0xa0]
push dword [esi + 0x9c]
push dword [esi + 0x98]
push dword [esi + 0x94]
push dword [esi + 0x90]
push dword [esi + 0x44]
push dword [ebp - 0x14]
push dword [ebp - 0x2c]
push dword [ebp - 0x74]
push edi
push edx
push ecx
push dword [ebp - 0x78]
push eax
push dword [ebp - 0x40]
push dword [ebp - 0x20]
push dword [esi + 0x1b4]
push dword [esi + 0x1c0]
push dword [esi + 0x1a4]
push dword [esi + 0x78]
call fcn.1002d6a5
add esp, 0x70
mov dword [esi + 0x1b0], eax
mov dword [ebp - 4], 0x16
test byte [ebp - 0x1c], 0x20
je 0x10030c16
and dword [ebp - 0x1c], 0xffffffdf
push dword [ebp - 0xbc]
mov edi, dword [sym.imp.OLEAUT32.dll_SysStringLen]
call edi
jmp 0x10030c1c
mov edi, dword [sym.imp.OLEAUT32.dll_SysStringLen]
mov dword [ebp - 4], 0x15
test byte [ebp - 0x1c], 0x10
je 0x10030c35
and dword [ebp - 0x1c], 0xffffffef
push dword [ebp - 0xc0]
call edi
mov dword [ebp - 4], 0x14
test byte [ebp - 0x1c], 8
je 0x10030c4e
and dword [ebp - 0x1c], 0xfffffff7
push dword [ebp - 0xc4]
call edi
mov dword [ebp - 4], 0x13
test byte [ebp - 0x1c], 4
je 0x10030c67
and dword [ebp - 0x1c], 0xfffffffb
push dword [ebp - 0xb8]
call edi
mov dword [ebp - 4], 0x12
test byte [ebp - 0x1c], 2
je 0x10030c80
and dword [ebp - 0x1c], 0xfffffffd
push dword [ebp - 0xa8]
call edi
mov dword [ebp - 4], 0x11
test byte [ebp - 0x1c], 1
je 0x10030c96
and dword [ebp - 0x1c], 0xfffffffe
push dword [ebp - 0x6c]
call edi
mov byte [ebp - 4], 0x10
lea ecx, [ebp + 0x2c]
call fcn.10002c1a
mov byte [ebp - 4], 0xf
push dword [ebp - 0x64]
call edi
mov dword [ebp - 4], 0xc
xor ebx, ebx
jmp 0x10030cce
mov edi, dword [sym.imp.OLEAUT32.dll_SysStringLen]
mov dword [ebp - 0x80], ebx
mov byte [ebp - 4], 0x19
mov dword [ebp - 0x9c], ebx
mov byte [ebp - 0x66], 0
mov byte [ebp - 0x2d], 0
mov byte [ebp - 4], 0x1a
mov dword [ebp - 0x54], ebx
push dword [ebp - 0x14]
call dword [sym.imp.OLEAUT32.dll_VariantInit]
test eax, eax
je 0x10030fbb
cmp dword [esi + 0xf8], 0
jne 0x10030fbb
cmp byte [ebp - 0x21], 0
jne 0x10030e15
mov eax, dword [esi + 0xf4]
xor ebx, ebx
cmp eax, ebx
jg 0x10030e15
mov eax, dword [esi + 0x260]
cmp eax, ebx
je 0x10030e21
cmp dword [esi + 0x258], ebx
je 0x10030d40
mov eax, dword [esi + 0x258]
jmp 0x10030d46
lea eax, [esi + 0x25c]
push 9
push str.NSPlayer_
push eax
call fcn.100394cc
add esp, 0xc
test eax, eax
je 0x10030d88
cmp dword [esi + 0x258], ebx
je 0x10030d6a
mov eax, dword [esi + 0x258]
jmp 0x10030d70
lea eax, [esi + 0x25c]
push 0x15
push str.Windows_Media_Player_
push eax
call fcn.100394cc
add esp, 0xc
test eax, eax
jne 0x10030e21
mov dword [ebp - 0x54], 1
cmp dword [esi + 0xa4], ebx
je 0x10030d9f
mov eax, dword [esi + 0xa4]
jmp 0x10030da5
lea eax, [esi + 0xa8]
push str..asx
push eax
call fcn.100379f0
pop ecx
pop ecx
test eax, eax
jne 0x10030ea2
cmp dword [esi + 0xa4], ebx
je 0x10030dca
mov eax, dword [esi + 0xa4]
jmp 0x10030dd0
lea eax, [esi + 0xa8]
push str..asf
push eax
call fcn.100379f0
pop ecx
pop ecx
test eax, eax
jne 0x10030ea2
cmp dword [esi + 0xa4], ebx
je 0x10030df5
mov eax, dword [esi + 0xa4]
jmp 0x10030dfb
lea eax, [esi + 0xa8]
push str..wvx
push eax
call fcn.100379f0
pop ecx
pop ecx
test eax, eax
je 0x10030f45
jmp 0x10030ea2
mov dword [ebp - 0x54], 1
jmp 0x10030f45
mov ebx, 0x100592b0
push ebx
push dword [ebp - 0x14]
call fcn.10038ffd
pop ecx
pop ecx
test eax, eax
je 0x10030e5b
push 0x10056570
push dword [ebp - 0x14]
call fcn.10038ffd
pop ecx
pop ecx
test eax, eax
je 0x10030e5b
push 0x10056568
push dword [ebp - 0x14]
call fcn.10038ffd
pop ecx
pop ecx
test eax, eax
jne 0x10030eb1
xor eax, eax
inc eax
mov dword [ebp - 0x54], eax
mov dword [esi + 0x104], eax
push ebx
push dword [ebp - 0x14]
call fcn.10038ffd
pop ecx
pop ecx
test eax, eax
jne 0x10030f45
mov ecx, dword [esi + 0x1d8]
mov eax, dword [esi + 0x1dc]
mov edx, ecx
or edx, eax
je 0x10030ea2
test eax, eax
jg 0x10030f45
jl 0x10030ea2
cmp ecx, 0x800
jae 0x10030f45
mov dword [esi + 0x100], 1
jmp 0x10030f45
push 0x10055c5c
push dword [ebp - 0x14]
call fcn.10038ffd
pop ecx
pop ecx
test eax, eax
je 0x10030eea
push 0x1005636c
push dword [ebp - 0x14]
call fcn.10038ffd
pop ecx
pop ecx
test eax, eax
je 0x10030eea
push 0x10055c50
push dword [ebp - 0x14]
call fcn.10038ffd
pop ecx
pop ecx
test eax, eax
jne 0x10030f45
cmp dword [esi + 0xa4], 0
je 0x10030efb
mov eax, dword [esi + 0xa4]
jmp 0x10030f01
lea eax, [esi + 0xa8]
push str.youtube.com_videoplayback_
push eax
call fcn.100379f0
pop ecx
pop ecx
test eax, eax
jne 0x10030f39
cmp dword [esi + 0xa4], eax
je 0x10030f22
mov eax, dword [esi + 0xa4]
jmp 0x10030f28
lea eax, [esi + 0xa8]
push str.googlevideo.com_videoplayback_
push eax
call fcn.100379f0
pop ecx
pop ecx
test eax, eax
je 0x10030f45
xor eax, eax
inc eax
mov dword [ebp - 0x54], eax
mov dword [esi + 0x1a0], eax
xor ebx, ebx
cmp dword [esi + 0x19c], ebx
je 0x10030f60
cmp dword [ebp - 0x54], ebx
jne 0x10030f60
xor eax, eax
inc eax
mov dword [esi + 0x108], eax
mov dword [ebp - 0x54], eax
cmp dword [esi + 0x10c], ebx
je 0x10030f6f
mov dword [ebp - 0x54], 1
push 0x10055c5c
push dword [ebp - 0x14]
call fcn.10038ffd
pop ecx
pop ecx
test eax, eax
je 0x10030fa8
push 0x100592a8
push dword [ebp - 0x14]
call fcn.10038ffd
pop ecx
pop ecx
test eax, eax
je 0x10030fa8
push 0x1005636c
push dword [ebp - 0x14]
call fcn.10038ffd
pop ecx
pop ecx
test eax, eax
jne 0x10030fbb
cmp dword [ebp - 0x54], ebx
jne 0x10030fbb
mov eax, dword [esi + 0xe8]
cmp eax, ebx
jne 0x10030fbb
mov byte [ebp - 0x2d], 1
xor ebx, ebx
cmp dword [esi + 0x10c], ebx
je 0x10030ffe
cmp dword [ebp - 0x54], ebx
je 0x10030ffe
mov ecx, dword [esi + 0x1d8]
mov eax, dword [esi + 0x1dc]
mov edx, ecx
or edx, eax
je 0x10030ffe
cmp eax, ebx
jg 0x10030ffe
jl 0x10030fea
cmp ecx, 0x2800
jae 0x10030ffe
mov dword [ebp - 0x3c], 2
mov dword [ebp - 0x54], ebx
mov dword [esi + 0x120], 1
cmp dword [ebp - 0x3c], 1
je 0x1003100e
cmp byte [ebp - 0x2d], 0
je 0x100313bd
cmp dword [ebp - 0x54], ebx
jne 0x10031387
push dword [ebp - 0x14]
call fcn.1001d205
pop ecx
mov dword [ebp - 0x6c], eax
cmp dword [ebp - 0x14], ebx
je 0x10031041
push 0x100592a0
push dword [ebp - 0x14]
call fcn.10038ffd
pop ecx
pop ecx
neg eax
sbb eax, eax
inc eax
mov dword [ebp - 0x28], eax
jmp 0x10031044
mov dword [ebp - 0x28], ebx
lea ecx, [ebp - 0x34]
call fcn.10005ad2
mov byte [ebp - 4], 0x1b
mov dword [ebp - 0x84], ebx
mov dword [ebp - 0x74], ebx
mov dword [ebp - 0xa0], ebx
mov dword [ebp - 0x4c], ebx
mov byte [ebp - 4], 0x1c
mov dword [ebp - 0xb4], 1
cmp dword [esi + 0x1a4], ebx
je 0x10031372
mov byte [ebp - 4], 0x1d
lea eax, [ebp - 0xa0]
push eax
lea eax, [ebp - 0x84]
push eax
lea eax, [ebp - 0x74]
push eax
lea eax, [ebp - 0x34]
push eax
lea eax, [ebp - 0x4c]
push eax
push dword [esi + 0x1a4]
push dword [esi + 0x78]
mov ecx, 0x100698a4
call fcn.10002429
mov dword [ebp - 0xb4], eax
mov dword [ebp - 4], 0x1c
jmp 0x100310d2
xor ebx, ebx
cmp dword [ebp - 0xb4], ebx
jne 0x10031370
cmp dword [ebp - 0x34], ebx
je 0x10031370
cmp dword [ebp - 0xa0], ebx
je 0x10031370
cmp dword [ebp - 0x74], 1
jne 0x10031370
lea ecx, [ebp - 0x44]
call fcn.10005ad2
mov byte [ebp - 4], 0x1f
lea eax, [ebp - 0x44]
push eax
push dword [ebp - 0x34]
call fcn.10001eee
mov dword [ebp - 0xb4], eax
cmp dword [ebp - 0x44], ebx
je 0x10031364
cmp eax, ebx
jne 0x10031364
lea ecx, [ebp - 0x50]
call fcn.10005ad2
mov byte [ebp - 4], 0x20
mov eax, dword [ebp - 0x44]
mov ecx, dword [eax]
lea edx, [ebp - 0x50]
push edx
push eax
call dword [ecx + 0x48]
cmp eax, ebx
jl 0x10031358
cmp dword [ebp - 0x50], ebx
je 0x10031358
lea ecx, [ebp - 0x60]
call fcn.10005ad2
mov byte [ebp - 4], 0x21
lea eax, [ebp - 0x60]
push eax
push dword [ebp - 0x50]
call fcn.1001debf
cmp eax, ebx
jl 0x1003134c
cmp dword [ebp - 0x60], ebx
je 0x1003134c
mov eax, dword [ebp - 0x5c]
mov dword [ebp - 0x8c], eax
push dword [esi + 0x48]
call dword [sym.imp.OLEAUT32.dll_VariantInit]
test eax, eax
je 0x100311b2
mov eax, dword [esi + 0x48]
push dword [ebp - 0x5c]
push eax
call fcn.10038eb5
pop ecx
pop ecx
test eax, eax
je 0x100311b2
mov eax, dword [esi + 0x48]
mov dword [ebp - 0x8c], eax
lea eax, [ebp - 0x80]
push eax
push dword [ebp - 0x8c]
push dword [ebp - 0x60]
call fcn.1002f8e5
add esp, 0xc
mov dword [ebp - 0x9c], eax
cmp dword [ebp - 0x6c], ebx
jne 0x100311db
cmp dword [ebp - 0x28], ebx
je 0x1003134c
cmp eax, ebx
jne 0x1003132e
push dword [ebp - 0x4c]
call dword [sym.imp.OLEAUT32.dll_VariantInit]
test eax, eax
je 0x10031324
push dword [ebp - 0x8c]
push dword [ebp - 0x4c]
call fcn.10038eb5
pop ecx
pop ecx
test eax, eax
jne 0x10031217
mov dword [ebp - 0x9c], 1
jmp 0x1003132e
mov ebx, 0x10059298
push ebx
push dword [ebp - 0x4c]
call fcn.1003945d
pop ecx
pop ecx
test eax, eax
jne 0x10031241
push ebx
push dword [ebp - 0x8c]
call fcn.1003945d
pop ecx
pop ecx
test eax, eax
je 0x10031324
push dword [ebp - 0x4c]
call dword [sym.imp.OLEAUT32.dll_VariantInit]
imul eax, eax, 3
xor ecx, ecx
push 2
pop edx
mul edx
seto cl
neg ecx
or ecx, eax
push ecx
call fcn.10037a76
mov dword [ebp - 0x64], eax
push dword [ebp - 0x5c]
call fcn.1003887a
imul eax, eax, 3
mov dword [ebp - 0x2c], eax
xor ecx, ecx
push 2
pop edx
mul edx
seto cl
neg ecx
or ecx, eax
push ecx
call fcn.10037a76
add esp, 0xc
mov dword [ebp - 0x20], eax
cmp dword [ebp - 0x64], 0
je 0x10031324
test eax, eax
je 0x10031324
push dword [ebp - 0x4c]
push dword [ebp - 0x64]
call fcn.1003ae7a
push dword [ebp - 0x8c]
push dword [ebp - 0x20]
call fcn.1003ae7a
add esp, 0x10
push 0x30000000
lea eax, [ebp - 0x2c]
push eax
push dword [ebp - 0x64]
push dword [ebp - 0x64]
mov ebx, dword [sym.imp.WININET.dll_InternetCanonicalizeUrlW]
call ebx
push 0x30000000
lea eax, [ebp - 0x2c]
push eax
push dword [ebp - 0x20]
push dword [ebp - 0x20]
call ebx
push 0x23
push dword [ebp - 0x64]
call fcn.10039375
pop ecx
pop ecx
test eax, eax
je 0x100312f7
xor ecx, ecx
mov word [eax], cx
push dword [ebp - 0x20]
push dword [ebp - 0x64]
call fcn.10038eb5
pop ecx
pop ecx
test eax, eax
jne 0x10031312
mov dword [ebp - 0x9c], 1
push dword [ebp - 0x64]
call fcn.100378d0
push dword [ebp - 0x20]
call fcn.100378d0
pop ecx
pop ecx
xor eax, eax
cmp dword [ebp - 0x9c], eax
je 0x10031334
mov byte [ebp - 0x2d], 0
jmp 0x1003134c
cmp dword [ebp - 0x6c], eax
je 0x10031340
mov dword [ebp - 0x54], 1
cmp dword [ebp - 0x28], eax
je 0x1003134c
mov dword [ebp - 0x3c], 2
mov byte [ebp - 4], 0x20
lea ecx, [ebp - 0x60]
call fcn.1001e586
mov byte [ebp - 4], 0x1f
lea ecx, [ebp - 0x50]
call fcn.1001e586
mov byte [ebp - 4], 0x1c
lea ecx, [ebp - 0x44]
call fcn.1001e586
xor ebx, ebx
mov byte [ebp - 4], 0x1b
push dword [ebp - 0x4c]
call edi
mov byte [ebp - 4], 0x1a
lea ecx, [ebp - 0x34]
call fcn.1001e586
cmp byte [ebp - 0x2d], 0
je 0x100313bd
mov ecx, dword [esi + 0x1d8]
mov eax, dword [esi + 0x1dc]
mov edx, ecx
or edx, eax
je 0x100313b6
cmp eax, ebx
jg 0x100313b6
jl 0x100313ad
cmp ecx, 0x3e800
jae 0x100313b6
mov dword [ebp - 0x3c], 2
jmp 0x100313bd
mov dword [ebp - 0x54], 1
cmp dword [ebp - 0x54], ebx
je 0x100314c6
mov ecx, dword [esi + 0x38]
mov eax, dword [esi + 0x2c]
push ebx
push ebx
push ebx
push ebx
push ebx
lea edx, [ebp - 0x3c]
push edx
push ecx
push dword [esi + 0x40]
push dword [esi + 0x3c]
push dword [esi + 0x48]
push eax
push dword [esi + 0x1dc]
push dword [esi + 0x1d8]
push dword [ebp + 0x100]
push dword [ebp - 0x14]
push dword [ebp - 0x40]
push dword [ebp - 0x5c]
mov ecx, esi
call fcn.1002a9a3
cmp dword [ebp - 0x3c], 1
jne 0x100314c6
push dword [ebp - 0x14]
call dword [sym.imp.OLEAUT32.dll_VariantInit]
test eax, eax
je 0x100314c6
push 0x10059290
push dword [ebp - 0x14]
call fcn.10038ffd
pop ecx
pop ecx
test eax, eax
je 0x100314bf
push 0x1005928c
push dword [ebp - 0x14]
call fcn.10038ffd
pop ecx
pop ecx
test eax, eax
je 0x100314bf
push str.gzip
push dword [ebp - 0x14]
call fcn.10038ffd
pop ecx
pop ecx
test eax, eax
je 0x100314bf
push 0x10059278
push dword [ebp - 0x14]
call fcn.10038ffd
pop ecx
pop ecx
test eax, eax
je 0x100314bf
push 0x10059270
push dword [ebp - 0x14]
call fcn.10038ffd
pop ecx
pop ecx
test eax, eax
je 0x100314bf
push 0x10059268
push dword [ebp - 0x14]
call fcn.10038ffd
pop ecx
pop ecx
test eax, eax
je 0x100314bf
push 0x10059260
push dword [ebp - 0x14]
call fcn.10038ffd
pop ecx
pop ecx
test eax, eax
je 0x100314bf
push 0x10059258
push dword [ebp - 0x14]
call fcn.10038ffd
pop ecx
pop ecx
test eax, eax
je 0x100314bf
mov byte [ebp - 0x66], 1
jmp 0x100314c6
mov dword [ebp - 0x3c], 2
mov dword [ebp - 4], 0x19
jmp 0x100314e5
xor ebx, ebx
cmp dword [ebp - 0x78], ebx
je 0x100314f1
push dword [ebp - 0x78]
call edi
cmp dword [ebp - 0x3c], 1
jne 0x1003167e
push str.ExceptionServers
push 0x10057cec
lea ecx, [ebp + 0x48]
call fcn.10011b9f
mov byte [ebp - 4], 0x23
lea eax, [esi + 0xa4]
cmp dword [eax], ebx
je 0x1003151f
mov eax, dword [eax]
jmp 0x10031522
add eax, 4
push eax
lea ecx, [ebp + 0x48]
call fcn.10011cf8
test eax, eax
je 0x10031536
mov dword [ebp - 0x3c], 2
push dword [ebp - 0x14]
call dword [sym.imp.OLEAUT32.dll_VariantInit]
test eax, eax
je 0x10031672
cmp dword [esi + 0x1dc], ebx
jg 0x10031577
jl 0x1003155d
cmp dword [esi + 0x1d8], 0x400000
jae 0x10031577
push 0x10059258
push dword [ebp - 0x14]
call fcn.10038ffd
pop ecx
pop ecx
test eax, eax
jne 0x10031577
mov dword [ebp - 0x3c], 2
mov ecx, dword [esi + 0x1d8]
mov eax, dword [esi + 0x1dc]
mov edx, ecx
or edx, eax
je 0x100315b1
cmp eax, ebx
jg 0x100315b1
jl 0x10031597
cmp ecx, 0x400000
jae 0x100315b1
push 0x10059250
push dword [ebp - 0x14]
call fcn.10038ffd
pop ecx
pop ecx
test eax, eax
jne 0x100315b1
mov dword [ebp - 0x3c], 2
cmp dword [esi + 0xb8], ebx
je 0x10031672
lea eax, [esi + 0xb0]
cmp dword [eax], ebx
je 0x100315cb
mov eax, dword [eax]
jmp 0x100315ce
add eax, 4
push 0x10
push str.application_json
push eax
call fcn.1003c1e6
add esp, 0xc
test eax, eax
jne 0x10031672
push 0x10059258
push dword [ebp - 0x14]
call fcn.10038ffd
pop ecx
pop ecx
test eax, eax
je 0x1003166b
push 0x1005928c
push dword [ebp - 0x14]
call fcn.10038ffd
pop ecx
pop ecx
test eax, eax
je 0x1003166b
push str.gzip
push dword [ebp - 0x14]
call fcn.10038ffd
pop ecx
pop ecx
test eax, eax
je 0x1003166b
push 0x10059278
push dword [ebp - 0x14]
call fcn.10038ffd
pop ecx
pop ecx
test eax, eax
je 0x1003166b
push 0x10059270
push dword [ebp - 0x14]
call fcn.10038ffd
pop ecx
pop ecx
test eax, eax
je 0x1003166b
push 0x10059268
push dword [ebp - 0x14]
call fcn.10038ffd
pop ecx
pop ecx
test eax, eax
je 0x1003166b
push 0x10059260
push dword [ebp - 0x14]
call fcn.10038ffd
pop ecx
pop ecx
test eax, eax
jne 0x10031672
mov dword [ebp - 0x3c], 2
mov byte [ebp - 4], 0x19
lea ecx, [ebp + 0x48]
call fcn.10011a90
cmp dword [ebp + 0x100], ebx
jne 0x10031acc
cmp byte [esi + 0x265], 0
jne 0x10031acc
cmp dword [ebp - 0x3c], 1
jne 0x10031acc
call fcn.1001e8ed
test al, al
je 0x10031acc
xor bl, bl
mov eax, dword [esi + 0xb8]
xor ecx, ecx
cmp eax, ecx
je 0x10031752
cmp dword [esi + 0xe8], ecx
jne 0x1003174e
cmp dword [esi + 0xb0], ecx
je 0x100316dc
mov eax, dword [esi + 0xb0]
jmp 0x100316e2
lea eax, [esi + 0xb4]
push 0x18
push str.application_octet_stream
push eax
call fcn.10038427
add esp, 0xc
test eax, eax
je 0x1003176d
cmp dword [esi + 0xb0], 0
je 0x10031707
mov eax, dword [esi + 0xb0]
jmp 0x1003170d
lea eax, [esi + 0xb4]
push 0x13
push str.binary_octet_stream
push eax
call fcn.10038427
add esp, 0xc
test eax, eax
je 0x1003176d
cmp dword [esi + 0xb0], 0
je 0x10031732
mov eax, dword [esi + 0xb0]
jmp 0x10031738
lea eax, [esi + 0xb4]
push 0xa
push str.text_plain
push eax
call fcn.10038427
add esp, 0xc
test eax, eax
jne 0x1003176f
jmp 0x1003176d
cmp eax, ecx
jne 0x1003175c
cmp dword [esi + 0xe8], ecx
jne 0x10031764
jmp 0x1003176d
cmp dword [esi + 0xe8], ecx
je 0x1003176f
cmp byte [esi + 0x266], 0
je 0x1003176f
mov bl, 1
xor eax, eax
test bl, bl
sete al
lea eax, [eax*8 + 8]
mov dword [ebp - 0x4c], eax
cmp dword [esi + 0x1dc], 0
jl 0x1003179b
jg 0x10031794
cmp dword [esi + 0x1d8], 0
jbe 0x1003179b
or dword [ebp - 0x4c], 0x80
cmp byte [ebp - 0x66], 0
je 0x100317a8
or dword [ebp - 0x4c], 0x1000
test bl, bl
jne 0x100317d3
push dword [ebp - 0x14]
call dword [sym.imp.OLEAUT32.dll_VariantInit]
test eax, eax
je 0x100317d3
push 0x100592a0
push dword [ebp - 0x14]
call fcn.10038ffd
pop ecx
pop ecx
test eax, eax
jne 0x100317d3
or dword [ebp - 0x4c], 0x8000000
lea ecx, [ebp + 0x2c]
call fcn.1000499f
mov byte [ebp - 4], 0x24
and dword [ebp - 0xac], 0
cmp dword [ebp - 0x9c], 0
je 0x1003183d
push dword [ebp - 0x80]
call dword [sym.imp.OLEAUT32.dll_VariantInit]
test eax, eax
je 0x1003183d
push 0x2e
push dword [ebp - 0x80]
call fcn.100394a0
pop ecx
pop ecx
mov ebx, eax
test ebx, ebx
je 0x1003183d
push 0
push dword [ebp - 0x80]
lea ecx, [ebp + 0x2c]
call fcn.100052c6
cmp dword [ebp - 0x14], 0
je 0x10031833
add ebx, 2
push ebx
push dword [ebp - 0x14]
call fcn.10038ffd
pop ecx
pop ecx
test eax, eax
jne 0x1003183d
mov dword [ebp - 0xac], 1
xor ebx, ebx
mov dword [ebp - 0xb0], ebx
mov eax, dword [esi + 0x80]
or eax, dword [esi + 0x84]
je 0x100318a2
lea eax, [ebp]
push eax
call fcn.1003d1b6
pop ecx
mov eax, dword [ebp + 4]
cmp eax, dword [esi + 0x84]
jl 0x100318a2
mov eax, dword [ebp]
jg 0x10031875
cmp eax, dword [esi + 0x80]
jb 0x100318a2
sub eax, dword [esi + 0x80]
imul eax, eax, 0x3e8
movzx ecx, word [esi + 0x88]
sub eax, ecx
movzx ecx, word [ebp + 8]
add eax, ecx
mov dword [ebp - 0xb0], eax
jne 0x100318a2
mov dword [ebp - 0xb0], 1
cmp dword [esi + 0xd0], ebx
je 0x100318c0
lea eax, [esi + 0xc8]
cmp dword [eax], ebx
je 0x100318b8
mov eax, dword [eax]
jmp 0x100318bb
add eax, 4
mov dword [ebp - 0x28], eax
jmp 0x100318c3
mov dword [ebp - 0x28], ebx
cmp dword [esi + 0x260], ebx
je 0x100318e1
lea eax, [esi + 0x258]
cmp dword [eax], ebx
je 0x100318d9
mov eax, dword [eax]
jmp 0x100318dc
add eax, 4
mov dword [ebp - 0x38], eax
jmp 0x100318e4
mov dword [ebp - 0x38], ebx
push dword [esi + 0x74]
call dword [sym.imp.OLEAUT32.dll_VariantInit]
test eax, eax
je 0x100318f9
mov eax, dword [esi + 0x74]
mov dword [ebp - 0x2c], eax
jmp 0x100318fc
mov dword [ebp - 0x2c], ebx
cmp dword [esi + 0xb8], ebx
je 0x1003191a
lea eax, [esi + 0xb0]
cmp dword [eax], ebx
je 0x10031912
mov eax, dword [eax]
jmp 0x10031915
add eax, 4
mov dword [ebp - 0x34], eax
jmp 0x1003191d
mov dword [ebp - 0x34], ebx
cmp dword [esi + 0xe8], ebx
je 0x10031938
lea eax, [esi + 0xe0]
cmp dword [eax], ebx
je 0x10031933
mov eax, dword [eax]
jmp 0x1003194e
add eax, 4
jmp 0x1003194e
cmp dword [ebp - 0xac], ebx
je 0x1003194c
mov eax, dword [ebp + 0x2c]
cmp eax, ebx
jne 0x1003194e
lea eax, [ebp + 0x30]
jmp 0x1003194e
xor eax, eax
mov dword [ebp - 0x44], eax
cmp dword [ebp + 0x24], ebx
je 0x10031965
mov eax, dword [ebp + 0x1c]
cmp eax, ebx
jne 0x10031960
lea eax, [ebp + 0x20]
mov dword [ebp - 0x50], eax
jmp 0x10031968
mov dword [ebp - 0x50], ebx
cmp dword [ebp + 0x18], ebx
je 0x1003197c
mov eax, dword [ebp + 0x10]
cmp eax, ebx
jne 0x10031977
lea eax, [ebp + 0x14]
mov dword [ebp - 0x60], eax
jmp 0x1003197f
mov dword [ebp - 0x60], ebx
cmp dword [esi + 0xc4], ebx
je 0x1003199d
lea eax, [esi + 0xbc]
cmp dword [eax], ebx
je 0x10031995
mov eax, dword [eax]
jmp 0x10031998
add eax, 4
mov dword [ebp - 0x20], eax
jmp 0x100319a0
mov dword [ebp - 0x20], ebx
mov ecx, dword [esi + 0x38]
mov edx, dword [esi + 0x2c]
lea eax, [esi + 0xa4]
cmp dword [eax], ebx
je 0x100319b4
mov eax, dword [eax]
jmp 0x100319b7
add eax, 4
push dword [ebp - 0xb0]
push dword [ebp - 0x28]
push ecx
push dword [esi + 0x40]
push dword [esi + 0x3c]
push dword [esi + 0x48]
push dword [ebp - 0x4c]
push dword [esi + 0x44]
push dword [ebp - 0x38]
push edx
push dword [esi + 0x34]
push dword [esi + 0x30]
push dword [ebp - 0x2c]
push dword [esi + 0x1dc]
push dword [esi + 0x1d8]
push dword [ebp - 0x34]
push dword [ebp - 0x44]
push dword [ebp - 0x40]
push dword [ebp - 0x50]
push dword [ebp - 0x60]
push dword [ebp - 0x20]
push eax
push dword [ebp - 0x5c]
call fcn.100209b7
add esp, 0x5c
test al, al
je 0x10031abe
cmp dword [ebp - 0x40], 0
je 0x10031a1a
push dword [ebp - 0x40]
call edi
push dword [ebp - 0x5c]
call edi
mov esi, dword [esi + 0x1c]
mov eax, dword [esi]
push 0
push 0x80004004
push esi
call dword [eax + 0x14]
mov byte [ebp - 4], 0x19
lea ecx, [ebp + 0x2c]
call fcn.10002c1a
mov byte [ebp - 4], 0xc
push dword [ebp - 0x80]
call edi
mov byte [ebp - 4], 0xb
push dword [ebp - 0x70]
call edi
mov byte [ebp - 4], 0xa
push dword [ebp - 0xa4]
call edi
mov byte [ebp - 4], 9
push dword [ebp - 0x90]
call edi
mov byte [ebp - 4], 8
push dword [ebp - 0x88]
call edi
mov byte [ebp - 4], 7
push dword [ebp - 0x98]
call edi
mov byte [ebp - 4], 4
push dword [ebp - 0x94]
call edi
mov byte [ebp - 4], 3
push dword [ebp - 0x14]
call edi
mov byte [ebp - 4], 2
lea ecx, [ebp + 0x38]
call fcn.10002c1a
mov byte [ebp - 4], 1
lea ecx, [ebp + 0x1c]
call fcn.10002c1a
mov byte [ebp - 4], 0
lea ecx, [ebp + 0x10]
call fcn.10002c1a
xor eax, eax
inc eax
jmp 0x1002fded
mov byte [ebp - 4], 0x19
lea ecx, [ebp + 0x2c]
call fcn.10002c1a
xor ebx, ebx
cmp dword [esi + 0xa4], ebx
je 0x10031adc
mov eax, dword [esi + 0xa4]
jmp 0x10031ae2
lea eax, [esi + 0xa8]
mov ebx, str.youtube.com_get_video_info_
push ebx
push eax
call fcn.100379f0
pop ecx
pop ecx
test eax, eax
jne 0x10031b6d
cmp dword [esi + 0xa4], eax
je 0x10031b04
mov eax, dword [esi + 0xa4]
jmp 0x10031b0a
lea eax, [esi + 0xa8]
push str.youtube.com_api_video_info_
push eax
call fcn.100379f0
pop ecx
pop ecx
test eax, eax
jne 0x10031b6d
cmp dword [esi + 0xa4], eax
je 0x10031b2b
mov eax, dword [esi + 0xa4]
jmp 0x10031b31
lea eax, [esi + 0xa8]
push str.googlevideo.com_get_video_info_
push eax
call fcn.100379f0
pop ecx
pop ecx
test eax, eax
jne 0x10031b6d
cmp dword [esi + 0xa4], eax
je 0x10031b52
mov eax, dword [esi + 0xa4]
jmp 0x10031b58
lea eax, [esi + 0xa8]
push str.googlevideo.com_api_video_info_
push eax
call fcn.100379f0
pop ecx
pop ecx
test eax, eax
je 0x10031bf7
mov dword [esi + 0x110], 1
cmp dword [esi + 0xa4], 0
je 0x10031b88
mov eax, dword [esi + 0xa4]
jmp 0x10031b8e
lea eax, [esi + 0xa8]
push ebx
push eax
call fcn.100379f0
pop ecx
pop ecx
test eax, eax
jne 0x10031bc2
cmp dword [esi + 0xa4], eax
je 0x10031bab
mov eax, dword [esi + 0xa4]
jmp 0x10031bb1
lea eax, [esi + 0xa8]
push str.googlevideo.com_get_video_info_
push eax
call fcn.100379f0
pop ecx
pop ecx
test eax, eax
je 0x10031bf7
cmp dword [esi + 0xa4], 0
je 0x10031bd3
mov eax, dword [esi + 0xa4]
jmp 0x10031bd9
lea eax, [esi + 0xa8]
push str.adunit
push 0x100591b8
push eax
call fcn.100276ef
add esp, 0xc
test eax, eax
je 0x10031bf7
and dword [esi + 0x110], 0
xor ebx, ebx
cmp dword [esi + 0xb8], ebx
je 0x10031c46
lea eax, [esi + 0xb0]
cmp dword [eax], ebx
je 0x10031c0f
mov eax, dword [eax]
jmp 0x10031c12
add eax, 4
push 0x23
push str.application_vnd.lumberjack.manifest
push eax
call fcn.1003c1e6
add esp, 0xc
test eax, eax
jne 0x10031c46
cmp dword [esi + 0x1dc], ebx
jg 0x10031c46
jl 0x10031c3c
cmp dword [esi + 0x1d8], 0x186a1
jae 0x10031c46
mov dword [esi + 0x118], 1
cmp dword [esi + 0xa4], ebx
je 0x10031c56
mov eax, dword [esi + 0xa4]
jmp 0x10031c5c
lea eax, [esi + 0xa8]
push str.youtube.com_watch_
push eax
call fcn.100379f0
pop ecx
pop ecx
test eax, eax
jne 0x10031c98
cmp dword [esi + 0xa4], ebx
je 0x10031c7d
mov eax, dword [esi + 0xa4]
jmp 0x10031c83
lea eax, [esi + 0xa8]
push str.googlevideo.com_watch_
push eax
call fcn.100379f0
pop ecx
pop ecx
test eax, eax
je 0x10031d44
cmp dword [esi + 0xa4], ebx
je 0x10031ca8
mov eax, dword [esi + 0xa4]
jmp 0x10031cae
lea eax, [esi + 0xa8]
push 0x10059164
push eax
call fcn.100379f0
pop ecx
pop ecx
test eax, eax
jne 0x10031d0d
cmp dword [esi + 0xa4], ebx
je 0x10031ccf
mov eax, dword [esi + 0xa4]
jmp 0x10031cd5
lea eax, [esi + 0xa8]
push str.spf
push eax
call fcn.100379f0
pop ecx
pop ecx
test eax, eax
jne 0x10031d0d
cmp dword [esi + 0xa4], ebx
je 0x10031cf6
mov eax, dword [esi + 0xa4]
jmp 0x10031cfc
lea eax, [esi + 0xa8]
push 0x10059158
push eax
call fcn.100379f0
pop ecx
pop ecx
test eax, eax
je 0x10031d44
cmp dword [esi + 0xb8], ebx
je 0x10031d44
lea eax, [esi + 0xb0]
cmp dword [eax], ebx
je 0x10031d23
mov eax, dword [eax]
jmp 0x10031d26
add eax, 4
push 0x10
push str.application_json
push eax
call fcn.1003c1e6
add esp, 0xc
test eax, eax
jne 0x10031d44
mov dword [esi + 0x114], 1
push dword [ebp - 0x14]
mov ebx, dword [sym.imp.OLEAUT32.dll_VariantInit]
call ebx
test eax, eax
je 0x10031d8a
push 0x10059150
push dword [ebp - 0x14]
call fcn.10038ffd
pop ecx
pop ecx
test eax, eax
jne 0x10031d8a
cmp dword [esi + 0x1dc], eax
jg 0x10031e76
jl 0x10031d80
cmp dword [esi + 0x1d8], 0x186a1
jae 0x10031d8a
mov dword [esi + 0x11c], 1
cmp dword [esi + 0x1dc], 0
jg 0x10031e76
jl 0x10031da9
cmp dword [esi + 0x1d8], 0x1e8480
jae 0x10031e76
push dword [ebp - 0x14]
call ebx
test eax, eax
je 0x10031de0
push 0x10059148
push dword [ebp - 0x14]
call fcn.10038ffd
pop ecx
pop ecx
test eax, eax
je 0x10031e6c
push str.m3u8
push dword [ebp - 0x14]
call fcn.10038ffd
pop ecx
pop ecx
test eax, eax
je 0x10031e6c
xor ebx, ebx
cmp dword [esi + 0xb8], ebx
je 0x10031e76
cmp dword [esi + 0xb0], ebx
je 0x10031dfe
mov eax, dword [esi + 0xb0]
jmp 0x10031e04
lea eax, [esi + 0xb4]
push 0xd
push str.audio_mpegurl
push eax
call fcn.1003c1e6
add esp, 0xc
test eax, eax
je 0x10031e6c
cmp dword [esi + 0xb0], ebx
je 0x10031e28
mov eax, dword [esi + 0xb0]
jmp 0x10031e2e
lea eax, [esi + 0xb4]
push 0x15
push str.application_x_mpegURL
push eax
call fcn.1003c1e6
add esp, 0xc
test eax, eax
je 0x10031e6c
cmp dword [esi + 0xb0], ebx
je 0x10031e52
mov eax, dword [esi + 0xb0]
jmp 0x10031e58
lea eax, [esi + 0xb4]
push 0x1d
push str.application_vnd.apple.mpegurl
push eax
call fcn.1003c1e6
add esp, 0xc
test eax, eax
jne 0x10031e76
mov dword [esi + 0x124], 1
xor ebx, ebx
cmp dword [esi + 0xa4], ebx
je 0x10031e88
mov eax, dword [esi + 0xa4]
jmp 0x10031e8e
lea eax, [esi + 0xa8]
push str.player.vimeo.com_video
push eax
call fcn.100379f0
pop ecx
pop ecx
test eax, eax
je 0x10031ea9
mov dword [esi + 0x128], 1
cmp dword [esi + 0xa4], ebx
je 0x10031eb9
mov eax, dword [esi + 0xa4]
jmp 0x10031ebf
lea eax, [esi + 0xa8]
push str.manifest.googlevideo.com_api_manifest_
push eax
call fcn.100379f0
pop ecx
pop ecx
test eax, eax
je 0x10031eda
mov dword [esi + 0x1c4], 1
mov dword [ebp - 0x58], ebx
cmp dword [0x1006849c], ebx
je 0x100325a8
cmp dword [esi + 0xa4], ebx
je 0x10031ef9
mov eax, dword [esi + 0xa4]
jmp 0x10031eff
lea eax, [esi + 0xa8]
push str._Seg1_Frag
push eax
call fcn.100379f0
pop ecx
pop ecx
test eax, eax
je 0x100325a8
mov dword [ebp + 0x28], vtable.MyStrClass.0
mov dword [ebp + 0x2c], ebx
mov dword [ebp + 0x30], ebx
mov byte [ebp + 0x34], 0
mov byte [ebp - 4], 0x25
cmp dword [esi + 0xa4], ebx
je 0x10031f39
mov eax, dword [esi + 0xa4]
jmp 0x10031f3f
lea eax, [esi + 0xa8]
push eax
lea ecx, [ebp + 0x28]
call fcn.10003036
push str._als
push str.als
lea eax, [ebp + 0x28]
push eax
call fcn.100277aa
push str._hdcore
push str.hdcore
lea eax, [ebp + 0x28]
push eax
call fcn.100277aa
add esp, 0x18
mov byte [ebp - 0x65], 0
mov byte [ebp - 0x45], 0
mov ebx, dword [0x1006849c]
mov dword [ebp - 0x2c], ebx
test ebx, ebx
je 0x10032177
mov eax, dword [ebx + 0x44]
mov dword [ebp - 0x38], eax
cmp dword [ebp - 0x38], 0
je 0x100320a3
mov dword [ebp + 0xe0], vtable.MyStrClass.0
xor eax, eax
mov dword [ebp + 0xe4], eax
mov dword [ebp + 0xe8], eax
mov byte [ebp + 0xec], al
mov byte [ebp - 4], 0x26
lea ecx, [ebp + 0xe0]
push ecx
push eax
mov ecx, dword [ebp - 0x38]
call fcn.10003025
push eax
lea ecx, [ebx + 4]
call fcn.10003025
push eax
call fcn.10027f43
add esp, 0x10
test al, al
je 0x100320b1
mov ecx, dword [ebp + 0x2c]
test ecx, ecx
je 0x10031ff3
cmp dword [ebp + 0x30], 0
jne 0x10031ff6
lea ecx, [ebp + 0x34]
mov eax, dword [ebp + 0xe4]
test eax, eax
je 0x10032009
cmp dword [ebp + 0xe8], 0
jne 0x1003200f
lea eax, [ebp + 0xec]
push dword [ebp + 0xe8]
push ecx
push eax
call fcn.1003cace
add esp, 0xc
test eax, eax
jne 0x100320b1
mov eax, dword [ebp + 0x2c]
test eax, eax
je 0x10032034
cmp dword [ebp + 0x30], 0
jne 0x10032037
lea eax, [ebp + 0x34]
push 9
push str.Seg1_Frag
mov ecx, dword [ebp + 0xe8]
add ecx, eax
push ecx
call fcn.1003cace
add esp, 0xc
test eax, eax
jne 0x100320b1
mov byte [ebp - 0x65], 1
mov dword [ebp - 0x58], ebx
mov eax, dword [ebp + 0x2c]
test eax, eax
je 0x10032067
cmp dword [ebp + 0x30], 0
jne 0x1003206a
lea eax, [ebp + 0x34]
mov ecx, dword [ebp + 0xe8]
lea ebx, [ecx + eax + 0xa]
mov dword [ebp - 0xd0], ebx
movsx eax, byte [ebx]
push eax
call fcn.1003bf3b
pop ecx
test eax, eax
je 0x1003208b
inc ebx
jmp 0x10032074
mov dword [ebp - 0xc8], ebx
mov byte [ebp - 4], 0x25
lea ecx, [ebp + 0xe0]
call fcn.10003010
mov ebx, dword [ebp - 0x2c]
cmp byte [ebp - 0x65], 0
jne 0x100320ce
mov ebx, dword [ebx + 0x48]
jmp 0x10031f7f
mov eax, dword [ebp - 0x38]
mov eax, dword [eax + 0x64]
mov dword [ebp - 0x38], eax
mov byte [ebp - 4], 0x25
lea ecx, [ebp + 0xe0]
call fcn.10003010
jmp 0x10031f90
lea eax, [esi + 0xa4]
cmp dword [eax], 0
je 0x100320dd
mov eax, dword [eax]
jmp 0x100320e0
add eax, 4
mov ebx, str._Seg1_Frag1
push ebx
push eax
call fcn.100379f0
pop ecx
pop ecx
test eax, eax
je 0x1003211d
mov ebx, dword [ebp - 0x58]
mov ecx, ebx
call fcn.10012562
mov eax, dword [ebp + 0x2c]
test eax, eax
je 0x10032109
cmp dword [ebp + 0x30], 0
jne 0x1003210c
lea eax, [ebp + 0x34]
push eax
lea ecx, [ebx + 0x30]
call fcn.10003036
mov dword [esi + 0x1e8], ebx
jmp 0x10032177
mov eax, dword [ebp - 0x58]
cmp dword [eax + 0x2c], 0
je 0x10032177
cmp dword [eax + 0x24], 0
jne 0x1003215c
mov ecx, eax
add ecx, 0x30
call fcn.10003025
push ebx
push eax
call fcn.100379f0
pop ecx
pop ecx
test eax, eax
je 0x1003215c
add eax, 0xb
push eax
push dword [ebp - 0xc8]
call fcn.1003ad60
pop ecx
pop ecx
test eax, eax
jne 0x1003215c
mov byte [ebp - 0x45], 1
cmp byte [ebp - 0x45], 0
jne 0x10032181
push dword [ebp - 0x58]
mov ecx, 0x10068498
call fcn.100272da
mov ecx, dword [ebp - 0x58]
call fcn.10012569
cmp byte [ebp - 0x45], 0
je 0x1003259a
mov ebx, dword [ebp - 0x58]
push ebx
mov ecx, 0x10068498
call fcn.100272da
and dword [ebp - 0x60], 0
lea ecx, [ebx + 4]
lea eax, [ebp - 0x60]
push eax
lea eax, [ebp - 0xa8]
push eax
push 0x10055da8
call fcn.10003025
push eax
call fcn.100204f5
add esp, 0x10
test eax, eax
je 0x10032592
push dword [ebp - 0xc8]
lea ecx, [ebp - 0x6c]
call fcn.1000525d
mov byte [ebp - 4], 0x27
mov eax, ebx
mov ebx, dword [eax + 0x44]
mov dword [ebp - 0x44], ebx
test ebx, ebx
je 0x10032589
mov dword [ebp], vtable.MyStrClass.0
xor eax, eax
mov dword [ebp + 4], eax
mov dword [ebp + 8], eax
mov byte [ebp + 0xc], al
mov byte [ebp - 4], 0x28
lea ecx, [ebp]
push ecx
push eax
mov ecx, ebx
call fcn.10003025
push eax
mov ecx, dword [ebp - 0x58]
add ecx, 4
call fcn.10003025
push eax
call fcn.10027f43
add esp, 0x10
test al, al
je 0x10032572
and dword [ebp - 0x7c], 0
mov eax, dword [ebp - 0x58]
cmp dword [eax + 0x1c], 0
je 0x1003227a
and dword [ebp + 0x48], 0
and dword [ebp + 0x4c], 0
lea eax, [ebp + 0x48]
push eax
push str._I64d
mov ecx, dword [ebp - 0x58]
add ecx, 0x14
call fcn.10003025
push eax
call fcn.1003af3a
add esp, 0xc
cmp eax, 1
jne 0x1003227a
cmp dword [ebp + 0x4c], 0
jl 0x1003227a
jg 0x10032262
cmp dword [ebp + 0x48], 0
jbe 0x1003227a
lea eax, [ebp + 0x50]
push eax
push dword [ebp + 0x4c]
push dword [ebp + 0x48]
call fcn.10007e8b
add esp, 0xc
lea eax, [ebp + 0x50]
mov dword [ebp - 0x7c], eax
cmp dword [ebx + 0x48], 0
je 0x1003233b
and dword [ebp - 0x50], 0
lea eax, [ebp - 0x50]
push eax
push 0x10056524
lea ecx, [ebx + 0x40]
call fcn.10003025
push eax
call fcn.1003af3a
add esp, 0xc
cmp eax, 1
jne 0x1003233b
mov eax, dword [ebp - 0x50]
test eax, eax
jle 0x1003233b
cmp dword [ebp - 0x7c], 0
je 0x10032303
cmp eax, 0x2bc
mov dword [ebp - 0x2c], str.___s__ldp_HD
jg 0x100322d1
mov dword [ebp - 0x2c], str.___s__ldp
push eax
mov ecx, 0x1006a488
call fcn.1000778c
push eax
push dword [ebp - 0x2c]
push 0x40
lea eax, [ebp + 0xb0]
push eax
call fcn.1003b6c2
lea eax, [ebp + 0xb0]
push eax
lea eax, [ebp + 0x50]
push eax
call fcn.10037ff0
add esp, 0x1c
jmp 0x1003233b
cmp eax, 0x2bc
mov dword [ebp - 0x2c], str._s__ldp_HD
jg 0x10032318
mov dword [ebp - 0x2c], str._s__ldp
push eax
mov ecx, 0x1006a488
call fcn.1000778c
push eax
push dword [ebp - 0x2c]
push 0x60
lea eax, [ebp + 0x50]
push eax
call fcn.1003b6c2
add esp, 0x14
lea eax, [ebp + 0x50]
mov dword [ebp - 0x7c], eax
cmp dword [ebx + 0x60], 0
je 0x100323ba
cmp dword [ebx + 0x58], 0
je 0x100323ba
and dword [ebp - 0x38], 0
lea eax, [ebp - 0x38]
push eax
push 0x10056524
lea ecx, [ebx + 0x50]
call fcn.10003025
push eax
call fcn.1003af3a
add esp, 0xc
cmp eax, 1
jne 0x100323ba
cmp dword [ebp - 0x38], 0
jle 0x100323ba
push dword [ebp - 0x38]
cmp dword [ebp - 0x7c], 0
je 0x100323a1
push str.___ld_kbps
push 0x20
lea eax, [ebp + 0xd0]
push eax
call fcn.1003b6c2
lea eax, [ebp + 0xd0]
push eax
lea eax, [ebp + 0x50]
push eax
call fcn.10037ff0
add esp, 0x18
jmp 0x100323ba
push str._ld_kbps
push 0x60
lea eax, [ebp + 0x50]
push eax
call fcn.1003b6c2
add esp, 0x10
lea eax, [ebp + 0x50]
mov dword [ebp - 0x7c], eax
push str.dhs2toidm:__
lea ecx, [ebp - 0x20]
call fcn.1000525d
mov byte [ebp - 4], 0x29
mov eax, dword [ebp + 4]
test eax, eax
je 0x100323d8
cmp dword [ebp + 8], 0
jne 0x100323db
lea eax, [ebp + 0xc]
push eax
lea ecx, [ebp - 0xa0]
call fcn.1000525d
mov byte [ebp - 4], 0x2a
lea eax, [ebp - 0xa0]
push eax
lea ecx, [ebp - 0x20]
call fcn.10004940
push 0x100590a8
lea ecx, [ebp - 0x20]
call fcn.10001fc6
lea eax, [ebp - 0x6c]
push eax
lea ecx, [ebp - 0x20]
call fcn.10004940
lea eax, [ebx + 0x20]
mov dword [ebp - 0x84], eax
lea ecx, [ebx + 0x10]
call fcn.10003025
push eax
call fcn.100380e0
pop ecx
mov ebx, eax
mov ecx, dword [ebp - 0x84]
call fcn.10003025
push eax
call fcn.100380e0
lea eax, [ebx + eax + 0x80]
mov dword [ebp - 0x84], eax
push eax
call fcn.10037a76
pop ecx
pop ecx
mov dword [ebp - 0x28], eax
mov ebx, dword [ebp - 0x44]
test eax, eax
je 0x1003255d
lea ecx, [ebx + 0x10]
call fcn.10003025
push eax
lea ecx, [ebx + 0x20]
call fcn.10003025
push eax
push str._bootstrapInfo__s__bootstrapInfo__metadata__s__metadata_
push dword [ebp - 0x84]
push dword [ebp - 0x28]
call fcn.1003b6c2
add esp, 0x14
push dword [ebp - 0x28]
lea ecx, [ebp - 0x74]
call fcn.1000525d
mov byte [ebp - 4], 0x2b
and dword [ebp - 0x34], 0
mov byte [ebp - 4], 0x2c
cmp dword [esi + 0xd4], 0
je 0x100324b1
mov eax, dword [esi + 0xd4]
jmp 0x100324b7
lea eax, [esi + 0xd8]
push eax
call fcn.100380e0
pop ecx
test eax, eax
jbe 0x100324e2
cmp dword [esi + 0xd4], 0
je 0x100324d3
mov eax, dword [esi + 0xd4]
jmp 0x100324d9
lea eax, [esi + 0xd8]
push eax
lea ecx, [ebp - 0x34]
call fcn.1000528d
and dword [ebp - 0xcc], 0
cmp dword [esi + 0xd4], 0
je 0x100324fa
mov ecx, dword [esi + 0xd4]
jmp 0x10032500
lea ecx, [esi + 0xd8]
xor eax, eax
push eax
push eax
push dword [ebp - 0x7c]
push eax
push eax
lea edx, [ebp - 0xcc]
push edx
push dword [esi + 0x38]
push dword [esi + 0x40]
push dword [esi + 0x3c]
push dword [esi + 0x48]
push dword [ebp - 0x74]
push eax
push eax
push eax
push 0x10055da8
push ecx
call fcn.100380e0
pop ecx
xor ecx, ecx
cmp ecx, eax
sbb eax, eax
and eax, dword [ebp - 0x34]
push eax
push dword [ebp - 0x20]
mov ecx, esi
call fcn.1002a9a3
push dword [ebp - 0x28]
call fcn.100378d0
pop ecx
mov byte [ebp - 4], 0x2b
push dword [ebp - 0x34]
call edi
mov byte [ebp - 4], 0x2a
push dword [ebp - 0x74]
call edi
mov byte [ebp - 4], 0x29
push dword [ebp - 0xa0]
call edi
mov byte [ebp - 4], 0x28
push dword [ebp - 0x20]
call edi
mov ebx, dword [ebx + 0x64]
mov dword [ebp - 0x44], ebx
mov byte [ebp - 4], 0x27
lea ecx, [ebp]
call fcn.10003010
jmp 0x100321d6
mov byte [ebp - 4], 0x25
push dword [ebp - 0x6c]
call edi
mov ecx, dword [ebp - 0x58]
call fcn.10012569
mov byte [ebp - 4], 0x19
lea ecx, [ebp + 0x28]
call fcn.10003010
xor ebx, ebx
cmp dword [ebp - 0x40], ebx
je 0x100325b2
push dword [ebp - 0x40]
call edi
push dword [ebp - 0x5c]
call edi
mov byte [ebp - 4], 0xc
push dword [ebp - 0x80]
call edi
mov byte [ebp - 4], 0xb
push dword [ebp - 0x70]
call edi
mov byte [ebp - 4], 0xa
push dword [ebp - 0xa4]
call edi
mov byte [ebp - 4], 9
push dword [ebp - 0x90]
call edi
mov byte [ebp - 4], 8
push dword [ebp - 0x88]
call edi
mov byte [ebp - 4], 7
push dword [ebp - 0x98]
call edi
mov byte [ebp - 4], 4
push dword [ebp - 0x94]
call edi
mov byte [ebp - 4], 3
push dword [ebp - 0x14]
call edi
mov byte [ebp - 4], 2
lea ecx, [ebp + 0x38]
call fcn.10002c1a
mov byte [ebp - 4], 1
lea ecx, [ebp + 0x1c]
call fcn.10002c1a
mov byte [ebp - 4], 0
lea ecx, [ebp + 0x10]
call fcn.10002c1a
or dword [ebp - 4], 0xffffffff
jmp 0x1002fdeb