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

Disassembly:
sub esp, 0x128
push ebx
mov ebx, dword [esp + 0x134]
push ebp
mov ebp, dword [esp + 0x134]
push esi
mov esi, ecx
test ebx, ebx
push edi
mov dword [esp + 0x18], esi
je 0x410e31
call fcn.00416e30
mov edi, eax
test edi, edi
je 0x410e31
mov esi, ebp
mov ecx, edi
mov al, byte [ecx]
mov dl, al
cmp al, byte [esi]
jne 0x410e15
test dl, dl
je 0x410e11
mov al, byte [ecx + 1]
mov dl, al
cmp al, byte [esi + 1]
jne 0x410e15
add ecx, 2
add esi, 2
test dl, dl
jne 0x410df1
xor esi, esi
jmp 0x410e1a
sbb esi, esi
sbb esi, 0xffffffff
push edi
mov ecx, 0x4da3e8
call fcn.0041e810
test esi, esi
je 0x4123bd
mov esi, dword [esp + 0x18]
mov ecx, esi
call fcn.004194c0
test eax, eax
je 0x410e74
push ebp
call fcn.0041c290
mov edi, dword [esp + 0x1c]
mov esi, eax
add esp, 4
test esi, esi
je 0x410e6a
mov eax, dword [edi + 0x334]
test eax, eax
je 0x410e64
push eax
mov ecx, 0x4da3e8
call fcn.0041e810
mov dword [edi + 0x334], esi
lea ecx, [edi + 0x40]
call fcn.00419bb0
jmp 0x410e78
mov edi, dword [esp + 0x18]
mov ecx, edi
call fcn.00415f70
mov esi, dword [edi + 0x304]
mov ecx, dword [edi]
mov edx, dword [edi + 4]
mov dword [esp + 0x90], ecx
test esi, esi
mov dword [esp + 0x88], edx
je 0x410ebf
push 1
push esi
push 0
mov ecx, edi
call fcn.00415c80
push esi
push 0
mov ecx, edi
call fcn.00416a00
push 1
push 0
push 0
mov ecx, edi
call fcn.00415c80
test ebx, ebx
je 0x410ed2
mov eax, dword [edi + 0x114]
test ah, 2
je 0x410ed2
xor esi, esi
jmp 0x410ed7
mov esi, 1
mov ecx, edi
call fcn.004194c0
test eax, eax
jne 0x410f2f
xor ebx, ebx
cmp esi, ebx
je 0x410f31
push ebp
call fcn.0041c290
mov esi, eax
add esp, 4
cmp esi, ebx
je 0x412380
cmp byte [esi], 0
je 0x410f10
cmp byte [eax], 0xd
jne 0x410f08
mov byte [eax], 0xa
mov cl, byte [eax + 1]
inc eax
test cl, cl
jne 0x410f00
mov edi, esi
or ecx, 0xffffffff
xor eax, eax
push 0
repne scasb al, byte es:[edi]
not ecx
dec ecx
push ecx
mov ecx, dword [esp + 0x20]
push esi
call fcn.004124f0
push esi
jmp 0x412376
xor ebx, ebx
mov ecx, edi
mov dword [esp + 0x9c], ebx
mov dword [esp + 0xa0], ebx
mov dword [esp + 0xa4], ebx
mov dword [esp + 0xb4], ebx
call fcn.00415240
mov esi, eax
mov eax, dword [edi + 0x20]
push ebx
mov dword [esp + 0x98], esi
mov ecx, dword [eax + 0x20]
add ecx, 0x110
call fcn.004555b0
mov ecx, dword [edi + 0x28]
push eax
push ecx
lea ecx, [esp + 0x130]
call fcn.0043e610
mov ecx, dword [edi + 0x28]
xor edx, edx
cmp esi, 5
setg dl
push edx
push 1
call fcn.00467f80
push eax
push esi
push ebp
lea ecx, [esp + 0xb0]
call fcn.004715c0
lea ecx, [esp + 0x58]
call fcn.00470ae0
mov eax, dword [edi + 0x14]
lea esi, [edi + 0x68]
push esi
mov ecx, edi
mov dword [esp + 0xb8], eax
mov dword [esp + 0x20], esi
call fcn.00418d10
lea eax, [edi + 0x164]
lea ecx, [esp + 0x10]
push eax
push esi
push ebx
mov dword [edi + 0x16c], ebx
mov dword [esp + 0x1c], ebx
mov dword [esp + 0x2c], eax
call fcn.00410ce0
push esi
lea ecx, [esp + 0xbc]
mov dword [esp + 0x40], ebx
mov dword [esp + 0x2c], ebx
call fcn.00412470
mov ecx, dword [esi + 0x6c]
mov edx, dword [edi + 0x2c]
mov dword [esp + 0x124], ecx
mov dword [esp + 0xb8], 0x4c1a88
mov eax, dword [edx + 0x3d4]
lea ecx, [esp + 0x58]
push eax
push ecx
lea ecx, [esp + 0xa4]
mov byte [esp + 0x2f], 1
call fcn.00470ce0
test eax, eax
jne 0x412280
mov eax, dword [esp + 0x7c]
mov ebx, dword [esp + 0x28]
cmp eax, 3
jne 0x411078
lea ecx, [esp + 0x10]
call fcn.00410d80
cmp eax, 2
je 0x41106e
mov edx, dword [esp + 0x78]
or ecx, 0xffffffff
mov edi, edx
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
push 0
push ecx
mov ecx, dword [esp + 0x20]
push edx
call fcn.004124f0
mov byte [esp + 0x27], 0
jmp case.default.0x4110c3
mov edi, dword [0x4c1a74]
xor ebp, ebp
xor esi, esi
cmp byte [edi], 0
je 0x412013
mov edx, dword [esp + 0x78]
push edx
push edi
call fcn.0041c090
add esp, 8
test al, al
jne 0x4110b1
mov al, byte [edi]
inc esi
inc edi
test al, al
je 0x4110ac
mov cl, byte [edi]
inc edi
test cl, cl
jne 0x4110a5
cmp byte [edi], 0
jne 0x41108b
cmp byte [edi], 0
je 0x412013
cmp esi, 0x15
ja case.default.0x4110c3
jmp dword [esi*4 + 0x4123cc]
mov esi, dword [esp + 0x18]
mov eax, dword [esi + 0x304]
cmp eax, ebp
je 0x41112e
dec eax
mov ecx, esi
push eax
call fcn.0040ff70
cmp ax, 0xa
je 0x41112e
cmp ax, 0xd
je 0x41112e
lea ecx, [esp + 0x10]
mov byte [esp + 0x17], 0xa
call fcn.00410d80
cmp eax, 2
je 0x41112e
mov ecx, esi
call fcn.00415240
cmp eax, 7
jge 0x411116
push ebp
lea edx, [esp + 0x1b]
push 1
push edx
jmp 0x411127
test byte [esi + 0x114], 0x20
je 0x41112e
push ebp
lea eax, [esp + 0x1b]
push 1
push eax
mov ecx, esi
call fcn.004124f0
mov ecx, dword [esp + 0x20]
mov edx, dword [esp + 0x1c]
push ecx
push edx
push 0x4ce738
lea ecx, [esp + 0x1c]
call fcn.00410ce0
lea eax, [esp + 0x10]
mov edi, 1
push eax
push edi
push 0x4ce738
mov ecx, esi
mov dword [esp + 0x34], ebp
call fcn.00419570
test eax, eax
je 0x411169
mov dword [esp + 0x28], edi
push str.class
lea ecx, [esp + 0x5c]
call fcn.00470bc0
cmp eax, ebp
je 0x411191
lea ecx, [esp + 0x10]
push ecx
push ebp
push eax
mov ecx, esi
call fcn.00419570
test eax, eax
je 0x411191
mov dword [esp + 0x28], edi
mov dword [esi + 0x190], edi
jmp case.default.0x4110c3
cmp ebx, ebp
je 0x4111b5
mov edx, dword [esp + 0x1c]
lea ecx, [esp + 0xb8]
push edx
call fcn.0047e880
mov dword [esp + 0x28], ebp
mov eax, dword [esp + 0x78]
lea ecx, [eax + 1]
mov eax, dword [esp + 0x10]
cmp eax, ebp
je case.default.0x4110c3
mov eax, dword [eax + 4]
cmp eax, ebp
je case.default.0x4110c3
push eax
push ecx
call fcn.0041c090
add esp, 8
test al, al
je case.default.0x4110c3
lea ecx, [esp + 0x10]
mov byte [esp + 0x17], 0xa
call fcn.00410d80
cmp eax, 2
je 0x41122a
mov esi, dword [esp + 0x18]
mov ecx, esi
call fcn.00415240
cmp eax, 7
jge 0x411212
push ebp
lea ecx, [esp + 0x1b]
push 1
push ecx
jmp 0x411223
test byte [esi + 0x114], 0x20
je 0x41122a
push ebp
lea edx, [esp + 0x1b]
push 1
push edx
mov ecx, esi
call fcn.004124f0
mov esi, dword [esp + 0x10]
cmp esi, ebp
je case.default.0x4110c3
mov ecx, dword [esp + 0x1c]
lea edi, [esi + 8]
push edi
call fcn.0047e880
mov ecx, dword [esp + 0x20]
lea ebp, [esi + 0x78]
push ebp
call fcn.0040ee10
mov eax, dword [esp + 0x10]
mov ecx, dword [eax]
mov dword [esp + 0x10], ecx
mov edx, dword [esi + 4]
push edx
mov ecx, 0x4da3e8
call fcn.0041e810
test esi, esi
je case.default.0x4110c3
mov ecx, ebp
call fcn.0040ed70
mov ecx, edi
mov dword [edi], 0x4c1a88
call fcn.00412430
push esi
call fcn.0041ec10
add esp, 4
jmp case.default.0x4110c3
mov edi, dword [esp + 0x20]
mov eax, dword [esp + 0x1c]
push edi
push eax
push str.textformat
lea ecx, [esp + 0x1c]
call fcn.00410ce0
lea ecx, [esp + 0x34]
push ecx
push str.leftmargin
lea ecx, [esp + 0x60]
call fcn.00470b90
test al, al
je 0x4112d7
mov eax, dword [esp + 0x34]
mov esi, dword [esp + 0x18]
lea edx, [eax + eax*4]
shl edx, 2
mov dword [esi + 0x17c], edx
jmp 0x4112db
mov esi, dword [esp + 0x18]
lea eax, [esp + 0x34]
lea ecx, [esp + 0x58]
push eax
push str.rightmargin
call fcn.00470b90
test al, al
je 0x411302
mov eax, dword [esp + 0x34]
lea ecx, [eax + eax*4]
shl ecx, 2
mov dword [esi + 0x180], ecx
lea edx, [esp + 0x34]
lea ecx, [esp + 0x58]
push edx
push 0x4ce704
call fcn.00470b90
test al, al
je 0x411329
mov eax, dword [esp + 0x34]
lea eax, [eax + eax*4]
shl eax, 2
mov dword [esi + 0x184], eax
lea ecx, [esp + 0x34]
push ecx
push str.blockindent
lea ecx, [esp + 0x60]
call fcn.00470b90
test al, al
je 0x411350
mov eax, dword [esp + 0x34]
lea edx, [eax + eax*4]
shl edx, 2
mov dword [esi + 0x18c], edx
push str.tabstops
lea ecx, [esp + 0x5c]
call fcn.00470bc0
cmp eax, ebp
je 0x41136a
push eax
mov ecx, edi
call fcn.0040ebe0
lea eax, [esp + 0x34]
lea ecx, [esp + 0x58]
push eax
push 0x4ce6e4
call fcn.00470b90
test al, al
je case.default.0x4110c3
mov eax, dword [esp + 0x34]
mov edx, dword [esp + 0x18]
lea ecx, [eax + eax*4]
shl ecx, 2
mov dword [edx + 0x188], ecx
jmp case.default.0x4110c3
mov eax, dword [esp + 0x78]
lea ecx, [eax + 1]
mov eax, dword [esp + 0x10]
cmp eax, ebp
je case.default.0x4110c3
mov eax, dword [eax + 4]
cmp eax, ebp
je case.default.0x4110c3
push eax
push ecx
call fcn.0041c090
add esp, 8
test al, al
je case.default.0x4110c3
mov esi, dword [esp + 0x10]
cmp esi, ebp
je case.default.0x4110c3
mov ecx, dword [esp + 0x1c]
lea edi, [esi + 8]
push edi
call fcn.0047e880
mov ecx, dword [esp + 0x20]
lea ebp, [esi + 0x78]
push ebp
call fcn.0040ee10
mov ecx, dword [esp + 0x10]
mov edx, dword [ecx]
mov ecx, 0x4da3e8
mov dword [esp + 0x10], edx
mov eax, dword [esi + 4]
push eax
call fcn.0041e810
test esi, esi
je case.default.0x4110c3
mov ecx, ebp
call fcn.0040ed70
mov ecx, edi
mov dword [edi], 0x4c1a88
call fcn.00412430
push esi
call fcn.0041ec10
add esp, 4
jmp case.default.0x4110c3
mov ecx, dword [esp + 0x20]
mov edx, dword [esp + 0x1c]
push ecx
push edx
push 0x4ce6e0
lea ecx, [esp + 0x1c]
call fcn.00410ce0
mov ebx, dword [esp + 0x18]
lea eax, [esp + 0x10]
mov esi, 1
push eax
push esi
push 0x4ce6e0
mov ecx, ebx
mov dword [esp + 0x34], ebp
call fcn.00419570
test eax, eax
jne 0x411487
lea ecx, [esp + 0x10]
push ecx
push esi
push str.body
mov ecx, ebx
call fcn.00419570
test eax, eax
je 0x41148b
mov dword [esp + 0x28], esi
push str.class
lea ecx, [esp + 0x5c]
call fcn.00470bc0
cmp eax, ebp
je 0x4114b3
lea edx, [esp + 0x10]
mov ecx, ebx
push edx
push ebp
push eax
call fcn.00419570
test eax, eax
je 0x4114b3
mov dword [esp + 0x28], esi
push 0x4ce6d0
lea ecx, [esp + 0x5c]
call fcn.00470bc0
mov ebp, eax
test ebp, ebp
je 0x411509
mov esi, dword [0x4c1a78]
xor edi, edi
cmp byte [esi], 0
je 0x4114fc
push ebp
push esi
call fcn.0041c090
add esp, 8
test al, al
jne 0x4114f7
mov al, byte [esi]
inc esi
test al, al
je 0x4114f0
mov cl, byte [esi]
inc esi
test cl, cl
jne 0x4114e9
mov al, byte [esi]
inc edi
test al, al
jne 0x4114d4
cmp byte [esi], 0
jne 0x4114fe
xor edi, edi
mov dword [ebx + 0x16c], edi
mov esi, 1
mov dword [esp + 0x3c], esi
jmp case.default.0x4110c3
cmp ebx, ebp
mov ebx, dword [esp + 0x1c]
je 0x41152f
push ebx
lea ecx, [esp + 0xbc]
call fcn.0047e880
mov dword [esp + 0x28], 0
mov eax, dword [esp + 0x3c]
test eax, eax
je 0x41163e
lea edx, [esp + 0xb8]
mov ecx, ebx
push edx
call fcn.0047e880
mov eax, dword [esp + 0x20]
lea ecx, [esp + 0x10]
push eax
push ebx
push 0
call fcn.00410ce0
lea ecx, [esp + 0x10]
mov byte [esp + 0x33], 0xa
call fcn.00410d80
cmp eax, 2
je 0x4115a2
mov esi, dword [esp + 0x18]
mov ecx, esi
call fcn.00415240
cmp eax, 7
jge 0x411589
push 0
lea ecx, [esp + 0x37]
push 1
push ecx
jmp 0x41159b
test byte [esi + 0x114], 0x20
je 0x4115a2
push 0
lea edx, [esp + 0x37]
push 1
push edx
mov ecx, esi
call fcn.004124f0
mov edi, dword [esp + 0x10]
test edi, edi
je 0x411634
lea esi, [edi + 8]
mov ecx, ebx
push esi
call fcn.0047e880
mov ecx, dword [esp + 0x20]
lea ebp, [edi + 0x78]
push ebp
call fcn.0040ee10
mov eax, dword [esp + 0x10]
mov ecx, dword [eax]
mov dword [esp + 0x10], ecx
mov edx, dword [edi + 4]
push edx
mov ecx, 0x4da3e8
call fcn.0041e810
test edi, edi
je 0x411630
mov ecx, ebp
call fcn.0040ed70
mov eax, dword [esi + 0x48]
mov ecx, 0x4da3e8
push eax
mov dword [esi], 0x4c1a88
call fcn.0041e810
mov ecx, dword [esi + 0x3c]
push ecx
mov ecx, 0x4da3e8
call fcn.0041e810
mov edx, dword [esi + 0x10]
mov ecx, 0x4da3e8
push edx
call fcn.0041e810
mov eax, dword [esi + 4]
mov ecx, 0x4da3e8
push eax
call fcn.0041e810
push edi
call fcn.0041ec10
add esp, 4
mov edi, dword [esp + 0x10]
mov dword [esp + 0x3c], 0
jmp 0x411642
mov edi, dword [esp + 0x10]
mov ecx, dword [esp + 0x78]
test edi, edi
lea eax, [ecx + 1]
je case.default.0x4110c3
mov edi, dword [edi + 4]
test edi, edi
je case.default.0x4110c3
push edi
push eax
call fcn.0041c090
add esp, 8
test al, al
je case.default.0x4110c3
mov edi, dword [esp + 0x10]
test edi, edi
je case.default.0x4110c3
lea esi, [edi + 8]
mov ecx, ebx
push esi
call fcn.0047e880
mov ecx, dword [esp + 0x20]
lea ebp, [edi + 0x78]
push ebp
call fcn.0040ee10
mov edx, dword [esp + 0x10]
mov eax, dword [edx]
mov dword [esp + 0x10], eax
mov ecx, dword [edi + 4]
push ecx
mov ecx, 0x4da3e8
call fcn.0041e810
test edi, edi
je case.default.0x4110c3
mov ecx, ebp
call fcn.0040ed70
mov edx, dword [esi + 0x48]
mov ecx, 0x4da3e8
push edx
mov dword [esi], 0x4c1a88
call fcn.0041e810
mov eax, dword [esi + 0x3c]
mov ecx, 0x4da3e8
push eax
call fcn.0041e810
mov ecx, dword [esi + 0x10]
push ecx
mov ecx, 0x4da3e8
call fcn.0041e810
mov edx, dword [esi + 4]
push edx
mov ecx, 0x4da3e8
call fcn.0041e810
push edi
call fcn.0041ec10
add esp, 4
jmp case.default.0x4110c3
lea ecx, [esp + 0x10]
mov byte [esp + 0x17], 0xa
call fcn.00410d80
cmp eax, 2
je case.default.0x4110c3
mov esi, dword [esp + 0x18]
mov ecx, esi
call fcn.00415240
cmp eax, 7
jge 0x411740
push ebp
lea eax, [esp + 0x1b]
push 1
push eax
mov ecx, esi
call fcn.004124f0
jmp case.default.0x4110c3
test byte [esi + 0x114], 0x20
je case.default.0x4110c3
push 0
lea ecx, [esp + 0x1b]
push 1
push ecx
mov ecx, dword [esp + 0x24]
call fcn.004124f0
jmp case.default.0x4110c3
lea ecx, [esp + 0x10]
mov byte [esp + 0x17], 0xd
call fcn.00410d80
cmp eax, 2
je case.default.0x4110c3
mov ecx, dword [esp + 0x18]
push ebp
lea edx, [esp + 0x1b]
push 1
push edx
call fcn.004124f0
jmp case.default.0x4110c3
lea ecx, [esp + 0x10]
mov byte [esp + 0x17], 9
call fcn.00410d80
cmp eax, 2
je case.default.0x4110c3
mov ecx, dword [esp + 0x18]
push ebp
lea eax, [esp + 0x1b]
push 1
push eax
call fcn.004124f0
jmp case.default.0x4110c3
mov ecx, dword [esp + 0x20]
mov edi, dword [esp + 0x1c]
push ecx
push edi
push 0x4ce250
lea ecx, [esp + 0x1c]
call fcn.00410ce0
mov esi, dword [esp + 0x18]
lea edx, [esp + 0x10]
push edx
push 1
push 0x4ce250
mov ecx, esi
call fcn.00419570
push str.class
lea ecx, [esp + 0x5c]
call fcn.00470bc0
cmp eax, ebp
je 0x411808
lea ecx, [esp + 0x10]
push ecx
push ebp
push eax
jmp 0x411814
lea edx, [esp + 0x10]
push edx
push 1
push str.A:link
mov ecx, esi
call fcn.00419570
push str.href
lea ecx, [esp + 0x5c]
call fcn.00470bc0
cmp eax, ebp
je 0x411835
push eax
mov ecx, edi
call fcn.0040e250
push 0x4ce338
lea ecx, [esp + 0x5c]
call fcn.00470bc0
cmp eax, ebp
je case.default.0x4110c3
push eax
mov ecx, edi
call fcn.0040e280
jmp case.default.0x4110c3
mov eax, dword [esp + 0x20]
mov edi, dword [esp + 0x1c]
push eax
push edi
push 0x4ce6b8
lea ecx, [esp + 0x1c]
call fcn.00410ce0
push str.face
lea ecx, [esp + 0x5c]
call fcn.00470bc0
cmp eax, ebp
je 0x411891
mov ecx, dword [esp + 0x94]
mov edx, dword [edi]
push ecx
push eax
mov ecx, edi
call dword [edx]
push 0x4ce6a8
lea ecx, [esp + 0x5c]
call fcn.00470bc0
cmp eax, ebp
je 0x4118f1
cmp byte [eax], 0x23
jne 0x4118f1
push ebp
lea edx, [esp + 0x90]
push 0x10
inc eax
push edx
push eax
call fcn.00459510
add esp, 0x10
test eax, eax
je 0x4118f1
mov eax, dword [esp + 0x8c]
mov byte [esp + 0x4f], 0xff
mov ecx, eax
mov edx, eax
sar ecx, 0x10
sar edx, 8
mov byte [esp + 0x4c], cl
mov ecx, dword [esp + 0x18]
mov byte [esp + 0x4d], dl
mov byte [esp + 0x4e], al
mov eax, dword [esp + 0x4c]
mov dword [ecx + 0xc0], eax
push 0x4ce6a0
lea ecx, [esp + 0x5c]
call fcn.00470bc0
mov esi, eax
cmp esi, ebp
je case.default.0x4110c3
push 0
lea edx, [esp + 0x54]
push 0xa
push edx
push esi
call fcn.00459510
add esp, 0x10
test eax, eax
je case.default.0x4110c3
mov eax, dword [esp + 0x50]
lea eax, [eax + eax*4]
shl eax, 2
mov dword [esp + 0x50], eax
mov cl, byte [esi]
cmp cl, 0x2b
je 0x41193d
cmp cl, 0x2d
jne 0x41194f
mov ecx, dword [esp + 0x18]
mov ecx, dword [ecx + 0xc4]
test ecx, ecx
jge 0x41194d
neg ecx
add eax, ecx
cmp eax, 0x9ec
jle 0x41195d
mov eax, 0x9ec
jmp 0x411967
cmp eax, 0x14
jge 0x411967
mov eax, 0x14
mov dword [esp + 0x50], eax
mov ecx, edi
neg eax
mov dword [edi + 0x5c], eax
call fcn.0040e1b0
jmp case.default.0x4110c3
mov edx, dword [esp + 0x20]
mov eax, dword [esp + 0x1c]
push edx
push eax
push str.span
lea ecx, [esp + 0x1c]
call fcn.00410ce0
push str.class
lea ecx, [esp + 0x5c]
call fcn.00470bc0
cmp eax, ebp
je case.default.0x4110c3
lea ecx, [esp + 0x10]
push ecx
mov ecx, dword [esp + 0x1c]
push ebp
push eax
call fcn.00419570
jmp case.default.0x4110c3
cmp esi, 6
jne 0x4119cb
mov esi, 1
jmp 0x4119d8
sub esi, 7
neg esi
sbb esi, esi
and esi, 6
add esi, 2
mov edx, dword [esp + 0x20]
mov edi, dword [esp + 0x1c]
mov eax, dword [esp + 0x78]
push edx
push edi
push eax
lea ecx, [esp + 0x1c]
call fcn.00410ce0
mov ecx, dword [esp + 0x18]
and esi, 0xffff
mov edx, dword [ecx + 0xbc]
mov ecx, edi
or edx, esi
mov dword [edi + 0x54], edx
call fcn.0040e1b0
jmp case.default.0x4110c3
mov ebp, dword [esp + 0x1c]
lea ecx, [esp + 0xb8]
push ebp
call fcn.0047e880
mov eax, dword [esp + 0x78]
lea ecx, [eax + 1]
mov eax, dword [esp + 0x10]
test eax, eax
je case.default.0x4110c3
mov eax, dword [eax + 4]
test eax, eax
je case.default.0x4110c3
push eax
push ecx
call fcn.0041c090
add esp, 8
test al, al
je case.default.0x4110c3
mov edi, dword [esp + 0x10]
test edi, edi
je case.default.0x4110c3
lea esi, [edi + 8]
mov ecx, ebp
push esi
call fcn.0047e880
mov ecx, dword [esp + 0x20]
lea ebp, [edi + 0x78]
push ebp
call fcn.0040ee10
mov ecx, dword [esp + 0x10]
mov edx, dword [ecx]
mov ecx, 0x4da3e8
mov dword [esp + 0x10], edx
mov eax, dword [edi + 4]
push eax
call fcn.0041e810
test edi, edi
je case.default.0x4110c3
mov ecx, ebp
call fcn.0040ed70
mov ecx, dword [esi + 0x48]
mov dword [esi], 0x4c1a88
push ecx
mov ecx, 0x4da3e8
call fcn.0041e810
mov edx, dword [esi + 0x3c]
mov ecx, 0x4da3e8
push edx
call fcn.0041e810
mov eax, dword [esi + 0x10]
mov ecx, 0x4da3e8
push eax
call fcn.0041e810
mov ecx, dword [esi + 4]
push ecx
jmp 0x4116ed
mov edx, dword [esp + 0x78]
mov eax, dword [esp + 0x10]
cmp eax, ebp
lea ecx, [edx + 1]
je case.default.0x4110c3
mov eax, dword [eax + 4]
cmp eax, ebp
je case.default.0x4110c3
push eax
push ecx
call fcn.0041c090
add esp, 8
test al, al
je case.default.0x4110c3
mov edi, dword [esp + 0x10]
cmp edi, ebp
je case.default.0x4110c3
mov ecx, dword [esp + 0x1c]
lea esi, [edi + 8]
push esi
jmp 0x412199
mov ecx, dword [esp + 0x18]
call fcn.00415240
cmp eax, 7
jl case.default.0x4110c3
push 0x4ce694
lea ecx, [esp + 0x5c]
call fcn.00470bc0
mov esi, eax
test esi, esi
je case.default.0x4110c3
push str._IMG_SRC_
lea ecx, [esp + 0x44]
call fcn.0041b7c0
push esi
lea ecx, [esp + 0x44]
call fcn.0041be40
push 0x48
call fcn.0041ec00
xor ebx, ebx
add esp, 4
cmp eax, ebx
je 0x411bb2
mov ecx, 8
mov dword [eax], ebx
mov byte [eax + 8], bl
mov byte [eax + 9], bl
mov dword [eax + 4], ebx
mov dword [eax + 0xc], ebx
mov dword [eax + 0x10], ebx
mov dword [eax + 0x14], ebx
mov dword [eax + 0x18], ebx
mov dword [eax + 0x1c], ebx
mov dword [eax + 0x20], ebx
mov dword [eax + 0x24], ebx
mov dword [eax + 0x28], ecx
mov dword [eax + 0x2c], ecx
mov dword [eax + 0x30], ebx
mov dword [eax + 0x34], ebx
mov dword [eax + 0x38], ebx
mov dword [eax + 0x3c], ebx
mov dword [eax + 0x44], ebx
mov byte [eax + 0x40], bl
mov ebp, eax
jmp 0x411bb4
xor ebp, ebp
mov ecx, dword [esp + 0x18]
push 0xc
mov dword [esp + 0x58], ebp
mov edx, dword [ecx + 4]
mov dword [ebp], edx
call fcn.0041ec00
add esp, 4
cmp eax, ebx
je 0x411bda
push esi
mov ecx, eax
call fcn.0041b7c0
jmp 0x411bdc
xor eax, eax
mov dword [ebp + 4], eax
mov al, byte [esp + 0x27]
test al, al
je 0x411bf0
mov byte [ebp + 0x40], 1
mov byte [esp + 0x27], 0
push str..jpg
push esi
call fcn.0041c370
add esp, 8
test eax, eax
jne 0x411c14
push str..swf
push esi
call fcn.0041c370
add esp, 8
test eax, eax
je 0x411c18
mov byte [ebp + 8], 1
lea eax, [esp + 0x2c]
lea ecx, [esp + 0x58]
push eax
push str.width
call fcn.00470b90
test al, al
je 0x411c54
mov ecx, dword [esp + 0x2c]
push str.__WIDTH_
mov dword [ebp + 0xc], ecx
lea ecx, [esp + 0x44]
call fcn.0041be40
mov edx, dword [esp + 0x2c]
push 0xa
push edx
lea ecx, [esp + 0x48]
call fcn.0041baa0
lea eax, [esp + 0x2c]
lea ecx, [esp + 0x58]
push eax
push str.height
call fcn.00470b90
test al, al
je 0x411c90
mov ecx, dword [esp + 0x2c]
push str.__HEIGHT_
mov dword [ebp + 0x10], ecx
lea ecx, [esp + 0x44]
call fcn.0041be40
mov edx, dword [esp + 0x2c]
push 0xa
push edx
lea ecx, [esp + 0x48]
call fcn.0041baa0
push 0x4ce64c
lea ecx, [esp + 0x5c]
call fcn.00470bc0
mov esi, eax
cmp esi, ebx
je 0x411cd9
push 0xc
call fcn.0041ec00
add esp, 4
cmp eax, ebx
je 0x411cbc
push esi
mov ecx, eax
call fcn.0041b7c0
jmp 0x411cbe
xor eax, eax
push str.__ALT_
lea ecx, [esp + 0x44]
mov dword [ebp + 0x14], eax
call fcn.0041be40
push esi
lea ecx, [esp + 0x44]
call fcn.0041be40
push 0x4ce640
lea ecx, [esp + 0x5c]
call fcn.00470bc0
mov esi, eax
cmp esi, ebx
je 0x411d22
push 0xc
call fcn.0041ec00
add esp, 4
cmp eax, ebx
je 0x411d05
push esi
mov ecx, eax
call fcn.0041b7c0
jmp 0x411d07
xor eax, eax
push str.__ID_
lea ecx, [esp + 0x44]
mov dword [ebp + 0x18], eax
call fcn.0041be40
push esi
lea ecx, [esp + 0x44]
call fcn.0041be40
push 0x4ce6d0
lea ecx, [esp + 0x5c]
call fcn.00470bc0
cmp eax, ebx
je 0x411d8e
mov esi, str.right
mov dl, byte [eax]
mov cl, dl
cmp dl, byte [esi]
jne 0x411d5d
test cl, cl
je 0x411d59
mov dl, byte [eax + 1]
mov cl, dl
cmp dl, byte [esi + 1]
jne 0x411d5d
add eax, 2
add esi, 2
test cl, cl
jne 0x411d39
xor eax, eax
jmp 0x411d62
sbb eax, eax
sbb eax, 0xffffffff
cmp eax, ebx
jne 0x411d7d
push str.__ALIGN_right
lea ecx, [esp + 0x44]
call fcn.0041be40
mov dword [ebp + 0x24], 1
jmp 0x411d8e
push str.__ALIGN_left
lea ecx, [esp + 0x44]
call fcn.0041be40
mov dword [ebp + 0x24], ebx
lea eax, [esp + 0x2c]
lea ecx, [esp + 0x58]
push eax
push str.vspace
call fcn.00470b90
test al, al
je 0x411dca
mov ecx, dword [esp + 0x2c]
push str.__VSPACE_
mov dword [ebp + 0x2c], ecx
lea ecx, [esp + 0x44]
call fcn.0041be40
mov edx, dword [esp + 0x2c]
push 0xa
push edx
lea ecx, [esp + 0x48]
call fcn.0041baa0
lea eax, [esp + 0x2c]
lea ecx, [esp + 0x58]
push eax
push str.hspace
call fcn.00470b90
test al, al
je 0x411e06
mov ecx, dword [esp + 0x2c]
push str.__HSPACE_
mov dword [ebp + 0x28], ecx
lea ecx, [esp + 0x44]
call fcn.0041be40
mov edx, dword [esp + 0x2c]
push 0xa
push edx
lea ecx, [esp + 0x48]
call fcn.0041baa0
mov eax, dword [esp + 0x18]
mov esi, 0x4da3a4
mov edi, dword [eax + 0xa4]
mov eax, edi
mov dl, byte [eax]
mov cl, dl
cmp dl, byte [esi]
jne 0x411e3b
test cl, cl
je 0x411e37
mov dl, byte [eax + 1]
mov cl, dl
cmp dl, byte [esi + 1]
jne 0x411e3b
add eax, 2
add esi, 2
test cl, cl
jne 0x411e17
xor eax, eax
jmp 0x411e40
sbb eax, eax
sbb eax, 0xffffffff
cmp eax, ebx
je 0x411e61
push 0xc
call fcn.0041ec00
add esp, 4
cmp eax, ebx
je 0x411e5c
push edi
mov ecx, eax
call fcn.0041b7c0
jmp 0x411e5e
xor eax, eax
mov dword [ebp + 0x1c], eax
mov eax, dword [esp + 0x18]
mov esi, 0x4da3a4
lea edi, [eax + 0x84]
mov eax, edi
mov dl, byte [eax]
mov cl, dl
cmp dl, byte [esi]
jne 0x411e96
test cl, cl
je 0x411e92
mov dl, byte [eax + 1]
mov cl, dl
cmp dl, byte [esi + 1]
jne 0x411e96
add eax, 2
add esi, 2
test cl, cl
jne 0x411e72
xor eax, eax
jmp 0x411e9b
sbb eax, eax
sbb eax, 0xffffffff
cmp eax, ebx
je 0x411ebc
push 0xc
call fcn.0041ec00
add esp, 4
cmp eax, ebx
je 0x411eb7
push edi
mov ecx, eax
call fcn.0041b7c0
jmp 0x411eb9
xor eax, eax
mov dword [ebp + 0x20], eax
push 0x4ce5e4
lea ecx, [esp + 0x44]
call fcn.0041be40
mov ebx, dword [esp + 0x20]
mov ebp, dword [esp + 0x1c]
mov eax, dword [esp + 0x78]
push ebx
push ebp
push eax
lea ecx, [esp + 0x1c]
call fcn.00410ce0
mov ecx, dword [esp + 0x40]
mov esi, dword [esp + 0x18]
push ecx
lea ecx, [esi + 0xb0]
call fcn.0041bc40
mov ecx, ebp
mov dword [ebp + 0x5c], 0xffffffd8
call fcn.0040e1b0
lea ecx, [esp + 0x10]
mov dword [esp + 0x98], 0x20
call fcn.00410d80
cmp eax, 2
je 0x411f30
push 0
lea edx, [esp + 0x9c]
push 1
push edx
mov ecx, esi
call fcn.00412790
mov edi, dword [esp + 0x10]
test edi, edi
je 0x411fc0
lea esi, [edi + 8]
mov ecx, ebp
push esi
call fcn.0047e880
lea ebp, [edi + 0x78]
mov ecx, ebx
push ebp
call fcn.0040ee10
mov eax, dword [esp + 0x10]
mov ecx, dword [eax]
mov dword [esp + 0x10], ecx
mov edx, dword [edi + 4]
push edx
mov ecx, 0x4da3e8
call fcn.0041e810
test edi, edi
je 0x411fbc
mov ecx, ebp
call fcn.0040ed70
mov eax, dword [esi + 0x48]
mov ecx, 0x4da3e8
push eax
mov dword [esi], 0x4c1a88
call fcn.0041e810
mov ecx, dword [esi + 0x3c]
push ecx
mov ecx, 0x4da3e8
call fcn.0041e810
mov edx, dword [esi + 0x10]
mov ecx, 0x4da3e8
push edx
call fcn.0041e810
mov eax, dword [esi + 4]
mov ecx, 0x4da3e8
push eax
call fcn.0041e810
push edi
call fcn.0041ec10
add esp, 4
mov esi, dword [esp + 0x18]
mov ecx, dword [esi + 0x338]
test ecx, ecx
je 0x411ff5
mov eax, dword [ecx + 0x44]
test eax, eax
je 0x411fda
mov ecx, eax
mov eax, dword [ecx + 0x44]
test eax, eax
jne 0x411fd1
mov edx, dword [esp + 0x54]
mov dword [ecx + 0x44], edx
mov ecx, dword [esp + 0x40]
push ecx
mov ecx, 0x4da3e8
call fcn.0041e810
jmp case.default.0x4110c3
mov ecx, dword [esp + 0x40]
mov eax, dword [esp + 0x54]
push ecx
mov ecx, 0x4da3e8
mov dword [esi + 0x338], eax
call fcn.0041e810
jmp case.default.0x4110c3
mov eax, dword [esp + 0x78]
cmp byte [eax], 0x2f
jne 0x41220f
mov ecx, dword [esp + 0x10]
lea edx, [eax + 1]
cmp ecx, ebp
je 0x41220f
mov ecx, dword [ecx + 4]
cmp ecx, ebp
je 0x41220f
push ecx
push edx
call fcn.0041c090
add esp, 8
test al, al
je 0x41220b
lea ecx, [esp + 0x10]
call fcn.00410d80
cmp eax, 1
jne 0x412070
mov ebx, dword [esp + 0x1c]
lea ecx, [esp + 0xb8]
push ebx
call fcn.0047e880
jmp 0x412187
cmp eax, 3
je 0x412183
cmp ebx, ebp
mov ebx, dword [esp + 0x1c]
je 0x412096
push ebx
lea ecx, [esp + 0xbc]
call fcn.0047e880
mov dword [esp + 0x28], 0
mov eax, dword [esp + 0x3c]
test eax, eax
je 0x412187
lea edx, [esp + 0xb8]
mov ecx, ebx
push edx
call fcn.0047e880
mov eax, dword [esp + 0x20]
lea ecx, [esp + 0x10]
push eax
push ebx
push 0
call fcn.00410ce0
lea ecx, [esp + 0x10]
mov byte [esp + 0x3b], 0xa
call fcn.00410d80
cmp eax, 2
je 0x4120e7
push 0
lea ecx, [esp + 0x3f]
push 1
push ecx
mov ecx, dword [esp + 0x24]
call fcn.004124f0
mov edi, dword [esp + 0x10]
test edi, edi
je 0x412179
lea esi, [edi + 8]
mov ecx, ebx
push esi
call fcn.0047e880
mov ecx, dword [esp + 0x20]
lea ebp, [edi + 0x78]
push ebp
call fcn.0040ee10
mov edx, dword [esp + 0x10]
mov eax, dword [edx]
mov dword [esp + 0x10], eax
mov ecx, dword [edi + 4]
push ecx
mov ecx, 0x4da3e8
call fcn.0041e810
test edi, edi
je 0x412175
mov ecx, ebp
call fcn.0040ed70
mov edx, dword [esi + 0x48]
mov ecx, 0x4da3e8
push edx
mov dword [esi], 0x4c1a88
call fcn.0041e810
mov eax, dword [esi + 0x3c]
mov ecx, 0x4da3e8
push eax
call fcn.0041e810
mov ecx, dword [esi + 0x10]
push ecx
mov ecx, 0x4da3e8
call fcn.0041e810
mov edx, dword [esi + 4]
mov ecx, 0x4da3e8
push edx
call fcn.0041e810
push edi
call fcn.0041ec10
add esp, 4
mov edi, dword [esp + 0x10]
mov dword [esp + 0x3c], 0
jmp 0x41218b
mov ebx, dword [esp + 0x1c]
mov edi, dword [esp + 0x10]
test edi, edi
je case.default.0x4110c3
lea esi, [edi + 8]
mov ecx, ebx
push esi
call fcn.0047e880
mov ecx, dword [esp + 0x20]
lea ebp, [edi + 0x78]
push ebp
call fcn.0040ee10
mov eax, dword [esp + 0x10]
mov ecx, dword [eax]
mov dword [esp + 0x10], ecx
mov edx, dword [edi + 4]
push edx
mov ecx, 0x4da3e8
call fcn.0041e810
test edi, edi
je case.default.0x4110c3
mov ecx, ebp
call fcn.0040ed70
mov dword [esi], 0x4c1a88
mov eax, dword [esi + 0x48]
push eax
mov ecx, 0x4da3e8
call fcn.0041e810
mov ecx, dword [esi + 0x3c]
push ecx
mov ecx, 0x4da3e8
call fcn.0041e810
mov edx, dword [esi + 0x10]
mov ecx, 0x4da3e8
push edx
call fcn.0041e810
mov eax, dword [esi + 4]
push eax
jmp 0x4116ed
mov eax, dword [esp + 0x78]
mov ecx, dword [esp + 0x20]
mov edx, dword [esp + 0x1c]
push ecx
push edx
push eax
lea ecx, [esp + 0x1c]
call fcn.00410ce0
mov ecx, dword [esp + 0x78]
lea eax, [esp + 0x10]
mov esi, 1
push eax
push esi
push ecx
mov ecx, dword [esp + 0x24]
call fcn.00419570
test eax, eax
je 0x41224a
mov dword [esp + 0x28], esi
mov dword [esp + 0x3c], esi
jmp case.default.0x4110c3
push 3
lea ecx, [esp + 0x14]
call fcn.00410da0
mov edx, dword [esp + 0x18]
mov eax, dword [edx + 0x2c]
lea edx, [esp + 0x58]
mov ecx, dword [eax + 0x3d4]
push ecx
push edx
lea ecx, [esp + 0xa4]
call fcn.00470ce0
test eax, eax
je 0x411036
mov edi, dword [esp + 0x18]
mov eax, dword [edi + 0x338]
test eax, eax
je 0x412291
mov ecx, edi
call fcn.00414150
mov eax, dword [esp + 0x100]
mov edi, 0x4c1a88
push eax
mov ecx, 0x4da3e8
mov dword [esp + 0xbc], edi
call fcn.0041e810
mov ecx, dword [esp + 0xf4]
push ecx
mov ecx, 0x4da3e8
call fcn.0041e810
mov edx, dword [esp + 0xc8]
mov ecx, 0x4da3e8
push edx
call fcn.0041e810
mov eax, dword [esp + 0xbc]
mov ecx, 0x4da3e8
push eax
call fcn.0041e810
mov esi, dword [esp + 0x10]
test esi, esi
je 0x412359
mov ecx, dword [esi]
mov dword [esp + 0x10], ecx
mov edx, dword [esi + 4]
push edx
mov ecx, 0x4da3e8
call fcn.0041e810
test esi, esi
je 0x412351
lea ecx, [esi + 0x78]
call fcn.0040ed70
mov eax, dword [esi + 0x50]
mov ecx, 0x4da3e8
push eax
mov dword [esi + 8], edi
call fcn.0041e810
mov ecx, dword [esi + 0x44]
push ecx
mov ecx, 0x4da3e8
call fcn.0041e810
mov edx, dword [esi + 0x18]
mov ecx, 0x4da3e8
push edx
call fcn.0041e810
mov eax, dword [esi + 0xc]
mov ecx, 0x4da3e8
push eax
call fcn.0041e810
push esi
call fcn.0041ec10
add esp, 4
mov esi, dword [esp + 0x10]
test esi, esi
jne 0x4122ed
lea ecx, [esp + 0x58]
call fcn.00470b00
lea ecx, [esp + 0x128]
call fcn.0043e740
mov ecx, dword [esp + 0x9c]
push ecx
mov ecx, 0x4da3e8
call fcn.0041e810
mov eax, dword [esp + 0x90]
mov esi, dword [esp + 0x18]
xor ecx, ecx
test eax, eax
setl cl
dec ecx
and ecx, eax
mov eax, dword [esi + 0x304]
cmp eax, ecx
jge 0x4123a1
mov ecx, eax
mov dword [esi], ecx
mov ecx, dword [esp + 0x88]
xor edx, edx
test ecx, ecx
setl dl
dec edx
and ecx, edx
cmp eax, ecx
jl 0x4123ba
mov eax, ecx
mov dword [esi + 4], eax
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x128
ret 8